数据库意义
数据存储
数据管理
管理数据库数据方法
通过SQLyog等管理工具管理数据库数据
通过DML语句管理数据库数据
DML(数据操作语言:用于操作数据库对象中所包含的数据
INSERT ( 添加数据语句 )、 UPDATE ( 更新数据语句 ) 、DELETE ( 删除数据语句 )
添加数据
INSERT INTO 表名 [ ( 字段1, 字段2, 字段3, … ) ] VALUES ( '值1', '值2', '值3', …)
字段或值之间用英文逗号隔开
“字段1, 字段2…”该部分可省略,但添加的值务必与表结构数据列顺序相对应,且数量一致
可同时插入多条数据,values 后用英文逗号隔开
#创建学生信息表student
CREATE TABLE IF NOT EXISTS student(
sno VARCHAR(20) NOT NULL PRIMARY KEY COMMENT '学号',
sname VARCHAR(20) NOT NULL COMMENT '姓名',
ssex VARCHAR(20) NOT NULL COMMENT '性别',
sbirthday DATETIME COMMENT '出生日期',
class VARCHAR(20) COMMENT '班级'
);
#向学生表添加数据
INSERT INTO student VALUES ('108','曾华','男','1977-09-01','95033');
INSERT INTO student VALUES ('105','匡明','男','1975-10-02','95031');
INSERT INTO student VALUES ('107','王丽','女','1976-01-23','95033');
INSERT INTO student VALUES ('101','李军','男','1976-02-21','95033');
INSERT INTO student VALUES ('109','王芳','女','1975-02-10','95031');
INSERT INTO student VALUES ('103','陆军','男','1974-06-03','95031');
#向学生表添加数据
INSERT INTO student VALUES
('108','曾华','男','1977-09-01','95033'),
('105','匡明','男','1975-10-02','95031'),
('107','王丽','女','1976-01-23','95033'),
('101','李军','男','1976-02-21','95033'),
('109','王芳','女','1975-02-10','95031'),
('103','陆军','男','1974-06-03','95031')
修改数据
UPDATE 表名 SET column_name = value [ , column_name2 = value2, …. ] [ WHERE condition ];
column_name 为要更改的数据列
value 为修改后的数据,可以为变量、具体值、表达式或者嵌套的SELECT结果
condition为筛选条件,如不指定则修改该表的所有列数据
WHERE条件子句:有条件地从表中筛选数据
#创建员工表staff
CREATE TABLE IF NOT EXISTS staff(
id INT,
`name` VARCHAR(20),
gender VARCHAR(2),
birthday DATE,
email VARCHAR(10),
remark VARCHAR(50)
);
#插入数据
INSERT INTO staff VALUES
(1,'张三丰','男','1367-10-21','123123144@qq.com',102),
(2,'达摩','男','1277-10-21','123123144@qq.com',54),
(3,'梅超风','女','1547-10-21','123123144@qq.com',44),
(4,'三体星人','未知','3014-10-21','123123144@qq.com',2000),
(5,'超级赛亚人','男','1985-10-21','123123144@qq.com',25)
#将id为4的哪一行username改为“弗利萨”
UPDATE staff SET username='弗利萨' WHERE id=4
#id为4的哪一行age改为250
UPDATE staff SET age=250 WHERE id=4
#id为5的哪一行username改为孙悟空,age改为26
UPDATE staff SET username='孙悟空',age=26 WHERE id=5
删除数据
DELETE命令
DELETE FROM 表名 [ WHERE condition ];
condition为筛选条件,如不指定则删除该表的所有列数据
#删除age为200的哪一行
DELETE FROM staff WHERE age=200
TRUNCATE命令:用于完全清空表数据,但表结构、索引、约束等不变
TRUNCATE [TABLE] table_name
TRUNCATE命令与DELETE命令异同
相同
都能删除数据、不删除表结构,但TRUNCATE 速度更快
不同
使用TRUNCATE TABLE重新设置AUTO_INCREMENT计数器
使用TRUNCATE TABLE不会对事务有影响