mysql更新表语句怎么写( 二 )


【mysql更新表语句怎么写】而MySQL的JDBC驱动得到的默认记录数也是匹配的记录数 。UPDATE和REPLACE基本类似 , 但是之间有两点不同 。
1. UPDATE在没有匹配记录时什么都不做 , 而REPLACE在有重复记录时更新 , 在没有重复记录时插入 。2. UPDATE可以选择性地更新记录的一部分字段 。
而REPLACE在发现有重复记录时就将这条记录彻底删除 , 再插入新的记录 。也就是说 , 将所有的字段都更新了 。
二、DELETE和TRUNCATE TABLE:在MySQL中有两种方法可以删除数据 , 一种是DELETE语句 , 另一种是TRUNCATE TABLE语句 。DELETE语句可以通过WHERE对要删除的记录进行选择 。
而使用TRUNCATE TABLE将删除表中的所有记录 。因此 , DELETE语句更灵活 。
如果要清空表中的所有记录 , 可以使用下面的两种方法:DELETE FROM table1 。TRUNCATE TABLE table1 。
其中第二条记录中的TABLE是可选的 。如果要删除表中的部分记录 , 只能使用DELETE语句 。
DELETE FROM table1 WHERE。
如果DELETE不加WHERE子句 , 那么和TRUNCATE TABLE是一样的 , 但有一点不同 , 那就是DELETE可返回被删除的记录数 , 而TRUNCATE TABLE返回的是0 。如一个表中有自增字段 , 使用TRUNCATE TABLE和没有WHERE子句的DELETE删除所有记录后 , 这个自增字段将起始值恢复成功 。
如不想这样做的话 , 可在DELETE语句中加上WHERE , 如WHERE 1或WHERE true 。DELETE FROM table1 WHERE 1 。
上面的语句在执行时将扫描每一条记录 。并不比较 , 这个WHERE条件永远为true 。
这样做可保持自增的最大值 , 由于扫描了所有的记录 , 执行成本要比没有WHERE子句的DELETE大得多 。DELETE和TRUNCATE TABLE的区别:DELETE可以通过WHERE语句选择要删除的记录 。
但执行得速度不快 。且还可返回被删除的记录数 。
而TRUNCATE TABLE无法删除指定的记录 , 且不能返回被删除的记录 。但执行得非常快 。
和标准的SQL语句不同 , DELETE支持ORDER BY和LIMIT子句 , 通过这两个子句 , 可更好地控制要删除的记录 。如当我们只想删除WHERE子句过滤出来的记录的一部分 , 可以使用LIMIB , 如果要删除后几条记录 , 可通过ORDER BY和LIMIT配合使用 。
假设要删除users表中name等于"Mike"的前6条记录 。可使用如下的DELETE语句:DELETE FROM users WHERE name = 'Mike' LIMIT 6 。
一般MySQL并不确定删除的这6条记录是哪6条 , 为保险 , 可使用ORDER BY对记录进行排序 。
4.SQL的update语句怎么写UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值 , update语句的写法:
1、UPDATE table_name
2、SET column1=value1,column2=value2, 。
3、WHERE column(1)=value(1),column(2)=value(2) 。and column(n)=value(n);
4、UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing',WHERE LastName = 'Wilson'
扩展资料
SQL的update语句写法的特点
1、一体化:SQL集数据定义DDL、数据操纵DML和数据控制DCL于一体 , 可以完成数据库中的全部工作 。
2、使用方式灵活:它具有两种使用方式 , 即可以直接以命令方式交互使用;也可以嵌入使用 , 嵌入到C、C++、FORTRAN、COBOL、JAVA等主语言中使用 。
3、非过程化:只提操作要求 , 不必描述操作步骤 , 也不需要导航 。使用时只需要告诉计算机“做什么” , 而不需要告诉它“怎么做” 。