添加、更新与删除数据

 

 添加数据

例子:向student表中添加一条新记录,记录中id字段的值为1,name字段的值为‘zhangsan’,grade字段的值为98.5。

按照题目要求先创建好数据库以及表,表建好后在添加数据。

 

一、为表中所有字段添加数据

1、INSERT语句中指定所有字段名

基本语法:INSERT INTO 表名(字段名1,字段名2,……)

        VALUES(值1,值2,……);

SQL语句如下:

     INSERT INTO student(id,name,grade)

     VALUES(1,'zhangsan',98.5);

执行结果如下:

      

注意:使用INSERT语句添加记录时,表名后的字段顺序可以与其在表中定义的顺序不一致,它们只需要与VALUES中值的顺序一致即可。 

 

 【向student表中添加一条新记录,记录中id字段的值为2,name字段的值为‘lisi’,grade字段的值为95。

SQL语句如下:

     INSERT INTO student(name,grade,id)

     VALUES('lisi',95,2);

执行结果如下:

     

 2、INSERT语句中不指定字段名

基本语法:INSERT INTO 表名 VALUES(值1,值2,……);

     在上述格式中,“值1,值2,……”用于指定要添加的数据。

向student表中添加一条新记录,记录中id字段的值为3,name字段的值为‘wangwu’,grade字段的值为61.5。

SQL语句如下:

     INSERT INTO student

     VALUES(3,'wangwu',61.5);

执行结果如下:

      

注意:由于INSERT语句中没有指定字段名,添加的值的顺序必须和字段在表中定义的顺序相同。

 

 

二、为表的指定字段添加数据(为表的指定字段添加数据,就是在INSERT语句中只向部分字段中添加值,而其他字段的值为表定义时的默认值。)

基本语法:INSERT INTO 表名(字段1,字段2,…)

                  VALUES(值1,值2,…);

     上述语法格式中,“字段1,字段2,…”表示数据表中的字段名称,此次只指定表中部分字段的名称。“值1,值2,……”表示指定字段的值,每个值的顺序、类型必须与对应的字段相匹配。

向student表中添加一条新记录,记录中id字段的值为4,name字段的值为“zhaoliu”,grade字段不指定值,

SQL语句如下:

     INSERT INTO student(id,name)

     VALUES(4,'zhaoliu');

执行结果如下:

     

 

注意:如果某个字段在定义时添加了非空约束,但没有添加default约束,那么插入新记录时就必须为该字段赋值,否则数据库系统会提示错误。

 

向student表中添加一条新记录,记录中id字段的值为5,grade字段的值为97,name字段不指定值

SQL语句如下:

     INSERT INTO student(id,grade)

     VALUES(5,97);

执行结果如下:

     

执行结果可以看出,执行INSERT语句时发生了错误,发生错误的原因是name字段没有指定默认值,且添加了非NULL约束。

为指定字段添加数据时,指定字段也无需与其在表中定义的顺序一致,它们只要与VALUES中值的顺序一致即可。

 

向student表中添加一条新记录,记录中name字段的值为‘sunbin’,grade字段的值为55,id字段不指定值

SQL语句如下:
     INSERT INTO student(grade,name)

     VALUES(55,'sunbin');

执行结果如下:

     

 

三、同时添加多条记录

基本语法:

      

向student表中添加三条新记录

SQL语句如下:

      

执行结果如下:

     

注意:在添加多条记录时,可以不指定字段列表,只需要保证VALUES后面跟随的值列表依照字段在表中定义的顺序即可。

和添加单条记录一样,如果不指定字段名,必须为每个字段添加数据,如果指定了字段名,就只需要为指定的字段添加数据。

 

向student表中添加三条新记录

SQL语句如下:

 

执行结果如下:

 

     

更新数据

MySQL中使用UPDATE语句来更新表中的记录。

基本语法:UPDATE 表名
     SET 字段名1 = 值1[,字段名2 = 值2,……]
     [WHERE 条件表达式]

在上述语法格式中,“字段名1”,“字段名2”用于指定要更新的字段名称,“值1”,“值2”用于表示字段更新的新数据。“WHERE条件表达式”是可选的,用于指定更新数据需要满足的条件。

1、UPDATE更新部分数据(更新部分数据是指根据指定条件更新表中的某一条或者某几条记录,需要使用WHERE子句来指定更新记录的条件。)

更新student表中id字段值为1的记录,将记录中的name字段的值更改为‘caocao’, grade字段的值更改为50。

SQL语句如下:

     UPDATE student
     set name='caocao',grade=50
     WHERE id=1;

执行结果如下:

     

如上述结果看到,如果表中有多条记录满足WHERE子句中的条件表达式,则满足条件的记录都会发生更新。

 

 

更新student表中id字段值小于4的记录,将这些记录的grade字段值都更新为100。

 

SQL语句如下:

 

     UPDATE student
     SET grade=100
     WHERE id<4;

 

执行结果如下:

 

     

 

 

2、UPDATE更新全部数据(在UPDATE语句中如果没有使用WHERE子句,则会将表中所有记录的指定字段都进行更新。)

更新student表中全部11条记录,将grade字段值都更新为80

SQL语句如下:

     UPDATE student
     SET grade=80;

执行结果如下:

     

 

 

 

删除数据

MySQL中使用DELETE语句来删除表中的记录

基本语法:

在上面的语法格式中,“表名”指定要执行删除操作的表,WHERE子句为可选参数,用于指定删除的条件,满足条件的记录会被删除。

1、DELETE删除部分数据(删除部分数据是指根据指定条件删除表中的某一条或者某几条记录,需要使用WHERE子句来指定删除记录的条件。)

 

在student表中,删除id字段值为11的记录。

 

SQL语句如下:

 

     DELETE FROM student
     WHERE id=11;

 

执行结果如下:

 

     

 

在执行删除操作的表中,如果有多条记录满足WHERE子句中的条件表达式,则满足条件的记录都会被删除。

 

 

在student表中,删除id字段值大于5的所有记录。

 

SQL语句如下:

 

     DELETE FROM student
     WHERE id>5;

 

执行结果如下:

 

     

 

2、DELETE删除全部数据(在DELETE语句中如果没有使用WHERE子句,则会将表中的所有记录都删除。)

 

删除student表中的所有记录。

SQL语句如下:

    

 

执行结果如下:

     

 

 

 

原文地址:https://www.cnblogs.com/Wsy5-5/p/12057375.html