增
CREATE TABLE product(
-- 主键列
id INT PRIMARY KEY AUTO_INCREMENT,
pname VARCHAR(100) NOT NULL,
price DOUBLE
);
/*
出了数字都加上单引号,下面的方式一般不用
因为主键是自增的
下面的方式容易引起主键冲突
*/
INSERT INTO product(id,pname,price) VALUES (1,'笔记本',5555.99);
INSERT INTO product(id,pname,price) VALUES (2,'智能手机',2000);
/*
添加数据格式,不考虑主键--常用
格式:
INSERT INTO 表名(列名1,列名2) VALUES (值1,值2);
INSERT INTO product(pname,price) VALUES ('笔记本',5555.99);
INSERT INTO product(pname,price) VALUES ('智能手机',2000);
注意:上边两句代码的末尾加了分号,所以选中后一起执行就不会报错,
但是如果没有用分号隔开,运行的时候就会报错,所以,注意加分号,不加分号只适用于单个执行
可以考虑批量添加
*/
INSERT INTO product(pname,price) VALUES ('洗衣机',300);
/*
添加数据格式,所有值全给出
格式:
insert into 表名 values (全列值)
*/
INSERT INTO product VALUES (4,'微波炉',300);
/*
添加数据格式,批量写入
INSERT INTO 表名(列名1,列名2,列名3) VALUES(值1,值2,值3),(值1,值2,值3)
*/
INSERT INTO product(pname,price) VALUES
('彩色电视',1000),
('沙发',3000),
('智能机器人',40000);
删
/*
删除表中的数据
delete from 表名 删除整个表中的信息
delete from 表名 where 删除符合条件的信息
delete 不清空auto_incrument ,不加条件清空数据
truncate 清空auto_incrument,摧毁表然后再创建一个表
*/
/*
删除表中的数据
格式:
delete from 表名 where 条件
drop table 表名 删除的是整个表
方法对比:
delete from 不加where条件,不删除表,直接清空所有的数据truncate 删除表之后再重新建表
*/
DELETE FROM product WHERE id=8;
注意:没有*
-- 删除列
ALTER TABLE users DROP tel;
改
/*
对数据进行更新操作
数据在原有的基础上修改
格式:
update 表名 set 列1=值1,列2=值2 where 条件
where条件:数据中的唯一性
条件不一定一定要用id
*/
-- 修改智能手机, 价格上调到15000
UPDATE product SET price=15000 WHERE id=2;
-- 修改彩色电视机,名字改为黑白电视机,价格是500
UPDATE product SET pname='黑白电视机',price =500 WHERE id=3;
-- 将沙发的名字修改为真皮沙发
UPDATE product SET pname='真皮沙发' WHERE pname='沙发';
-- 如果有同名的产品,修改价格的时候只想修改一个,可以用and来具体定位到一个
UPDATE product SET price=1000 WHERE pname='笔记本' AND price='9999';
/*
修改条件的写法
id=6
id<>6
id<=6
与 或 非
and or not
id in(1,2,3) 包含
*/
-- 将笔记本的价格和空调的价格全部修改为2000
UPDATE product SET price=2000 WHERE id=1 OR id=7;
-- 用in的方式来修改多个产品的价格
UPDATE product SET price=2000 WHERE id IN(1,7);