SQL语句进阶学习四(数据插入、数据删除和更新、表的操作)

SQL语句进阶学习四

  • 数据插入
        • 1)insert关键字
        • 2)插入完整行
            • a.方法一:完整插入每个字段的数据,存在空值以null代替。
            • b.方法二:选择性插入字段值。未选择插入的字段插入null值。
          • 4)插入多行数据
            • a.方法一:使用两条insert语句,一起提交。中间以;号隔开。
            • b.方法二:每一组值以()括号隔开,中间以,号隔开。
        • 6)插入检索出来的数据:即将检索出来的数据插入表格中。
    • 更新数据
        • 1)使用update语句,注意update语句一定要使用where语句,否则就是更新表中的所有行。一定要确定更新条件。
        • 2)基本使用
        • 3)使用子查询进行更新
        • 4)ignore关键字
        • 5)使用update语句逻辑删除数据
    • 删除数据
        • 1)使用delete关键字,注意delete语句一定要带where子句,否则就是删除表中的所有行。一定要确定删除条件。
        • 2)基本使用
        • 3)更快的删除:使用truncate table语句。删除表中的所有的行。
    • 更新和删除数据的指导原则
    • 表的创建
        • 1)使用create table语句
        • 2)使用
        • 3)指定默认值
        • 4)引擎类型
        • 5)更新表格
            • 1.增加表格列
            • 2.删除表格列
        • 删除表
        • 重命名表格

数据插入

1)insert关键字

2)插入完整行

a.方法一:完整插入每个字段的数据,存在空值以null代替。

SQL语句进阶学习四(数据插入、数据删除和更新、表的操作)_第1张图片
insert语句不会产生任何的返回。第一个null值为id值,为自动增长。

b.方法二:选择性插入字段值。未选择插入的字段插入null值。

SQL语句进阶学习四(数据插入、数据删除和更新、表的操作)_第2张图片
SQL语句进阶学习四(数据插入、数据删除和更新、表的操作)_第3张图片
1.其中id值为自动增长类型,无需对其进行赋值。
2.当字段列中,允许使用null值时,不插入字段值就以null代替。
3.当字段列中,有默认值时,不插入字段值就以默认值代替。
4.当字段列中,未设置允许使用null值且未设置默认值,而字段值又未插入,则会报错。
5.当多个用户访问数据库时,可能需要对操作进行优先级排序。使用low_priority降低insert语句的优先级。insert low_priority into

4)插入多行数据
a.方法一:使用两条insert语句,一起提交。中间以;号隔开。

SQL语句进阶学习四(数据插入、数据删除和更新、表的操作)_第4张图片

b.方法二:每一组值以()括号隔开,中间以,号隔开。
  insert into customers(cust_name,cust_address,cust_city,cust_state,cust_zip,cust_country) values('Pep E','100 Main Street','Los Angeles','CA','90046','USA'),

(‘M.Martian’,‘42 Galaxy Way’,‘New York’,‘NY’,‘11213’,‘USA’);
这种方式可以提高insert语句的性能,因为插入单条insert语句比插入多条insert语句快。

6)插入检索出来的数据:即将检索出来的数据插入表格中。

insert into customers (name) select name from new_customers where id = 9;

语句由insert into和select语句共同组成。这条语句插入多少行取决于select语句检索出多少行。当检索出来的结果为空,语句也不会发生错误,表示没有行插入。

更新数据

1)使用update语句,注意update语句一定要使用where语句,否则就是更新表中的所有行。一定要确定更新条件。

2)基本使用

在这里插入图片描述
where语句对更新条件进行过滤,否则就是对整列进行过滤。

3)使用子查询进行更新

update t_right set name =  (select name from t_fenshu where id = 11) where id = 5;

更新的数据由select语句提供。

4)ignore关键字

当update语句更新多行数据时,有一行或者多行发生错误,则整个update更新语句取消。使用update语句则可以即使发生错误,仍然继续进行更新操作。
update ignore table set…

5)使用update语句逻辑删除数据

SQL语句进阶学习四(数据插入、数据删除和更新、表的操作)_第5张图片

删除数据

1)使用delete关键字,注意delete语句一定要带where子句,否则就是删除表中的所有行。一定要确定删除条件。

2)基本使用

在这里插入图片描述
delete删除是特定行,若要删除整列,则要使用update语句。

3)更快的删除:使用truncate table语句。删除表中的所有的行。

更新和删除数据的指导原则

1.where过滤条件时,尽量使用主键过滤。
2.在使用update和delete语句前,先使用select语句对其过滤条件进行核查是否正确。
3.使用update和delete语句必须带有where子句。

表的创建

1)使用create table语句

2)使用

SQL语句进阶学习四(数据插入、数据删除和更新、表的操作)_第6张图片
1.每个表中,只允许有一个auto_increment的列,而且这个列必须被索引。
2.当新增一条数据,不知道主键是多少时,可以使用select last_insert_id()函数获得新增的id值。

3)指定默认值

create table customes (cust_id int not null auto_increment,quantity int not null default 1)

对指定列quantity设置默认值1。

4)引擎类型

1.使用engine = 语句对其引擎类型进行选择。
SQL语句进阶学习四(数据插入、数据删除和更新、表的操作)_第7张图片

5)更新表格

1.增加表格列

SQL语句进阶学习四(数据插入、数据删除和更新、表的操作)_第8张图片

2.删除表格列

在这里插入图片描述
对表格进行增删列时,先对原有表格数据备份。

删除表

在这里插入图片描述

重命名表格

在这里插入图片描述

你可能感兴趣的:(SQL)