-- 我是注释信息 sql语句 -- 创建用户: create user 用户名 identified by 密码; create user jack identified by j123; -- lacks CREATE SESSION priviledge 用户没有权限连接数据库 -- 授权用户: grant 权限1,权限2 to 用户名; -- 管理员 dba -- 普通用户 connect,resource grant connect,resource to jack; -- 收回权限: revoke 权限1,权限2 from 用户名; revoke connect,resource from jack; -- 修改用户密码 -- alter user 用户 identified by 新密码; alter user jack identified by jack; -- 锁定用户 -- alter user 用户 account lock; alter user jack account lock; -- 解锁用户 -- alter user 用户 account unlock; alter user jack account unlock; --删除用户: drop usre 用户 cascade; drop user jack cascade; --oracle 数据类型 -- number(m[, n]) 数值类型,最高精确m位,小数点后面精确n位 -- char(m) 固定长度字符类型,长度是m个字节 -- varchar2(10) 可变长度字符类型,最长m个字节 -- date 日期时间类型,精确到秒 -- timestamp 精度更高的日期时间类型,精确到小数秒 -- 约束 -- 主键约束 primary key -- 唯一约束 unique -- 非空约束 not null -- 检查约束 check() -- 默认约束 default() -- 外键约束 references 表(列) --创建表 create table classinfo( cid varchar2(10) primary key, ctype varchar(10), cdate date ); create table student( sno number(3) primary key, --sname varchar2(40) unique, sname varchar2(40) default ('佚名'), --sex char(2) not null, --sex char(2) check(sex='男' or sex='女'), sex char(2) check(sex in('男', '女', '中')), --age number(2) check(age >= 20 and age <= 30), age number(2) check( age between 20 and 30 ), birthday date, sclass varchar2(10) references classinfo(cid) ); select * from classinfo; select * from student; -- 创建商品信息表 -- 字段如下: -- 商品编号 -- 名字 -- 价格 -- 库存 -- 商品类别编号 -- 出厂日期 create table goods( gno number(3), gname varchar2(20), price number(6, 2), kucun number(5), leibie varchar2(10), outdate date ); ------------------------------------- alter user scott account unlock identified by tiger; --emp 员工信息表(employee) -- empno 员工编号 -- ename 员工姓名 -- job 职位 -- mgr 主管员工编号(manager) -- hiredate 入职日期 -- sal 工资(salary) -- comm 提成 -- deptno 部门编号(department number) -- select 查询语句 -- select 字段 from 表 [where clause(where 字句)]; -- * 代表所有字段 -- e 表别名 代表 emp select * from emp e; select ename,hiredate from emp e; select emp.ename, emp.sal from emp; select e.ename,e.sal from emp e; -- 列别名 select ename as 姓名, sal as 工资 from emp; select ename 姓名, sal 工资 from emp; -- 关系运算符 -- > 大于 -- >= 大于等于 -- < 小于 -- <= 小于等于 -- = 相等 -- != 或者 <> 不等 -- 逻辑运算符 -- and cond1 and cond2 -- or cond1 or cond2 -- not not cond -- 查询工资超过2000的员工信息 select * from emp e where e.sal > 2000; -- 查询Scott的工资 -- 字符串用单引号,而且区分大小写 select e.sal from emp e where e.ename = 'SCOTT'; -- 查询30号部门工资低于1000的员工信息 select * from emp where deptno = 30 and sal < 1000; -- 查询30号部门和工资低于1000的员工信息 select * from emp where deptno = 30 or sal < 1000; -- 查询工资大于等于3000的员工信息 select * from emp where sal >= 3000; select * from emp where not sal < 3000;