⑴ sql表與表之間的關系怎麼建啊
你是問的用SQL語言還是不用SQL語言編寫。
這個建立表的關系可以直接在菜單欄上找到的,好像是「工具」那一欄,在下拉菜單中選擇「關系」,就可以在直接通過拖動來建立表之間的關系。
⑵ sql三個表之間如何關聯。
用兩個
外鍵
關聯。
比如A,B,C三表進行關聯,可以在C表中定義兩個外鍵c1、c2,分別連接到A表和B表的
主鍵
a1、b2上,這樣只要在查詢的時候進行三表
聯合查詢
,連接語句為:where
C.c1=A.a1
AND
C.c2=B.b2;
N表查詢同上的道理,添加N-1個外鍵就可以。
⑶ sql sever 中如何在兩個表之間建立參照關系
sql server中表之間的關聯關系是通過建立外鍵來實現的。
創建SQL的主鍵和外鍵約束的方法:
create table Student --建表格式:create table 自定義的表名
( --欄位名一般為有一定意義的英文
StudentName nvarchar(15), -- 格式:欄位名類型()括弧裡面的是允許輸入的長度
StudentAge int, --int型的後面不需要接長度
StudentSex nvarchar(2) --最後一個欄位後面不要逗號
)
--在創建表時就可以對欄位加上約束:
create table Student
(
StudentNo int PRIMARY KEY IDENTITY(1,1), --加主鍵約束,還有標識列屬性(兩者構成實體完整性)
StudentName nvarchar(15) not null, --加非空約束,不加"not null" 默認為:可以為空
StudentSchool text(20) FOREIGN KEY REFERENCES SchoolTable(SchoolName), --加外鍵約束,格式:FOREIGN KEY REFERENCES 關聯的表名(欄位名)
StudentAge int DEFAULT ((0)), --加默認值約束
StudentSex nvarchar(2) CHECK(StudentSex=N'男' or StudentSex=N'女') --加檢查約束,格式:check (條件表達式)
)
--外鍵約束:
alter table 表名
add constraint FK_欄位名--"FK"為外鍵的縮寫
foreign key (欄位名) references 關聯的表名(關聯的欄位名) --注意'關聯的表名'和'關聯的欄位名'
⑷ SQL 資料庫表與表之間數據關聯的一些概念問題。
1.資料庫是如何通過 ID 來查到 Loginfo 的 ?
select Loginfo from A inner join b on a.id=b.logid where id=?
2.如果要通過 ID 查詢 Loginfo 應該用什麼語句資料庫會返回:
這樣的結果呢?
select ID,Name,Address,Phone,Logid,Loginfo
from A inner join b on a.id=b.logid where id=?
3.為什麼要做很多張表相互關聯?直接把所有信息都做成一張表不好嗎?
這個建幾張表看情況的。 比如用戶表 很多地方要用到,那麼就得單獨出來建一張表。其他表只要存用戶ID 和用戶表關聯 就能找到用戶信息。
⑸ 在SQL中,表與表之間的連接有哪3種(___)。
left 查詢學生的成績,有一個學生缺考了,但是還是要把他顯示在成績單中,這個時候學生表是左邊表,成績表是右邊表,關聯on s.studentNo = sc.studentNo
right 其實你也可少使用這個,你可以認為它就是左關聯,左右表換個位置。
inner 內關聯,左右必須同時滿足的才可以顯示,等同於 select * from a , b where a.id = b.sid
full 外關聯,左右不管是否滿足都顯示出來,可以自己試一下。
⑹ SQL資料庫裡面怎樣設置表與表之間的關聯
設置關聯的兩表或者多表、通過外鍵關聯、外鍵欄位是從表中的欄位、外鍵(foreign
key)欄位需要在主表做主鍵(primary
key)、
比如
學生表(學號
主鍵,姓名)
主表
課程表(課號
主鍵,課名)
主表
選了表(學號
外鍵,
課號
外鍵,成績)
從表
這樣三個表就關聯了、記住建表順序、先主表、再從表
然後可以使用代碼或者圖形界面管理器創建外鍵、創建完就關聯了
外鍵的取值必須是主鍵的值
⑺ SQL資料庫中表與表之間的關聯怎麼建立
1、在資料庫窗口中,單擊「創建」中「表格」中的「表設計」,打開表設計窗口。
⑻ 如何設置SQL資料庫表與表的關聯關系
如果是 父子關系, 或者 一對多 關系。
可以通過 創建外鍵的方式, 在 父表 與 子表之間, 創建一個關聯關系。
例如:
-- 創建測試主表. ID 是主鍵.
CREATE TABLE test_main (
id INT NOT NULL,
value VARCHAR(10),
PRIMARY KEY(id)
);
-- 創建測試子表.
CREATE TABLE test_sub (
id INT NOT NULL,
main_id INT ,
value VARCHAR(10),
PRIMARY KEY(id)
);
-- 插入測試主表數據.
INSERT INTO test_main(id, value) VALUES (1, 'ONE');
INSERT INTO test_main(id, value) VALUES (2, 'TWO');
-- 插入測試子表數據.
INSERT INTO test_sub(id, main_id, value) VALUES (1, 1, 'ONEONE');
INSERT INTO test_sub(id, main_id, value) VALUES (2, 2, 'TWOTWO');
SQL> -- 創建外鍵(默認選項)
SQL> ALTER TABLE test_sub ADD CONSTRAINT main_id_cons FOREIGN KEY (main_id) REFERENCES test_main;
Table altered.
SQL>
SQL> -- 測試刪除主表數據. 將出錯 ORA-02292: 違反完整約束條件
SQL> DELETE
2 test_main
3 WHERE
4 ID = 1;
DELETE
*
ERROR at line 1:
ORA-02292: integrity constraint (HR.MAIN_ID_CONS) violated - child record found
⑼ sql語句:一個表和另外兩個表的關聯語句
1.
select
*
from
a
inner
join
b
on
a.bid=b.id
inner
jion
c
on
a.cid=c.id
2.
select
*
from
a,b,c
where
a.bid=b.id
and
a.cid=c.id
1.
如果你是完成兩個表的關聯,那直接查詢就可以了;
2.
如果你要完成一個表同時查詢,就可以使用給表起別名的辦法。
3.
兩個不同的表的關聯查詢如下:
select
*
from
a,b
where
條件
4.
同一個表的關聯查詢:
select
*
from
a
A,
where
a.*=A.*