oracle笔记

发布 2021-05-11 22:25:28 阅读 7584

drop,delete,truncate有什么区别?

truncate和 delete只删除数据不删除表的结构,drop语句将删除表的结构,被依赖的约束(constrain),触发器(trigger),索引(index); 依赖于该表的存储过程/函数将保留,但是变为invalid状态。

select count(id),userrole from bbs_user group by userrole

填空题:1.在数据库打开时进行数据库备份叫做联机备份,执行此备份时数据库只能运行在归档模式下。

2.数据库可以运行在两种备份模式下:非归档模式和归档模式。

的故障包括:介质故障,用户或应用程序故障,语句故障,数据库实例错误,进程故障,网路故障等6种类型。4.按介质恢复的内容,可以将介质恢复分为:完全恢复和不完全恢复。

支持4种类型的不完全恢复:1.物理备份和逻辑备份,2.全数据库备份和部分数据库备份,3.一致备份和不一致备份,4联机备份和脱机备份。

用户授权 grant xxxx on 表名 to xxx conn system/system as sysdba;

create user j**ams identified by j**ams;

grant connect to j**ams;

grant select on to j**ams;

commit;

conn j**ams/j**ams;

create synonym emp for * from emp;

请说出运行时异常原因

:预定义异常

:非预定义异常。

:自定义异常

alter table 表名。

add constraint pk_字段名--"pk"为主键的缩写,字段名为要在其上创建主键的字段名,'pk_字段名'就为约束名。

primary key (字段名)--字段名同上。

-唯一约束:

alter table 表名。

add constraint uq_字段名。

unique (字段名)

-外键约束:

alter table 表名。

add constraint fk_字段名--"fk"为外键的缩写。

foreign key 字段名 references 关联的表名 (关联的字段名)--注意'关联的表名'和'关联的字段名'

-检查约束:

alter table 表名。

add constraint ck_字段名。

check (条件表达式)--条件表达式中的条件用关系运算符连接。

-默认值约束:

alter table 表名。

add constraint df_字段名。

default '默认值' for 字段名--其中的'默认值'为你想要默认的值,注意'for'

-删除创建的约束:

alter table 表名。

drop constraint 约束名--约束名为你前面创建的如:pk_字段这样的约束名。

-注意:如果约束是在创建表的时候创建的,则不能用命令删除。

-只能在'企业管理器'里面删除

建一个视图(视图的好处是什么?)create view 视图名 as select * from emp;

简单性。视图不仅可以简化用户对数据的理解,也可以简化他们的操作。那些被经常使用的查询可以被定义为视图,从而使用户不必为以后的操作每次都指定全部的条件。

安全性。通过视图用户只能查询和修改他们所能见到的数据。数据库中的其他数据则既看不见也取不到。

数据库授权命令可以使每个用户对数据库的检索限制到特定的数据库对象上,但不能授权到数据库特定行和特定的列上。通过视图,用户可以被限制在数据的不同子集上。

逻辑数据独立性。视图可以使应用程序和数据库表在一定程度上独立。如果没有视图,应用一定是建立在表上的。有了视图之后,程序可以建立在视图之上,从而程序与数据库表被视图分割开来。

视图也存在一些缺点,主要如下。

性能:sql server必须把视图的查询转化成对基本表的查询,如果这个视图是由一个复杂的多表查询所定义,那么,即使是视图的一个简单查询,sql server也把它变成一个复杂的结合体,需要花费一定的时间。

修改限制:当用户试图修改视图的某些行时,sql server必须把它转化为对基本表的某些行的修改。对于简单视图来说,这是很方便的,但是,对于比较复杂的视图,可能是不可修改的。

所以,在定义数据库对象时,不能不加选择地来定义视图,应该权衡视图的优点和缺点,合理地定义视图。

联合查询(内连接、外连接) 内连接

select a.*,b.* from a inner join b on

左连接。select a.*,b.* from a left join b on

右连接 select a.*,b.* from a right join b on

完全连接。select a.*,b.* from a full join b on

时间: 2010-11-15 18:05

oracle笔记

1 查看表的结构 desc tabledescription 2 set timing on 打开操作表的时间记录。3 消除重复行 distinct 4 大小写不区分的是列名,而不是里面的数据。1 可以对某一列直接进行加减乘除。两列相加。2 如果有一列为null,所得结果也为空。使用nvl函数处理n...

Oracle笔记

第1页1.oracle 的使用 1.1.sqlplus 的命令 初始化表的位置 set nls lang american 设置编码才可以使用下面脚本 cd oracle home rdbms cd demo 我们目前使用的是oralce 9i 9201 版本 select from v versi...

oracle笔记

clear 清屏。col title for a20 设置title的字符最多有20个。oracle介绍。rdbsrdb 基本的存储结构是,二维表。表头。行。列。字段。sql的分类 dsl 关键字 select dml 操作 insert delete update ddl 定义 create dr...