1.数据库表的完整性
①实体完整性:靠主键来维护,数据唯一且不能为空
②参照完整性:靠外键来维护,主键表无记录外见表则无法操作数据
③域完整性:check()约束 not null 约束 default 等
④用户定义的完整性:基本涵盖上述三种数据库完整性
2.选择代理主键作为主键
当业务键数据发生修改后用代理键作元数据标识,方便对数据管理
3.为什么服务器和客户端都要对输入进行验证?①客户端:减轻服务端承载压力,保证数据有效性、合法性
②服务器:保证系统的安全性和数据安全性
4.简述DDL、DML、DCL、DQLDML(Data Manipulation Language表数据操纵语言):insert update delete
DDL(Data Definition Language表结构定义语言): create alter drop
DCL(Data Control Language表数据控制语言)grant:授权 rollback 回滚 commit 提交(显式、隐式、自动提交)
DQL(Data Query Language 表数据查询语言):select .... from ....where ....
5.ORACLE中如何登录管理员conn system/密码
conn/as sysdba 超级管理员
6.char与varchar的区别char:定长字符 检索效率高,在存储简单数据中使用
varchar:可变长度字符 检索效率低,但可以节约服务器资源
7.如何创建用户并指定密码create user ytc identified by ytc
8.如何为用户授权
grant resource,connect,dba to ytc;
9.如何建表提示·········以下三种复制表的方式并未复制数据库表的完整性
① create table emp1 as select * from emp;------复制表结构和数据
② create table emp2 as select ename,job from emp; ------选择emp表中两列表结构和数据创建新表
③ create table emp3 as select * from emp where 1=2; -----复制一张空表
10.如何定义主键和外键alter table film add constraint pk_film primary key(filmid);
alter table film add constraint fk_film foreign key(filmid) references filmtype(typeid);
11.如何为表增加1列alter table film add filmname varchar2(10); 为表增加filmname列
12.如何修改指定列的类型alter table film modify filmname number; 修改filmname为number类型
13.如何修改指定列的列名?如何修改表名alter table film rename column filmname to filminfo; 修改film表中filmname列名为filminfo
rename film to film2;
14.如何删除指定列alter table film2 drop column filminfo;
15.如何为表添加一条数据insert into filminfo values(2,1,'像素大战','忘记了','不记得',20);
insert into filminfo(filmid,typeid,filmname,ticketprice) values(3,1,'港囧','9');16.什么是事务?如何提交数据
事务:访问或更新数据库数据项的一个程序执行单元,关系型数据库中表现为一条或是一组SQL语句
特性:①要么什么都做,要么什么都不做;②一个事务的执行与其他事务互不影响
③一旦事务提交数据就具有持久性,其他程序或是故障部队其产生任何影响
事务提交:commit(表示程序全部完成不出现任何故障)rollback 回滚 业务程序出现问题就回滚到初始保存状态
17.如何导出表和表中的数据cmd 命令:exp
18.如何将导入的数据重新导入数据库cmd 命令:imp
19.如何回滚数据?rollback;在没commit之前可以回滚程序到初始保存状态
20.如何设置事务的保存点savepoint(sp1);保存点后面的所有数据在执行回滚后都将失效,而在它之前的都将保留
21如何回滚到指定的保存点rollback to sp1;