48

Visual Studio 2005 は、SQL Server CE データベース (私はバージョン 3.0 を使用しています) 内のテーブル間の関係を作成するためのインターフェイスを提供しておらず、私の知る限り、Management Studio を使用して Compact Edition DB を開くことはできません。何か案は?

4

7 に答える 7

70

残念ながら、現在、SQL Server CE でテーブル間の関係を構築するためのデザイナー サポートは (SQL Server 2005 とは異なり) ありません。リレーションシップを構築するには、次のような SQL コマンドを使用する必要があります。

ALTER TABLE Orders
ADD CONSTRAINT FK_Customer_Order
FOREIGN KEY (CustomerId) REFERENCES Customers(CustomerId)

CE 開発を行っている場合は、次の FAQ をお勧めします。

編集: Visual Studio 2008 では、テーブルを右クリックして GUI で実行できるようになりました。

于 2008-09-05T20:29:19.893 に答える
44

Visual Studio 2008には、FK を追加できるデザイナーがあります。テーブルを右クリックして... テーブルのプロパティを選択し、「リレーションの追加」セクションに移動します。

于 2009-03-16T15:28:21.837 に答える
7

クエリを作成し (Visual Studio で DB 接続を右クリック -> [新しいクエリ] を選択)、次の 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 Jensen の功績 ( http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=532377&SiteID=1 )

于 2008-09-05T20:30:39.530 に答える
3

デザイナーのサポートがあるというアランの言葉は正しい。Rhywun は、外部キー テーブルを選択できないことを示唆しているため、正しくありません。彼が言いたいのは、UI で外部キー テーブルのドロップダウンがグレー表示されているということです。つまり、外部キーを追加する正しいテーブルを右クリックしていないということです。

要約すると、外部キー テーブルを右クリックし、[テーブル プロパティ] > [関係の追加] オプションを使用して、関連する主キー テーブルを選択します。

私はそれを何度もやりましたが、うまくいきます。

于 2009-08-11T07:24:20.490 に答える
1
create table employee
(
   empid int,
   empname varchar(40),
   designation varchar(30),
   hiredate datetime, 
   Bsalary int,
   depno constraint emp_m foreign key references department(depno)
)

外部キーまたは 2 つ以上のテーブル間の関係を作成するには、主キーが必要です。

于 2013-06-03T10:32:08.997 に答える
1

この質問が最初に出されて以来、「非常に長い時間」であることは承知しています。万が一、誰かのお役に立てれば、

リレーションシップの追加は、SQL Server Compact Tool Box ( https://sqlcetoolbox.codeplex.com/ )を介して MS によって十分にサポートされています。インストールするだけで、サーバー エクスプローラー ウィンドウを使用してコンパクト データベースに接続するオプションが表示されます。プライマリ テーブルを右クリックし、[テーブル プロパティ] を選択します。次のウィンドウが表示されます。このウィンドウには、関係を追加できる [関係の追加] タブが含まれています。

[リレーションの追加] タブ - SQL Server Compact ツール ボックス

于 2014-01-06T02:48:05.853 に答える