Visual Studio 2005不提供用於在SQL Server CE數據庫中的表之間創建關係的界面(我正在使用版本3.0),並且據我所知,您無法使用Management Studio打開Compact Edition DB。有任何想法嗎?如何在SQL Server CE(精簡版)數據庫中創建外鍵關係?
回答
不幸的是,目前沒有對SQL Server CE中的表之間建立關係的設計器支持(與SQL Server 2005不同)。要建立關係,你需要使用SQL命令,如:
ALTER TABLE Orders
ADD CONSTRAINT FK_Customer_Order
FOREIGN KEY (CustomerId) REFERENCES Customers(CustomerId)
如果你正在做CE的發展,我會建議這個常見問題:
編輯:在Visual Studio 2008中,這是現在可以做在GUI上右鍵單擊您的表格。
您需要創建一個查詢(在Visual Studio中,數據庫連接上單擊鼠標右鍵 - >新建查詢),並執行以下SQL:
ALTER TABLE tblAlpha
ADD CONSTRAINT MyConstraint FOREIGN KEY (FK_id) REFERENCES
tblGamma(GammaID)
ON UPDATE CASCADE
要驗證您的外鍵的創建,執行下面的SQL:
SELECT * FROM INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS
貸到E詹森(http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=532377&SiteID=1)
Visual Studio 2008中確實有一個設計師,允許你添加FK的。只需右鍵單擊表格...表格屬性,然後進入「添加關係」部分。
HTH
我相信我在使用VS 2005時遇到此問題。很高興知道你現在可以通過VS 2008中的UI來完成它! – 2009-08-11 16:27:38
Alan說他有設計師支持是正確的。當他暗示你不能選擇外鍵表時,Rhywun是不正確的。他的意思是,在用戶界面中,外鍵表格下拉顯示爲灰色 - 這意味着他沒有右鍵單擊正確的表格來添加外鍵。
總之,右擊foriegn鍵表,然後通過'Table Properties'>'Add Relations'選項選擇相關的主鍵表。
我已經做了很多次,它的工作原理。
感謝羅布,這對我來說是訣竅。 – Spidey 2009-12-16 13:16:29
create table employee
(
empid int,
empname varchar(40),
designation varchar(30),
hiredate datetime,
Bsalary int,
depno constraint emp_m foreign key references department(depno)
)
我們應該有一個主鍵來創建兩個或多個表之間的外鍵或關係。
我知道這是一個「很長的時間」,因爲這個問題首次被問到。以防萬一,如果它幫助某人,
MS通過SQL Server Compact Tool Box(https://sqlcetoolbox.codeplex.com/)很好地支持添加關係。只需安裝它,然後您就可以選擇使用服務器瀏覽器窗口連接到壓縮數據庫。右鍵點擊主表,選擇「表格屬性」。您應該有以下窗口,其中包含「添加關係」選項卡,允許您添加關係。
Walkthrough: Creating a SQL Server Compact 3.5 Database
要創建在前面的過程
- 在服務器資源管理器/數據庫資源管理器,展開表中創建的表之間的關係。
- 用鼠標右鍵單擊訂單表,然後單擊表屬性。
- 單擊添加關係。
- 在關係名稱框中鍵入FK_Orders_Customers。
- 在「外鍵表列」列表中選擇CustomerID。
- 單擊添加列。
- 點擊添加關係。
- 單擊確定以完成該過程並在 數據庫中創建關係。
- 再次單擊確定關閉表格屬性對話框。
- 1. 如何在vs2010中創建/添加SQL Server精簡版數據庫?
- 2. SQL Server精簡版 - 創建數據庫表
- 3. SQL Server CE中的數據分頁(精簡版)
- 4. SQL Server幫助創建外鍵關係
- 5. 在SQL CE(精簡版)版本3.5
- 6. 創建與外部SQL Server數據庫的關係
- 7. SQL Server 2008中兩個數據庫之間的外鍵關係
- 8. SQL Server數據庫中的未定義關係(外鍵)
- 9. 在數據庫中創建外鍵關係
- 10. Sql Server精簡版3.5:數據是否保存在數據庫文件中?
- 11. 加密SQL Server精簡版
- 12. iBatis.Net SQL Server精簡版3.5
- 13. SQL Server精簡版4 - AccessViolationException
- 14. sql server精簡版功能
- 15. 如何在SQL Server中創建數據庫的數據庫圖
- 16. 如何在SQL-Server上創建關係數據日誌?
- 17. 如何在Sql Server精簡版中使用LIKE參數
- 18. SQL Compact(CE)與創建外鍵問題
- 19. 如何在SQL Server Management Studio中管理SQL CE數據庫?
- 20. 如何在SQL Server Management Studio中管理SQL CE數據庫?
- 21. 創建新外鍵(SQL Server)
- 22. 在SQL Server Management Studio中創建外鍵
- 23. 未創建數據庫(sql ce)表
- 24. SQL Server CE和C#;填充從SQL Server CE數據庫
- 25. SQL Server:通過查詢創建數據庫關係圖
- 26. 如何在SQL Server 2014上創建SQL Server 2012數據庫?
- 27. SQL Server中的數據庫表關係
- 28. 在SQL Server 2005中創建數據庫
- 29. 在SQL Server中創建數據庫
- 30. 在SQL Server中創建數據庫
我相信你遺漏了CONSTRAINT關鍵字。至少在SQL Server CE 3.5 ... ALTER TABLE Orders ADD CONSTRAINT FK_Customer_Order FOREIGN KEY(CustomerId) 參考客戶(客戶ID) – Edo 2010-01-03 23:25:31