Sql 在数据库中创建表
我正试图在我的asp应用程序中创建一个新表,但出于对我的热爱,我无法确定如何使用主键语法。首先,我正在尝试如何创建它。 有人能告诉我这个问题出了什么问题吗Sql 在数据库中创建表,sql,asp.net,sql-server,Sql,Asp.net,Sql Server,我正试图在我的asp应用程序中创建一个新表,但出于对我的热爱,我无法确定如何使用主键语法。首先,我正在尝试如何创建它。 有人能告诉我这个问题出了什么问题吗 CREATE EXTERNAL TABLE [dbo].[AspNetUserTestScores] ( [UserName] NVARCHAR (256) NOT NULL, [MomentsAndEnergyTestScore] NVARCHAR (256) NULL, [MotionInACircl
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]
)
谢谢这有点推测性,因为这似乎不完整。特别是,它没有定义
列定义的语法,因为它适用于创建外部表
值得注意的是,语法图中没有任何关于约束的内容。与forCREATE TABLE
的比较具有指导意义——没有计算列,没有显式约束,没有列集,没有外部版本的分区
文档明确说明不允许使用默认值。我怀疑不允许任何约束,这就是为什么会出现语法错误。当显式约束似乎不是语法的一部分时,如果允许使用内联约束,我会感到惊讶
但是,column\u definition
似乎允许内联主键
约束,这就是我认为文档不完整的原因。我猜问题在于您没有命名主键。您已指示主键基于哪个字段(用户名
),但尚未命名实际的主键。因此,我不确定语法,但我认为您需要将行更改为以下内容:
pk_用户名主键[用户名]
你可能也不需要在行尾加逗号。我不知道你的问题到底是什么。查询不起作用,我也不知道为什么,错误是围绕主键的,我也想知道使用了什么(LOCATION='/folder/file',DATA\u SOURCE=[DataSource1],file\u FORMAT=[FileFormat1])