写SQL命令命令可以不区分大小写,但最终执行的时候是大写,下面介绍的时候为了看起来
方便,所以使用了小写。建议开发时使用大写。
- DQL-----数据库查询语言:比如select
1、查询表中的某个字段
语法:select 字段名1,字段名2 from 表名
比如: select first_name,last_name from employees(在employee表中查询first_name还有last_name)
2、查询所有表中的所有字段
语法:select 所有字段 from 表名 或者 select * from 表名
注意:*代表所有字段的意思,但是在实际开发中,写*的效率相比直接写字段名要低,开发时不建议使用
- DML----数据操纵语言:向表中添加数据(insert),修改数据(update),删除数据(delete)
1、 insert:向表中添加数据
----------向表中所有字段添加数据
语法:insert into 表名 values(值1,值2,….)
比如:insert into t_User values(2,'张三',33,'13691153161','男',to_date('1999-10-10','yyyy-mm-dd'));
----------向表中有选择的添加数据
语法:insert into 表名(字段1,字段2,….) values(值1,值2,….)
insert into t_User(userId,username,mobile,age) values(4,'小张','17888888888',44);
2、delete:删除
----------删除表中的某一条数据
语法:delete from 表名 where 条件
delete from t_User where username='3333';
----------批量删除
delete from t_User where userId in(1,4,8);
- DDL----数据定义语言: create drop alter
1、create
------ create table 表名(字段….);
create user 用户名 identified by 密码;//必须是管理员账户,创建数据库用户。
2、drop
------drop table 表名//删除表
3、alter
------添加字段
alter table 表名 add 列名 数据类型 约束。
------删除字段
alter table 表名 drop column 列名;
------修改字段类型
alter table 表名 modify 列名 数据类型 约束。
------修改字段的名字
alter table 表名 rename column 老列名 to 新列名.
- DCL----数据控制语言:grant(授权),revoke(撤销授权)
grant: grant 权限名 to 用户;
revoke:revoke 权限名 from 用户;
- TCL----事务控制语言:commit(提交),rollback(回滚)
commit提交事务
rollback回滚
事务是数据库中最小执行单元,由1-n条sql命令组成,组成一个事务的一组sql,是不可分割的原子操作,要么一起成功,要么一起失败。
数据库服务器,会针对每一个连接上来的客户端,开辟一小段内存空间(回滚段),用于暂时缓存客户端提交的sql命令,当事务结束的时候,需要显示的给出明确指示。
commit:提交,将回滚段中的sql真正的更新到数据库服务器中。
rollback:回滚,将回滚段中的sql全部丢弃。