資料庫練習題一

2021-10-04 13:50:41 字數 1300 閱讀 2925

有關聯式資料庫:

職工關係 employee(職工號eno,職工名ename)

工作關係 works(職工號eno,公司號cno,工資wage)

公司關係 company(公司號cno,公司名cname)

假設職工可以在多個公司兼職,請用關係代數表示式寫出至少在公司號為』c2』和』c5』公司兼職的職工名。

1.基於除法:

關係代數:

∏ename((∏cno, eno (works) ⌯ ∏cno (σcno=』c2』 ∨ cno=』c5』( company)))∞ employee)
sql語句:

select ename from employee where not exist(

select * from company where cno in (『c2』, 『c5』) and not exist(

select * from works where works.cno = company.cno and

works.eno = employee.eno))

2. 基於自身連線

關係代數:

∏ename((∏1(σ1=4  ∧ 2=』c2』 ∧ 5=』c5』 (works×works))) ∞ employee)
sql語句:

select ename from employee, works w1, works w2 where

w1.eno =w2.eno and w1.eno=employee.eno and w1.cno=』c2』 and w2.cno=』c5』

3. 基於集合運算

關係代數:

πename ((σcno =' c2' (works) ∩ σcno =『c5』(works)) ∞ employee)
sql語句:

select ename from employee, (

select eno from works where cno = 『c2』 intersect

select eno from works where cno = 『c5』) as dj

where employee.eno = dj.eno

資料庫練習題

一 設有一資料庫,包括四個表 學生表 student 課程表 course 成績表 score 以及教師資訊表 teacher 四個表的結構分別如表1 1的表 一 表 四 所示,資料如表1 2的表 一 表 四 所示。用sql語句建立四個表並完成相關題目。表1 1資料庫的表結構 表 一 student...

資料庫練習題

1 檢視原始資料庫information schema中的表,並顯示出views表的字段結構屬性資訊 show databases use information schema desc views 2 建立乙個offcn資料庫,並建立乙個students表,欄位為id,name,age,phone...

資料庫練習題5

1 事務的原子性是指 a 事務中包括的所有操作要麼都做,要麼都不做 b 事務一旦提交,對資料庫的改變是永久的 c 乙個事務內部的操作及使用的資料對併發的其他事務是隔離的 d 事務必須是使資料庫從乙個一致性狀態變到另乙個一致性狀態 2 事務的一致性是指 a 事務中包括的所有操作要麼都做,要麼都不做 b...