数据库笔试题 (3)
一、選擇題(每題1分)[選擇題:
1.A ??? 2.C 3.D ???? 4.B 5.C?
6.C 7.C 8.D ???? 9.C 10.A
11.D 12.B 13.C 14.C 15.AC
16.D 17.D 18.B 19.A 20.B
21.B 22.A 23.D 24.D 25.C
26.B 27.C 28.D 29.B 30.C
31.A 32.D 33.C 34.D 35.C
36.C 37.B 38.A 39.A 40.C
41.B 42.C 43.A 44.D 45.C
46.B 47.B 48.C 49.B 50.B
]
1.Oracle發出下列select語句:
SQL> select e.empno, e.ename, d.loc
2 from emp e, dept d
3 where e.deptno = d.deptno
4 and substr(e.ename, 1, 1) = ‘S’;
下列哪個語句是Oracle數據庫中可用的ANSI兼容等價語句?
A.select empno, ename, loc from emp join dept on emp.deptno = dept.deptno where
substr(emp.ename, 1, 1) = ‘S’;
B.select empno, ename, loc from emp, dept on emp.deptno = dept.deptno where
substr(emp.ename, 1, 1) = ‘S’;
C.select empno, ename, loc from emp join dept where emp.deptno = dept.deptno and
substr(emp.ename, 1, 1) = ‘S’;
D.select empno, ename, loc from emp left join dept on emp.deptno = dept.deptno and
substr(emp.ename, 1, 1) = ‘S’;
2.你要對操縱Oracle數據庫中的數據。下列哪個選項表示Oracle中select語句的功能,并且不需要使用子查詢?
A.可以用select語句改變Oracle中的數據 B.可以用select語句刪除Oracle中的數據
C.可以用select語句和另一個表的內容生成一個表 D.可以用select語句對表截斷
3.Oracle數據庫中發出一個查詢。下列哪個選項不能查詢對用戶定義靜態表達式執行數學運算時的查詢組件?
A.列子句 B.表子句 C.DUAL表 D.where子句
4.你要操縱Oracle數據,下列哪個不是SQL命令?
A.select * from dual; B.set define
C.update emp set ename = 6543 where ename = ‘SMITHERS’;
D.create table employees(empid varchar2(10) primary key);
5.你要在Oracle中定義SQL查詢。下列哪個數據庫對象不能直接從select語句中引用?
A.表 B.序列 C.索引 D.視圖
6.你要根據PRODUCT_NAME列從PROFITS表查詢中過濾返回的數據。下列哪個子句包含相應過濾條件的引用?
A.select B.from C.where D.having
7.下列代碼顯示了PROFITS表輸出的局部:
PRODUCT_NAME PRODUCT_TYPE QTR_END_DATE PROFIT
BARNEY DOLL[巴尼娃娃] TOY 31-MAR-2001 6575430.30
GAS GRILL[瓦斯燒烤爐] APP 31-MAR-2001 1234023.88
PENCIL OFFICE 30-JUN-2001 34039.99
下列查詢的where子句哪個能正確計算2001年1月1日到6月1日六個月內銷售的所有家電總利潤?
A.where product_name = ‘GAS GRILL’ and qtr_end_date between ’01-JAN-2001’ and ‘01-JUN-2001’;
B.where proeuct_type = ‘APPLIANCE[]’ and name = ‘GAS GRILL’ and qtr_end_date
= ’31-JAN-2001’ or ‘30-JUN-2001’;
C.where proeuct_type = ‘APPLIANCE’ and qtr_end_date between ’01-JAN-2001’ and ’01-JUN-2001;
D.where proeuct_name = ‘GAS GRILL’ and qtr_end_date = ’01-JAN-2001’ or ‘01-JUN-2001’;
用下列代碼所示的內容回答后面八個問題:
EMPNO ENAME JOB MGR HIREDATE[一 月:January 簡寫:Jan.
二 月:February 簡寫:Feb.
三 月:March 簡寫:Mar.
四 月:April 簡寫:Apr.
五 月:May 簡寫:May.
六 月:June 簡寫:Jun.
七 月:July 簡寫:Jul.
八 月:August 簡寫:Aug.
九 月:September 簡寫:Sep.
十 月:October 簡寫:Oct.
十一月:November 簡寫:Nov.
十二月:December 簡寫:Dec. ] SAL COMM DEPTNO
7369 SIMTH CLERK 7902 17-DEC-80 800 20
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7566 JONES MANAGER 7839 02-APR-81 2975 20
7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30
7698 BLAKE MANAGER 7839 01-MAY-81 2850 30
7782 CLARK MANAGER 7839 09-JUN-81 2450 10
7788 SCOTT ANALYST 7566 19-APR-82 3000 20
7839 KING PRESIDENT 17-NOV-81 5000 10
7844 TURNER SALESMAN 7698 08-SET-81 1500 0 30
7876 ADAMS CLERK 7788 23-DEC-82 1100 20
7900 JAMES CLERK 7698 03-DEC-81 950 30
7902 FORD ANALYST 7566 03-DEC-81 3000 20
7934 MILLER CLERK 7782 23-JAN-82 1300 10
8.以下選項中哪個是下列查詢返回的值:select sum(sal) + sum(comm) from emp where job = ‘ANALYST’ or ename like ‘J%’ ?
A.6000 B.9925 C.9975 D.NULL
9.以下選項中哪個是下列查詢返回的值:select count(mgr) from emp where deptno = 10 ?
A.1 B.2 C.3 D.NULL
10.以下選項中哪個是下列查詢返回的值:select count(*) from emp where mgr = 7700-2 ?
A.5 B.6 C.7 D.NUL
11.以下選項中哪個是下列SQL命令產生的第三個員工:select ename, sal from emp where job= ‘SALESMAN’ order by empno desc ?
A.ALLEN B.MARTIN C.TURNER D.WARD
12.以下選項中哪個是下列SQL命令產生的第三個員工:ename, sal from emp where job= ‘SALESMAN’ order by 1 desc ?
A.ALLEN B.MARTIN C.TURNER D.WARD
13.以下選項中哪個是發出下列查詢后Oracle返回的值:select substr(job, 1, 3) from emp where ename like upper(‘__ar%’) ?
A.ANA B.CLE C.MAN D.SAL
14.以下選項中哪個是發出下列查詢后Oracle返回的值:select trunc(months_between(min(hiredate), max(hiredate))) from emp ?
A.24 B.25 C.-24 D.-25
15.以下選項中哪個是發出下列查詢后Oracle返回的值:select * from emp where hiredate > ’23-JAN-82’ ?(選擇兩個答案)
A.ADAMS B.MILLER C.SCOTT D.SMITH
16.TEST表包含兩個列,TESTCOL定義為數據類型NUMBER(10),TESTCOL_2定義為數據類型VARCHAR2(10)。在Oracle中發出下列語句:insert into test(testcol, testcol_2) values (null, ‘FRANCIS’),然后對表進行下列查詢:select nvl(testcol, ‘EMPTY’) as testcol from test where testcol_2 = ‘FRANCIS’。下列選項哪個是得到的結果?
A.Oracle返回結果0 B.Oracle返回結果EMPTY
C.Oracle返回結果NULL D.Oracle返回錯誤結果
17.要從ORDERS表中取得數據,其中包括三個列CUSTOMER、ORDER_DATE與ORDER_AMT。可以用下列哪個where子句查詢ORDERS表,取得客戶LESLIE超過2700的訂單?
A.where customer = ‘LESLIE’;
B.where customer = ‘LESLIE’ and order_amt < 2700;
C.where customer = ‘LESLIE’ or order_amt > 2700;
D.where customer = ‘LESLIE’ and order_amt > 2700;
18.用下列輸出回答問題(假設這里的信息來自本章使用的EMP表):
EMPNO
SMITH-dog-
ALLEN-dog-
WARD-dog-d
JONES-dog-
MARTIN-dog
BLAKE-dog-
CLARK-dog-
SCOTT-dog-
KING-dog-d
TURNER-dog
JAMES-dog-
FORD-dog-d
MILLER-dog
下列哪個SQL語句產生這個輸出?
A.select trim(trailing ‘-dog’ from ename) as ename from emp;
B.select rpad(ename, 10, ‘-dog’) as ename from emp;
C.select substr(ename,1 , 10) as ename from emp;
D.select lpad(ename, 10, ‘-dog’) as ename from emp;
19.用下列代碼塊回答問題:
SQL> select ______(-45) as output from dual;
OUTPUT
-45
下列哪個單行函數無法產生這個輸出?
A.abs() B.ceil() C.floor() D.round()
20.對表中的某一行,VARCHAR2列包含數值SMITHY,應用程序在右側填充七個空格。length()函數處理這個列值時,返回什么值?
A.6 B.13 C.30 D.60
21.SQL *Plus中發出的下列語句:
SQL> select ceil(-97.342),
2 floor(-97.342),
3 round(-97.342),
4 trunc(-97.342)
5 from dual;
下列哪個函數不返回結果-97?
A.ceil() B.floor() C.round() D.trunc()
22.SQL *Plus中發出的下列語句:
SQL> select ceil(256.342),
2 floor(256.342),
3 round(256.342),
4 trunc(256.342)
5 from dual;
下列哪個函數不返回結果256?
A.ceil() B.floor() C.round() D.trunc()
23.在Oracle中發出的下列查詢:
SQL> select months_between(‘15-MAR-83’,’15-MAR-97’) form dual;
Oracle返回什么?
A.14 B.-14 C.168 D.-168
24.你要在Oracle中使用日期信息的格式掩碼。下列哪種情形不適合這個格式掩碼?
A.to_date() B.to_char() C.alter session set nls_date_format D.to_number()
25.數據庫中有兩表PRODUCT與STORAGE_BOX,PRODUCT表中列出各個產品的惟一ID號、產品名和特定產品所在的箱子。另一個表中列出各個存儲箱(用數字標識)可以包含許多產品,但每個箱子只能在一個地方。下列哪個語句能正確顯示這個數據庫中所有產品ID、名稱和箱子地址?
A.select p.prod_id, p.prod_name, b.box_loc from product p, storage_box b where
p.prod_id = b.prod_id and prod_name=’WIDGET’;
B.select p.prod_id, p.prod_name, b.box_loc from product p, storage_box b where
prod_name=’WIDGET’;
C.select p.prod_id, p.prod_name, b.box_loc from product p, storage_box b where
p.stor_box_num = b.stor_box_num and prod_name=’WIDGET’;
D.select prod_id, prod_name, box_loc from product , storage_box where
stor_box_num = stor_box_num and prod_name=’WIDGET’;
26.開發報表時,要連接三個表的信息,這些表為EMP、DEPT與SALGRADE。只需要公司10級以上員工相應的員工、部門地址與工資范圍的記錄。這個查詢需要多少比較運算?
A.2 B.3 C.4 D.5
27.要連接兩個表PRODUST與STOTAGE的內容,列出所有包含產品的箱子地址。PRODUCT有三列ID、NAME與BOX#;STORAGE有兩列BOX#與LOC。下列哪個選項無法得到想要的結果?
A.select product.id, product.name, storage.loc from product, storage where product.box#=storage.box#;
B.select product.id, product.name, storage.loc from product join storage on product.box#=storage.box#;
C.select product.id, product.name, storage.loc from product natural join storage on product.box#=storage.box#;
D.select product.id, product.name, storage.loc from product natural join storage;
28.你要定義外連接,下列哪個選項正確描述了外連接語句?
A.由于外連接操作允許一個表中有NULL值,因此連接這些表時不必指定相等性比較。
B.在表A與B的外連接語句中,如果不管B表有無相應記錄,都要顯示表A的所有行,
則可以使用右外連接。
C.在表A與B的外連接語句中,如果不管A表有無相應記錄,都要顯示表B的所有行,
則可以使用左外連接。
D.盡管外連接操作允許一個表中有NULL值,但連接這些表時仍要指定相等性比較。
29.數據庫中有兩個表PRODUCT與STORAGE_BOX,表中列出各個產品的惟一ID號、產品名和特定產品所在的箱子。另一個表中列出各個存儲箱(用數字標識)可以包含許多產品,但每個箱子只能在一個地方。下列哪個語句能正確顯示這個數據庫中所有產品ID、名稱和箱子地址,不管有沒有指定存儲箱?
A.select p.prod_id, p.prod_name, b.box_loc from product p left outer join storage_box b on p.stor_bax_num = b. stor_bax_num where prod_name=’WIDGET’(+);
B.select p.prod_id, p.prod_name, b.box_loc from product p left outer join storage_box b on p.stor_bax_num = b. stor_bax_num where prod_name=’WIDGET’ ;
C.select p.prod_id, p.prod_name, b.box_loc from product p right outer join storage_box b where b.stor_bax_num = p. stor_bax_num(+) and prod_name=’WIDGET’(+);
D.select p.prod_id, p.prod_name, b.box_loc from product p full outer join storage_box b on p.stor_bax_num = b. stor_bax_num where b.stor_box_num is NULL ;
30.Oracle中發出下列命令:
SQL> select e.ename,a.street_address,a.city,a.post_code
2 from emp e,addr a
3 where e.empno = a.empno(+)
4 and a.state = ‘TEXAS’;
下列哪個選項顯示等價ANSI/ISO語句?
A.select e.ename, a.street_address, a.city, a.state, a.post_code from emp e outer join addr a on e.empno = a.empno where a.state = ‘TEXAS’;
B.select e.ename, a.street_address, a.city, a.state, a.post_code from emp e left outer join addr a on e.empno = a.empno where a.state = ‘TEXAS’;
C.select e.ename, a.street_address, a.city, a.state, a.post_code from emp e right outer join addr a on e.empno = a.empno where a.state = ‘TEXAS’;
D.select e.ename, a.street_address, a.city, a.state, a.post_code from emp e right outer join addr a where e.empno = a.empno(+) and a.state = ‘TEXAS’;
31.檢查SQL *Plus的下列輸出:
PRODUCT.ID PRODUCT.NAME BOX.LOCATION
578-X WIDGET IDAHO
TENNESSEE
456-Y WIDGET
下列哪個選項是產生這個結果的查詢類型?
A.全外連接 B.左外連接 C.右外連接 D.等連接
32.PROFITS表存儲公司不同地區、產品類型和季度的利潤信息。下列哪個SQL語句顯示不同地區、產品類型和季度的利潤的交叉表輸出?
A.select region, product_type, time, sum(profit) from profits group by region, prod_type, time;
B.select region, product_type, time from profits group by rollup(region, prod_type, time);
C.select region, product_type, time, from profits group by cube(region, prod_type, time);
D.select region, product_type, time,sum(profit) from profits group by cube(region, prod_type, time);
33.對數據庫運行下列哪個group by查詢時會從Oracle產生錯誤?
A.select deptno, job, sum(sal) from emp group by job, deptno;
B.select sum(sal), deptno, job from emp group by job, deptno;
C.select deptno, job, sum(sal) from emp;
D.select deptno, sum(sal), job from emp group by job, deptno;
34.檢查下列SQL的輸出
SQL> select a.deptno,a.job,b.loc,sum(a.sal)
2 from dmp a,dept b
3 where a.deptno = b.depton
4 group by a.deptno,a.job,b.loc
5 order by sum(a.sal);
這個查詢按哪個列的順序返回輸出?
A.A.DEPTON B.A.JOB C.B.LOC D.SUM(A.SAL)
35.要查詢的PROFITS表存儲公司不同地區、產品類型和季度的利潤信息。下列哪個SQL語句按不同地區、產品類型和季度求出平均利潤大于100000美元的利潤?
A.select region, prod_type, period, avg(profits) from profits where avg(prodit) > 100000 group by region, prod_type, period;
B.select region, prod_type, period, avg(profits) from profits where avg(prodit) > 100000 order by region, prod_type, period;
C.select region, prod_type, period, avg(profits) from profits group by region, prod_type, period having avg(prodit) > 100000;
D.select region, prod_type, period, avg(profits) from profits group by region, prod_type, period having avg(prodit) < 100000;
36.公司的員工費用應用程序有兩表,一個是EMP,包含所有員工數據,一個是EXPENSE,包含公司每個員工提交的費用票據。下列哪個查詢取得提交的費用總和超過其工資值的員工ID與姓名?
A.select e.empno, e.ename from emp e where e.sal < (select sum(x.vouch_amt) from expense x) and x.empno = e.empno;
B.select e.empno, e.ename from emp e where e.sal < (select x.vouch_amt from expense x where x.empno = e.empno);
C.select e.empno, e.ename from emp e where e.sal < (select sum(x.vouch_amt) from expense x where x.empno = e.empno);
D.select e.empno, e.ename from emp e where exists (select sum(x.vouch_amt) from expense x where x.empno = e.empno);
37.看看下列語句:
SQL> select ename
2 from emp
3 where empno in
4 ( select empno
5 from expense
6 where vouch_amt > 10000 );
下列哪個SQL語句產生與上面相同的輸出,改寫成使用運算符?
A.select e.ename from emp e where exists(select x.empno from expense x where x.vouch_amt>10000) and x.empno = e.empno;
B.select e.ename from emp e where exists(select x.empno from expense x where x.vouch_amt>10000 and x.empno = e.empno);
C.select e.ename from emp e where x.empno = e.empno and exists(select x.empno from expense x where x.vouch_amt>10000)
D.select e.ename from emp e, expense x where x.empno = e.empno and x.vouch_amt>10000 and exists(select x.empno from expense x where)
38.用下列代碼塊回答問題:
SQL> select deptno,job,avg(sal)
2 from emp
3 group by deptno,job
4 having avg(sal)>
5 ( select sal
6 from emp
7 where ename = ‘MARTIN’ );
上述語句使用下面哪種子查詢?
A.單行子查詢 B.多行子查詢 C.from子句子查詢 D.多列子查詢
39.公司銷售數據庫有兩個表,PROFITS存儲不同地區不同季度的產品銷售利潤,REGIONS存儲每個部門地區名稱、該地區總部地址和該地區副總裁姓名。下列哪個查詢取得SMITHERS、FUJIMORI與LIKKARAJU領導的地區的玩具銷售利潤?
A.select sum(profit) from profits where region in (select region froms regions where reg_head in (‘SMITHERS’, ‘FUJMORI’, ‘LAKKARAJU’)) and product =’TOYS’;
B.select sum(profit) from profits where region like (select region froms regions where reg_head in (‘SMITHERS’, ‘FUJMORI’, ‘LAKKARAJU’) and product =’TOYS’ );
C.select sum(profit) from profits where region = (select region froms regions where reg_head in (‘SMITHERS’, ‘FUJMORI’, ‘LAKKARAJU’)) and product =’TOYS’;
D.select sum(profit) from profits where region is (select region froms regions where reg_head in (‘SMITHERS’, ‘FUJMORI’, ‘LAKKARAJU’)) and product =’TOYS’;
40.下列代碼塊顯示的查詢包含一個子查詢:
SQL> select dname, avg(sal) as dept_avg
2 from emp, dept
3 where emp.deptno = dept.deptno
4 group by dname having avg(sal) >
5 ( select avg(sal)*1/4
6 from emp,dept
7 where emp.deptno = dept.deptno )
8 order by avg(sal);
可以用下列哪個子句重新定義這個查詢,刪除子查詢與主查詢中組函數執行的重復?
A.group by B.order by C.with D.having
41.用下列代碼塊回答問題:
SQL> select e.deptno,e.ename,e.job,e.sal
2 from emp e
3 where e.sal =
4 ( select max(e2.sal)
5 from emp e2
6* where nvl(e.deptno,99) = nvl(e2.deptno,99));
DEPTNO ENAME JOB SAL
30 BLAKE MANAGER 2850
10 CLARK MANAGER 2450
20 SCOTT ANALYST 3000
KING PRESIDENT 5000
20 FORD ANALYST 3000
要在上述返回集的DEPTNO列中顯示99,可以用下列哪個SQL語句?
A.select nvl(e.deptno,99), e.ename, e.sal from emp e where (e.deptno, e.sal) = (select max(e2.sal) from emp e2 where nvl(e.dept, 99) = nvl(e2.deptno, 99));
B.select nvl(e.deptno,99), e.ename, e.sal from emp e where e.sal = (select max(e2.sal) from emp e2 where nvl(e.dept, 99) = nvl(e2.deptno, 99));
C.select nvl(e.deptno,99), e.ename, e.sal from emp e where (e.deptno, e.sal) = (select e2.deptno,max(e2.sal) from emp e2 where nvl(e.dept, 99) = nvl(e2.deptno, 99));
D.select nvl(e.deptno,99), e.ename, e.sal from emp e where (e.deptno, e.sal) = (select e2.deptno,max(e2.sal) from emp e2 where nvl(e.dept, 99) = nvl(e2.deptno, 99) group by e1.deptno);
42.公司銷售數據庫包含一個PROFITS表,按產品名、銷售地區和季度列出利潤信息。如果要取得公司五個最暢銷產品清單,可以用下列哪個SQL語句:
A.select p.prod_name, p.profit from (select prod_name, profit from profits order by profit desc) where rownum <= 5;
B.select p.prod_name, p.profit from (select prod_name, sum(profit) from profits group by prod_name order by sum(profit) desc) subq where p.prod_name = subq.prod_name;
C.select p.prod_name, p.profit from (select prod_name, sum(profit) from profits group by prod_name order by sum(profit) desc) where rownum <= 5;
D.select p.prod_name, p.profit from (select prod_name, sum(profit) from profits
order by sum(profit) desc) where rownum <= 5;
43.檢查下列代碼段中的腳本dates.sql:
accept v_hiredate prompt ‘enter hire date => ’
select empno, ename, job
from emp
where trunc(hiredate) = trunc(‘&v_hiredate’);
為了使腳本正確工作,要改變哪個方面?
A.變量v_hiredate應變成接受DATE信息。 B.查詢中的trunc()函數應刪除。
C.accept命令中的prompt子句是多余的。 D.這個腳本很好。
44.Oracle中要生成數據庫表,下列哪個選項是無效表生成的語句?
A.create table cats(c_name varchar2(10), c_weight number, c_owner varchar2(10));
B.create table my_cats as select * from cats where owner = ‘ME’;
C.create global temporary table temp_cats(c_name varchar2(10), c_weight number, c_owner varchar2(10));
D.create table 51cats as select c_name, c_weight from cats where c_weight > 5;
45.試圖在Oracle生成表時遇到下列錯誤:ORA-00955-name is already used by existing object。下列哪個選項無法糾正這個錯誤?
A.以不同的用戶身份生成對象。 B.刪除現有同名對象
C.改變生成對象中的列名。 D.更名現有同名對象。
46.SALES表中的PROFITS列聲明為NUMBER(10, 2)。下列哪個值無法在這個列中存儲?
A.5392845.324 B.871039453.1 C.75439289.34 D.60079829.25
47.員工KING于1981年11月17日聘用,你對Oracle數據庫發出下列查詢:select vsize(hiredate) from emp where ename = ‘KING’。下列哪個選項是返回的值?
A.4 B.7 C.9 D.17
48.SALES表中將PRODUCT_NAME列定義為CHAR(40)。后面要在表中增加一行,PRODUCT_NAME值為CAT_TOYS。然后發出下列命令:select vsize(product_name) from sales。下列哪個選項是返回的值?
A.8 B.12 C.40 D.4000
49.JOB表有三個列JOB_NAME、JOB_DESC和JOB_WAGE。用下列命令在JOB_DESC表中插入新行:
SQL> insert into job(job_name, job_desc)
2 values (‘LUCKEY’, ‘MAKES COFFEE’);
之后查詢這個表時得到的結果:
SQL> select * from job where job_name = ‘LUCKEY’;
JOB_NAME JOB_DESC JOB_WAGE
LUCKEY MAKES COFFEE 35
數據是如何填信JOB_WAGE表的?
A.JOB表中的LACKEY行已經存在,JOB_WAGE設置為35。
B.生成表時JOB_WAGE列定義的default子句指定插入行時的值。
C.insert語句的values子句包含隱藏值,在插入行時加入。
D.惟一理由是對JOB表發出的后一個update語句增加了JOB_WAGE值
50.刪除Oracle數據庫中父/子關系中的父表。在刪除父表時下列哪個對象不會刪除?
A.相關約束 B.子表 C.相關觸發器 D.相關索引
二、問答題(每題10分)
1.什么是事務、特點、在Oracle中具體的應用[.?事務是數據庫中最小的一個邏輯工作單元。
特點:ACID,分別指
事務的原子性:就是事務所包含的數據庫操作要么都做,要么都不做;
事務的一致性:是事務原子性的體現,事務所對應的數據庫操作要么成功要么失敗沒有第三種情況。事務不管是提交成功與否都不能影響數據庫數據的一致性狀態;
事務的隔離性:事務對數據的操作不能夠受到其他事務的影響;
事務的持續性:也就是說事務對數據的影響是永久的。
在oracle中已commit或rollback作為上一個事務的結束標志及下一個新事物開始的標志。
]?
事務(Transaction)是并發控制的基本單位。所謂的事務,它是一個操作序列,這些操作要么都執行,要么都不執行,它是一個不可分割的工作單位。事務是數據庫維護數據一致性的單位,在每個事務結束時,都能保持數據一致性。
事務的特點:
原子性:就是事務所包含的數據庫操作要么都做,要么都不做;?
一致性:是事務原子性的體現,事務所對應的數據庫操作要么成功要么失敗沒有第三種情況。事務不管是提交成功與否都不能影響數據庫數據的一致性狀態;?
隔離性:事務對數據的操作不能夠受到其他事務的影響;?事務的持續性:也就是說事務對數據的影響是永久的。
在oracle中已commit或rollback作為上一個事務的結束標志及下一個新事物開始的標志。
2.oracle中如何獲取系統時間?
select sysdate ,systimestamp from dual
3. Truncate與 delete的區別?
① Delete from 表名稱 where 列名稱 = 值;可以通過日志文件恢復;(DML)
Commit; --提交 Rollback;–回滾
② Truncate table表名; 整表刪除僅刪除表中數據,刪除的數據不能恢復;(DDL)
1.DDL: 針對表來定義的,CREATE(創建)、ALTER(更改)、DROP、Truncate (刪除)
2.DML: 針對表中的數據進行操作的,INSERT(插入)、SELECT(查詢)、UPDATE(修改)、DELETE(刪除)
(DQL)數據查詢:SELECT(查詢),經常會放置在DML中
5.Oracle使用什么語句給用戶分配權限?
Grant 權限 to 用戶名;
總結
以上是生活随笔為你收集整理的数据库笔试题 (3)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux快捷键列表,全面总结Linux
- 下一篇: 指针的基本操作(10.1 Basic P