1. 给表增加个字段
需要给A表增加个字段mc,长度为200的字符串类型,默认值为‘0’,不可为空,请写出sql语句。(5分)
alter table A add mc VARCHAR2(200) default '0' not null;
comment on column A.mc is '名称';
2. Oracle 数据泵备份恢复的命令
Impdp wasys /123@127.0.0.1:1521/orcl dumpfile=123.dmp logfile=123.log directory=WORKINGDATA remap_tablespace=123:123 remap_schema=123:123
expdp 123/123@127.0.0.1 directory=bakfs dumpfile=123.dmp logfile=123.log
3. 检查表中某字段是否存在重复的值,并输出重复值和重复的次数
检查表A中bm字段是否存在重复的值,并输出重复值和重复的次数的sql:
Select count(*),bm from A group by bm having count(*)>1
4. 创建与 某表结构一样的表
创建一张与 emp表结构一样的表(不需要 emp表数据)、
create table empback
as
select * from emp where null =null
5. 写出在oracle中每天凌晨2:00执行定时器的命令以及查询、停止、删除定时器的命令
答案:
- 创建:declare job4 number:=1;
begin
dbms_job.submit(job4,'zf_test;',trunc(sysdate)+2/(24),'TRUNC(sysdate)+1+2/24)');
commit;
end;
- 查看
select * from user_jobs;
(3)停止
exec DBMS_JOB.BROKEN(83,SYS.DIUTIL.INT_TO_BOOL(1));
(4)删除
exec dbms_job.remove(83);
是不是索引建立得越多越好?
答: 合理的索引可以提高查询的速度,但不是索引越多越好。在执行插入语句的时候, 数据库要为新
插入的记录建立索引。所以过多的索引会导致插入操作变慢。原则上是只有查询用的字段才建立索引