orcle
Oracle 发展史
Oracle 8i(I internet)
Oracle 9i
Oracle 10g(g网格)
Oracle 11g
Sys:超级管理员
System:普通管理员
Scott:一般用户 //默认密码是tiger
Oracle是以用户为单位进行操作的
Mysql和sqlserver一库为单位进行操作
安装的时候没有给scott解锁是可以用以下命令解锁
Alter user scott identified by tiger accout unlock;
查看相应用户下的所有
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
Select table_name from user_tables;
显示当前登录用户
Show user;
Oracle的命令的编辑方法:三种
Web的编辑方式:isqlplus
Sqlplusw:命令的方法
Plus:
权限高的用户可以访问权限低的用户表时,需给表名前加用户名:
System 用户访问scott下的dept这个表时Select *from scott.dept;
数值型:number number(M,n)M精度n小数点位数 字符型:varchar2() 1-4000字节 日期型:date 日期默认日期格式;DD-MON-YYYY
获取当前时间sysdatess
Rowed:
查询几条信息
伪列 rownum rowed
求1-5
Select rownum,ename from emp where rownum between 1 and 5; 求第三条到第五条
子查询
Oracle 常用的分页技术
子查询的rownum 必须起别名
Select *from (select rownum as nu,ename from emp)where nu between 3 and 5;
列的增删改(外键)
唯一约束
默认约束
外键约束(表级和列级)
Log表里的tid应该是cx里存在的id
外键:假设有表A和表B,表A是表B的父表,B里面的外键应该是A里面的主键或唯一键
如果表里面已存在信息,外键将不能创建成功
外键主键必须在建表时就考虑清楚
如果创建了外键,也没有建级联关系,必须先删除子表中关联的数据才能删除父表的内
容。
表级:alter table 字表名 add constraint 外键名称 foreign key (关联的字段)references 父表名(字段)
列级:
主键自增长(序列)
Check约束
同意词
事务
视图
用户管理(创建用户,授权)
创建表(同mysql)
Sql语句的增删改查(同mysql)
数据库
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
1.博客数据库设计
2.电子商务网站的设计
连接
表连接:cross
等值连接:select 字段列表 from lefttable[inner] join right on lefttable.字段=righttable.字段
Select 字段列表 from table1,table2 where table1.字段=table2.字段 自然连接
非等值连接
查询工资是1300到3000的员工姓名和部门名称 Select ename,dname,sal from emp join dept on emp.deptno=dapt.deptno where sal between
1300 and 3000;
左外连接
select 字段列表 from lefttable left join right on lefttable.字段=righttable.字段 右外连接
select 字段列表 from lefttable right join right on lefttable.字段=righttable.字段 全外连接
select 字段列表 from lefttable full join right on lefttable.字段=righttable.字段 查询emp的员工信息和相应的部门名称
Select emp.*,DNAME from emp inner join dept on emp.DEPTNO=dept.DEPTNO; Select emp.*,dname from emp,dept where emp.deptno=dept.deptno; 查询部门所有信息和部门下的所有员工信息
Select dept*,emp.*from emp join dept on emp.DEPTNO=dept.DEPTNO; 查询所有员工姓名和员工领导的姓名
Select a.ename,mgr,emp.ename from emp a join emp on a.mgr=emp.emptno; 查询有员工信息的部门名称和员工姓名,工资,奖金
Select dname,ename,sal,comm from emp join dept on emp.deptno=dept.deptno; 查询有员工信息的部门名称和员工姓名,工资和没有奖金的员工信息 Select dname,ename,sal,comm from emp join dept on emp.deptno=dept.deptno where comm.
Is null;
查询有员工信息部门名称和员工姓名,工资,入职日期(将日期改为中文格式) Select ename,sal,dname,to_char(hiredate,’yyyy-mm-dd’) as hirdate from emp join dept on
emp.deptno=dept.deptno;
视图:view
语法:
Create view viewname
As
Select 语句
普通管理员下面去创建视图
一般用户必须去授权才能创建
使用视图
Select 字段列表 from viewname;
序列:
自增长:
Mysql自增长(auto_increment)sqlserver(indentity(1,1))
Create table mytable(
Id number not null,
Name varchar2(10)
);
序列和表怎么联系起来(在插入数据时用序列调用nextval属性)
给表mytable创建一个序列
Create sequence myseq;
调用序列的属性nextval
Insert into mytable values(myseq.nextval,’aa’);
Create sequence squ_stu(序列名称);
属性
Nextval:返回当前值得下一个值
Currval:返回当前序列的值
创建用户
1.创建用户:只有管理员可以创建(服务器端创建,命令)
基本语法:create user username identified by password; Creat user stu1109 identified by student;
2.授权
Grant creat session[提供登录权限],creat table,creat sequence,creat view to sty1207(用户
名);
Grant connect,resource to stu1109;
事物的机制
1.ACID(原子性,一致性,永久性,隔离性) 事务的机制:银行(中间有任何一步出错,就会回滚到最原始的状态,如果没有错误,提
交)
开始事务
Begin transcation
一条或多条Sql语句:如果没有错误
Commit
中间有任何一步出错
Rollback
存储过程(sqlserval)
锁(lock)
博客数据库的设计,所有的表的关联关系都写清楚 电子商务网站数据设计:(订单表,订单详细表)