首页 > 代码库 > Oracle经典教程学习笔记
Oracle经典教程学习笔记
1、为表创建约束:alter table 表名 add constraint 约束名 约束内容
演示样例:alter bable infos add constraint UN_STUNSME UNIQUE(STUNAME) //唯一约束;
alter table scores add constraint CK_SCORES_TREM CHECK(TREM=‘S1‘ OR TREM=‘S2‘)//trem的值仅仅能S1或者S2;
加入外键alter table score add constraint FK_SCORES_INFOS_STUID FOREIGN KEY(STUID) REFERENCES INFOS(STUID);
2、Oracle中能够把查询的结果依据结果集中的表结构和数据形成一张新表:CREATE TABLE 表名 AS SELECT 语句。
假设单想复制表结构,不复制当中的内容则加一个不成立的语句。比方:WHERE 1 = 2,则仅仅会复制表结构。
3、Oracle中能够把查询的结果作为结果集插入到还有一个表中:INSERT INTO 表 SELECT 子句。
4、Oracle中TRUNCATE和DELETE的差别
同样点:都能够吧数据表中的数据所有删除。
不同点:可是TRUNCATE是DDL命令,删除的数据不能恢复;DELETE是DML命令。删除的数据能够通过日志文件恢复; 假设数据表中的文件非常多则使用TRUNCATE的速度比DELETE快。
可是TRUNCATE命令比較危急,在实际开发中,慎用。
5、Oracle中的集合运算: INTERSECT:返回两个查询共同拥有的记录; UNION ALL:返回各个查询的全部记录。包含反复记录; UNION:返回各个查询的全部记录,不包含反复记录。 MINUS:返回第一个查询检索出的记录减去第二个查询检索出的记录之后剩余的记录。
6、查询出Emp表中比随意一个销售员(‘SALESMAN’)工资低的员工姓名、工作、工资:
SELECT ENAME, JOB, SAL FROM EMP WHERE SAL<ANY(SELECT SAL FROM EMP WHERE JOB=‘SALESMAN‘);
7、Oracle中的伪列:
在Oracle的表的使用过程中。实际表中另一些附加的列,称为伪列。
伪列就像表中的列一样,可是在表中并不存储。伪列仅仅能查询,不能进行增删改操作。伪列有:ROWID, ROWNUM;
ROWID:表中的每一行在数据文件里都有一个物理地址,ROWID伪列返回的就是改行的物理地址,ROWID值能够唯一的标识表中的一行。
ROWNUM:返回结果集中每一行标识的一个行号,第一行返回1。通过ROWNUM伪列能够限制查询结果集中返回的行数。
ROWID是插入记录时生成的。ROWNUM是查询数据时生成的。ROWID标识的是行的物理地址,ROWNUM标识的是查询结果中行的次序。
比如:查询工资最高的前5名员工的姓名、工资、工作:
SELECT ROWNUM,T.* FROM (SELECT ENAME, JOB, SAL FROM EMP ORDER BY SAL DESC) T WHERE ROWNUM <= 5; 查询出emp表中第5条到第10条之间的记录:SELECT * FROM (SELECT ROWMUN R, ENAME, JOB, SAL FROM EMP WHERE ROWNUM <=10) WHERE R > 5;
8、Oracle数据库中经常使用的两类函数:1、单行函数:字符函数、梳子函数、转换函数、日期函数;2、聚合函数。 字符函数:ASCII(X):返回字符x的ASCII码。CONCAT(X, Y):连接字符串X和Y;
CSDN collonn:6。
9、创建一个表空间。包括两个数据文件大小各自是10MB。5MB。要求extent的大小统一为1M:CREATE TABLESPACE MYSPACE DATAFILE ‘D:/A.ORA‘ SIZE 10M, ‘D:/B.ORA‘ SIZE 5M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1M;
1)文件名称包含完整路径和文件名称;
2)EXTENT MANAGEMENT LOCAL指明表空间类型是:本地管理表空间。本地管理表空间要求Oracle中的数据分区(Extent)大小统一;3、UNIFORM SIZE指定每一个分区的统一大小。
Oracle经典教程学习笔记