随笔 - 1162  文章 - 0  评论 - 16  阅读 - 59万 

一、数据操作语言

  1、DML

    DML(Data Manipulate Language 数据操纵语言)可以在下列条件下执行:

    (1)向表中插入数据

    (2)修改现存数据

    (3)删除现存数据

  2、事务是由完成若干项的 DML 语句组成的。

二、insert 插入语句

  1、两种语法格式

    (1)方式一

1
2
insert into 表名(列名1,...)
values(值1,...);

      使用这种语法一次只能向表中插入一条数据。

    (2)方式二

1
2
insert into 表名
set 列名=值, 列名=值,...

  

  2、方式一案例

    (1)插入的值的类型要与列的类型一致或兼容

1
2
INSERT INTO beauty(id, NAME, sex, borndate, phone, photo, boyfriend_id)
VALUES(13, '唐艺昕', '女', '1990-4-23', '1898888888', NULL, 2);

  

    (2)向表中插入空值

      ① 隐式方式:在列名表中省略该列的值

1
2
INSERT INTO beauty(id, NAME, sex, borndate, phone, boyfriend_id)
VALUES(13, '金星', '女', '1990-4-23', '1898888888', 9);

  

      ② 显示方式:在 values 子句中指定空值

1
2
INSERT INTO beauty(id, NAME, sex, borndate, phone, photo, boyfriend_id)
VALUES(14, '唐艺昕', '女', '1990-4-23', '1898888888', NULL, 2);

  

    (3)列的顺序可以调换,但插入的值与字段名要一一对应

1
2
INSERT INTO beauty(NAME, sex ,id, phone)
VALUES('蒋欣', '女', 15, '110');

  

    (4)列数和值的个数必须一致,一一对应

1
2
INSERT INTO beauty(NAME, sex ,id, phone, boyfriend_id)
VALUES('关晓彤', '女', 16, '110');

  

    (5)可以省略列名,默认所有列,而且列的顺序和表中列的顺序一致

1
2
INSERT INTO beauty
VALUES(17, '蔡文姬', '女', NULL, '119', NULL, NULL);

  

  3、方式二案例

    (1)插入新数据

1
2
INSERT INTO beauty
SET id = 19, NAME = '刘涛', phone = '999';

  

  4、两种方式的对比

    (1)方式一支持插入多行,方式二不支持

      Demo:

1
2
3
4
INSERT INTO beauty VALUES
(21, '唐艺昕1', '女', '1990-4-23', '1898888888', NULL, 2),
(22, '唐艺昕2', '女', '1990-4-23', '1898888888', NULL, 2),
(23, '唐艺昕3', '女', '1990-4-23', '1898888888', NULL, 2);

  

    (2)方式一支持子查询,方式二不支持

      Demo:

1
2
3
4
5
6
INSERT INTO beauty(id, NAME, phone)
SELECT 26, '宋茜', '1180966';
 
INSERT INTO beauty(id, NAME, phone)
SELECT id, bodyname, '1833187'
FROM boys WHERE id > 30;

      

 

     此时不必书写 values 子句

    子查询中的值列表应与 insert 子句中的列名对应。

 

  5、其他注意点

    ① 字符和日期型数据应包含在单引号中;

    ② values 里面的值要去字段列名一一对应;

    ③ 可以使用函数;

    ④ 要求值的类型和字段的类型要一致或兼容;

    ⑤ 字段名可以省略,默认所有列,字段和值的个数必须一致;

    ⑥ 字段的个数和顺序不一定与原始表中的字段个数和顺序一致但必须保证值和字段一一对应;

 

 

 

posted on   格物致知_Tony  阅读(846)  评论(0编辑  收藏  举报
编辑推荐:
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· 没有源码,如何修改代码逻辑?
· NetPad:一个.NET开源、跨平台的C#编辑器
· 面试官:你是如何进行SQL调优的?
历史上的今天:
2019-06-23 15HTML5新增文本标签
2019-06-23 00HTML【目录】
2019-06-23 16HTML5表单新增内容
2019-06-23 18HTML5多媒体标签
2019-06-23 12HTML注释与特殊字符
2019-06-23 11HTML表单
2019-06-23 10HTML表格
点击右上角即可分享
微信分享提示

目录导航