1.增删改
/*
向表中插入数据:
insert into 表名(字段名1,字段名2,.....) values(值1,值2,....),(值1,值2,....)......
*/
INSERT INTO employee(id,ename) VALUES(1,'abc');
INSERT INTO employee(id,ename) VALUES(2,'zhangsan'),(3,'lisi');
#注意:如果插入的是全字段中的内容,那么表名后面的字段可以省略。
INSERT INTO employee VALUES(4,'longge');
#将查询的结果插入到当前表中
#注意:1.查询的字段的数量和插入的字段的数量应该相等。
# 2.查询的字段的类型和插入的字段的类型应该匹配。
INSERT INTO employee(id,ename)
SELECT employee_id,first_name
FROM myemployees.`employees`;
#########################################################################
/*
update 表名 set 字段名1=值1,字段名2=值2,....... [where 过滤条件]
*/
UPDATE employee SET ename='canglaoshi' WHERE id=1;
#将整张表中所有的ename全部进行修改
UPDATE employee SET ename='canglaoshi';
#####################################################################
/*
删除
delete from 表名 [where 过滤条件]
*/
DELETE FROM employee WHERE id=1;
#删除整张表中的内容
DELETE FROM employee;
INSERT INTO VALUES
UPDATE SET
DELETE FROM
2.数据库事务
/*
事务:一组逻辑操作单元,使数据从一种状态变换到另一种状态。
场景:AA给CC转账1000元
name balance
AA 2000
CC 2000
try{
1.开启事务
通过代码让AA减去1000
System.out.println(1/0);
通过代码让CC加上1000
2.事务提交
}catch(Exception e){
3.事务回滚
}
*/
DELETE FROM employee;
#1.开启事务
SET autocommit=FALSE;#禁止自动提交
#2.事务提交-一旦commit事务将不能再回滚
COMMIT;
#3.事务回滚
ROLLBACK;
#4.该次事务无论成功或失败再允许自动提交避免后面出现问题
SET autocommit=TRUE;
/*
TRUNCATE TABLE和delete from的区别?
truncate table不能事务回滚。delete from可以事务回滚.
如果确定数据就是要删除那就使用truncate table因为效率高。
*/
TRUNCATE TABLE employee;
SET autocommit =FALSE;
COMMIT;
ROLLBACK;
SET autocommit = TRUE;