[英]Add foreign key inside my C# code for Sqlite
我已經創建了一個Sqlite數據庫,但是當我進入Xamarin.forms時,我發現必須為Sqlite數據庫中的每個表創建一個類。
我有3張桌子:
User
有3列UserID
(PK), Mail
(唯一的),密碼 Ticket
TicketID
(PK), Name
, Description
, TicketValue
UserTickets
與4列UserID
(FK), TicketID
(FK), TicketValue
(FK) 在C#中,我可以處理主鍵和唯一使用
[PrimaryKey, Unique]
像上面這樣
但是我不知道如何設置外鍵。
我正在使用Nuget Sqlite
聽起來您正在嘗試使用SQLite中的外鍵創建表。 如果是正確的話,應該會有所幫助。
在表創建過程中的SQLite中,您可以在查詢結束時設置外鍵引用。 例如,用戶票證表創建查詢將如下所示。
CREATE TABLE `UserTickets` (
`UserID` INTEGER,
`TicketID` INTEGER,
`TicketValue` INTEGER,
FOREIGN KEY(`UserID`) REFERENCES `User`(`UserID`)
FOREIGN KEY(`TicketID`) REFERENCES `Ticket`(`TicketID`)
FOREIGN KEY(`TicketValue`) REFERENCES `Ticket`(`TicketValue`)
);
現在,每次創建數據庫連接時都必須打開外鍵,這一點很重要。 SQLite不會為您執行此操作,因此,如果添加外鍵約束(如“ ON DELETE CASCADE”),請確保在連接字符串中指定了它
例:
SQLiteConnection conn = new SQLiteConnection("Data Source = [Your DB Path];foreign keys=true;");
最后說明:您將需要調整表創建查詢以添加任何增量或唯一約束。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.