6

ここで何か不足していますか?VS2010 のデータベース プロジェクトで新しいテーブルを作成するための唯一のオプションは次のようです。

テーブル オブジェクトをファイルとして作成し、すべての制約 (デフォルト) を個別のファイルとして作成し、各インデックスを個別のファイルとして作成し、主キーを個別のファイルとして作成します。

または

SSMS のテーブル デザイナーを使用してテーブル スキーマ全体を作成し、スキーマ比較ツールを使用して、テーブルの要素ごとに SQL ステートメントの単一のモノリシック ファイルを作成し、コードの各ブロックを VS で新しく作成されたファイルにコピーします。

この質問は2年前に尋ねられたもので、答えが変わったことを願っています。見落としていた VS2010 のデータベース プロジェクト用の隠しテーブル デザイナーがあることを教えてください。

4

5 に答える 5

3

私は1つがないと確信しています!

新しいオブジェクトの作成スクリプト ファイルを作成および変更するためにテーブル デザイナーが必要な理由をお尋ねしてもよろしいですか? デザイナーが提供するものの、これがあなたに与えないものはありますか?

于 2010-09-04T23:36:55.633 に答える
1

VS2010でデータベースプロジェクトを使用する方法は次のとおりです。

  1. SQL ServerManagementStudioですべてを作成します。
  2. それを私のデータベースプロジェクトに同期します。
  3. 何かを変更する必要がある場合は、SQL ServerManagementStudioで変更してください。
  4. スキーマ比較を使用して、データベースプロジェクトを同期します。
于 2011-04-14T12:43:54.113 に答える
1

VS 11 Beta にデザイナーが含まれるようになったことに気付きました。

于 2012-05-29T15:25:09.930 に答える
0

うわー...これまで誰も時間を割いてこれに答えなかったなんて信じられない. 以下は、いくつかの単純な制約を含むテーブル作成スクリプトのサンプルです。

    CREATE TABLE [User]
(
    UserID              INT             NOT NULL    IDENTITY (1,1), 
    UserName            NVARCHAR(20)    NOT NULL,
    UserPassword        NVARCHAR(20)    NOT NULL,
    EmailAddress        NVARCHAR(50)    NOT NULL,
    Location            NVARCHAR(100),
    MobileNumber        VARCHAR(10),
    CreatedDate         DATETIME        NOT NULL    
        CONSTRAINT User_CreatedDate_DF  DEFAULT                 (GETDATE()),
        CONSTRAINT User_UserID_PK       PRIMARY KEY CLUSTERED   (UserID),
        CONSTRAINT User_UserName_UQ     UNIQUE                  (UserName),
        CONSTRAINT User_EmailAddress_CK CHECK                   (EmailAddress LIKE '%@%.%'),
        CONSTRAINT User_MobileNumber_CK CHECK                   (MobileNumber LIKE '[2-9][0-9][0-9][2-9][0-9][0-9][0-9][0-9][0-9][0-9]')
)

関数を使用してチェック制約に埋め込むことができますが、これも単純な例です。

于 2011-03-08T06:52:34.640 に答える
0

ここでコメントしたように、VS2010 リファレンスにはTable Designer、このドキュメントに a が存在すると記載されています。

しかし、どういうわけか、どのようなプロジェクト (サーバー プロジェクト 2008/2005、データベース プロジェクト 2008/2005 ) を作成しても、表示されませんTable Designer

于 2012-08-30T19:40:28.447 に答える