MySQL——增改删

MySQL——增

  • 可以省略表定义中允许NULL值(无值或空值)或给出默认值的列,其他列不能省略,否则插入将失败并报错。
INSERT [LOW_PRIORITY] INTO table_name(c1, c2, c3, c4, c5)
VALUES('a', 'b', 'c', 'd', 'e'),('1', '2', '3', '4', '5');

LOW_PRIORITY 表示降低INSERT语句的优先级
因为一般以查为主,这样可以避免影响查的性能,这也适用于改和删。

或者使用INSERT SELECT,将一条SELECT语句的结果插入表中。

INSERT INTO table_name(c1, c2, c3, c4, c5)
SELECT c3, c1, c5, c4, c2
FROM table_old;

可以包含WHERE子句以过滤插入的数据。

MySQL——改

除非要修改所有行,否则别忘了WHERE子句。

UPDATE [IGNORE] table_name
SET c1 = 100,
    c2 = 150
WHERE c3 = 'Android';

IGNORE 表示即使发生错误,也继续更新。

或者

UPDATE  table_name
SET c1 = NULL
WHERE c2 = 0;

假如表定义允许NULL值,这样可以删除列值c1。

MySQL——删

除非要删除所有行,否则别忘了WHERE子句。

DELETE FROM table_name
WHERE c1 = 100;

如果想删除所有行,不要用DELETE,这是逐行删除,速度慢!
可以使用TRUNCATE table_name语句,它删除原来的表,并重新创建一张表,速度快!

猜你喜欢

转载自blog.csdn.net/recordGrowth/article/details/79433816