sql資料庫高手幫忙

2022-02-21 08:07:04 字數 2849 閱讀 3300

1樓:

alter table [dbo].[room] with nocheck add

constraint [pk_room] primary key clustered

([rno]

) on [primary]

'''以上是rno是room的key

alter table [dbo].[pr] add

constraint [fk_pr_person] foreign key

([pno]

) references [dbo].[person] (

[pno]

),constraint [fk_pr_room] foreign key

([rno]

) references [dbo].[room] (

[rno]

)'''以上是表pr中rno,rname合為主鍵,各自為外來鍵

表pr中的rno,rname,各自為外來鍵的意思是:表pr的pno是person表pno主鍵的外來鍵,表pr的rno是表room主鍵rno的外來鍵.

以下為整個資料庫的生成檔案:

if exists (select * from dbo.sysobjects where id = object_id(n'[dbo].[fk_pr_person]') and objectproperty(id, n'isforeignkey') = 1)

alter table [dbo].[pr] drop constraint fk_pr_person

goif exists (select * from dbo.sysobjects where id = object_id(n'[dbo].[fk_pr_room]') and objectproperty(id, n'isforeignkey') = 1)

alter table [dbo].[pr] drop constraint fk_pr_room

goif exists (select * from dbo.sysobjects where id = object_id(n'[dbo].[person]') and objectproperty(id, n'isusertable') = 1)

drop table [dbo].[person]

goif exists (select * from dbo.sysobjects where id = object_id(n'[dbo].[pr]') and objectproperty(id, n'isusertable') = 1)

drop table [dbo].[pr]

goif exists (select * from dbo.sysobjects where id = object_id(n'[dbo].[room]') and objectproperty(id, n'isusertable') = 1)

drop table [dbo].[room]

gocreate table [dbo].[person] (

[pno] [int] not null ,

[pname] [char] (10) collate chinese_prc_ci_as null ,

[page] [int] null

) on [primary]

gocreate table [dbo].[pr] (

[pno] [int] not null ,

[rno] [int] not null ,

[date] [datetime] null

) on [primary]

gocreate table [dbo].[room] (

[rno] [int] not null ,

[rname] [char] (10) collate chinese_prc_ci_as null ,

[rarea] [int] null

) on [primary]

goalter table [dbo].[person] with nocheck add

constraint [pk_person] primary key clustered

([pno]

) on [primary]

goalter table [dbo].[pr] with nocheck add

constraint [pk_pr] primary key clustered

([pno],

[rno]

) on [primary]

goalter table [dbo].[room] with nocheck add

constraint [pk_room] primary key clustered

([rno]

) on [primary]

goalter table [dbo].[pr] add

constraint [fk_pr_person] foreign key

([pno]

) references [dbo].[person] (

[pno]

),constraint [fk_pr_room] foreign key

([rno]

) references [dbo].[room] (

[rno])go

2樓:匿名使用者

設f是基本關係r的一個或一組屬性,但不是關係r的碼,k是基本關係s的主碼,如果f與k相對應,稱f是r的外碼.稱基本關係r為參照關係,基本關係s為被參照關係.

也就是說person,room與pr分別存在著引用的關係,即pr引用了關係person,room,表pr中的rno,rname屬性的取值要參照person,room關係的屬性值

sql資料庫時提示物件名無效,SQL資料庫時提示物件名 XXX 無效

原因一 新建的資料庫,沒有將初始資料匯入到新庫裡。解決方法 資料庫做了遷移後,一般會進行匯入 還原資料的過程,在這個過程中,要注意新資料庫的完整物件名與原來是一致的。比如,您的舊資料庫名叫 db1 舊資料庫使用者是 dbuser1,現在要遷移到新的資料庫上,新資料庫名是 db2,新資料庫使用者是 d...

SQL資料庫練習題,急求SQL資料庫練習題

1.sql server 2000是典型的關係型資料庫產品。1 2.在一臺計算機上可以同時執行多個版本的sql server。1 3.在sql server中日誌檔案是維護資料庫完整性的重要工具。0 4.在定義資料表時,定義某列為標識列的關鍵字是identity。1 5.浮點資料型別的優點是能夠儲存...

如何畫資料庫ER圖,怎麼把SQL資料庫畫成ER圖

構成e r圖的基本要素是實體型 屬性和聯絡,其表示方法為 實體型 entity 用矩形表示,矩形框內寫明實體名。屬性 attribute 用橢圓形表示,並用無向邊將其與相應的實體連線起來 比如學生的姓名 學號 性別 都是屬性。聯絡 relationship 用菱形表示,菱形框內寫明聯絡名,並用無向邊...