2017-04-08 10 views
0

私は自分のaspアプリケーションで新しいテーブルを作成しようとしています。私にとっては、主キー構文の使い方を理解できません。私は最初にそれを作成する方法を工夫しています。 は、誰かがクエリでいただきました!間違って私を見ることができます:データベースにテーブルを作成する

CREATE EXTERNAL TABLE [dbo].[AspNetUserTestScores] 
( 
    [UserName]   NVARCHAR (256) NOT NULL, 
    [MomentsAndEnergyTestScore] NVARCHAR (256) NULL, 
    [MotionInACircleTestScore] NVARCHAR (256) NULL, 
    [UniversalGravtationTestScore] NVARCHAR (256) NULL, 
    [CapacitanceTestScore] NVARCHAR (256) NULL, 
    [ElectricFieldsTestScore] NVARCHAR (256) NULL, 
    [MagneticFieldsTestScore] NVARCHAR (256) NULL, 
    [ElectronsAndNucleiTestScore] NVARCHAR (256) NULL, 
    [ParticlePhysicsTestScore] NVARCHAR (256) NULL, 
    [NuclearDecayTestScore] NVARCHAR (256) NULL, 
    [GasLawsAndKineticTheoryTestScore] NVARCHAR (256) NULL, 
    [InternalEnergyAbsoluteZeroAndChangeOfStateTestScore] NVARCHAR (256) NULL, 
    [SpecificHeatCapacityTestScore] NVARCHAR (256) NULL, 
    [AstrophysicsTestScore] NVARCHAR (256) NULL, 
    [CosmologyTestScore] NVARCHAR (256) NULL, 
    [OscillationsTestScore] NVARCHAR (256) NULL, 
    PRIMARY KEY [UserName], 
) 


WITH 
( 
    LOCATION = '/folder/file', 
    DATA_SOURCE = [DataSource1], 
    FILE_FORMAT = [FileFormat1] 
) 

おかげ

+1

私は本当にあなたの質問が何かを把握することはできません。 –

+0

クエリは機能しません。なぜなら、エラーがプライマリキーを囲んでいることを知っています。また、IDが ( LOCATION = '/ folder/file'、 DATA_SOURCE = [DataSource1]、 FILE_FORMAT = [FileFormat1] ) ' –

答えて

0

documentationが完了していないようですので、これは少し投機的です。特に、に適用されるため、column_definitionの構文は定義されていません。

構文図には、特に制約に関するものはありません。 CREATE TABLEsyntaxとの比較は、計算カラムも明示的制約もカラムセットも外部バージョンのパーティションもありません。

文書には、DEFAULTが許可されていないことが明示されています。私は制約が許されていないと思うので、構文エラーが出ているのです。明示的な制約が構文の一部でないように見える場合に、インライン制約が許可されていれば驚くでしょう。

しかし、column_definitionは、インラインPRIMARY KEYという制約があるように見えます。そのため、ドキュメントが不完全であると思います。

0

私は、あなたが主キーの名前を付けていないということを推測しています。プライマリキーが(UserName)に基づいているフィールドを示していますが、実際のプライマリキーの名前は付けていません。だから私は、構文のわからないんだけど、私はあなたがこのような何かに行を変更する必要があると思うだろう:

pk_UserName PRIMARY KEY [ユーザー名]

あなたはおそらくもでカンマは必要ありません行末。

関連する問題