MYSQL数据操作(CRUD)(一):插入,删除和更新

插入数据

①插入一行记录

INSERT INTO TABLE_NAME(列名1,列名2,.......) 

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

②插入多行记录

INSERT INTO TABLE_NAME(列名1,列名2,.......)

  VALUES(值1,值2,.......),

  ...........

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

③插入查询结果(可能是结果集)

INSERT INTO TABLE_NAME(列名1,列名2,.......)

    SELECT(列名1,列名2,.......)

        FROM TABLE_NAME2

            WHERE .........


注意: 

1.  如果用TABLE_NAME(列名1,列名2,.......) ,那么对于语句里面的字段参数:

顺序可以自定义,不用和表的字段顺序一致;

要插入哪些字段也可以自定义,不用把表的所有字段都写上。

2.  VALUES(值1,值2,.......)语句里的赋值参数,会和上面的字段参数一一对应。

而且我们写要插入的值的时候,必须保证所插入的值和对应字段的数据类型一致,比如字段name数据类型是VARCHAR,那么我们插入的值就必须是字符串,即单引号   'xxx' ;再比如,字段参数是student(name,age),我们插入的值不能是         VALUES( ,12),如果想插入空值必须用NULL。

总结一下,一旦我们选择了要插入的字段,我们就必须保证要插入的数值和选择的字段的个数,顺序,类型一致。

举个例子,假设现在有表student(id,name,age,sex),我们选择的要INSERT INTO 的字段是student(name,age),那么VALUES的时候绝对不能出现以下四种情况:

VALUES(  ,12) 插入了MYSQL不识别的值,想插入空值必须用NULL。

VALUES( '王一')  插入的数值和选择的字段的个数不同

VALUES(12, '王一')  字段参数的顺序和插入数值的顺序不同,不能一一对应

VALUES('王一', '十二') 插入数值和字段类型不同

3.  上面提到我们可以只选择部分字段进行插入,那么那些未选择的字段会怎么样呢?

①在具体开发中,有自动增加约束和默认值约束的字段我们一般会把他们忽略,不需要我们手动赋值,MYSQL会自动给其赋值。

②有时,有些字段暂时是多余的,假设这些字段既没有默认值约束,也没有自动增加约束,同时我们又不想删掉这些字段,那么我们会不选择这些字段,让,MYSQL给他们自动插入NULL值。

4.  如果我们想选择所有字段,把所有字段都写一遍就太麻烦了,我们可以忽略字段参数,直接用

INSERT INTO TABLE_NAME

     ...........

        ...........

假设有表student(id,name,age,sex),上面的语句INSERT INTO student,就相当于INSERT INTO student(id,name,age,sex)。

但是这种用法虽然方便,但不灵活,这种用法就只能表示表的所有字段,且字段顺序和表的字段顺序一样。

5.插入查询结果其实和插入记录其实差不多,只不过一个是SELECT(列名1,列名2,.......),一个是VALUES(值1,值2,.......),SELECT里面的参数和VALUES的参数一样,都适用且必须遵守上面4条规则。

假设有表student(id,name,age,sex)和表children(id,sex,age,name)

INSERT INTO student(name,age,sex)

    SELECT  sex,age,name  #字段参数的顺序和插入数值的顺序不同,不能一一对应

        FROM children  

            WHERE  age>7;

这样是不行的,MYSQL还没有智能到帮你自动匹配字段。


删除数据

Delete from 表名

 [where条件];

注意:一般都会加where条件,没有条件的话,整个表的数据都会被删除。删除操作需谨慎,此操作不可逆

修改数据

Update 表名 set 字段 = 值 

[where条件]; 

注意:一般都会加where条件,没有条件的话,会修改所有记录。更新操作需谨慎,此操作不可逆


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值