我正在使用C#创建VF表。 Create Table语句类似于
{CREATE TABLE NMMAIN (
NAMETYPE Character(4),
NAME_ID Numeric(11) AUTOINCREMENT,
RACE Character(2),
RELIGION Character(10),
REPORTAREA Character(8),
RESTRICTNM Numeric(1),
RES_STATUS Character(1),
SEX Character(1),
SKINTONE Character(6),
CONSTRAINT primKey PRIMARY KEY(NAME_ID)
)}
这会在执行查询时抛出“语法错误”。如果我不添加约束,它确实可以正常工作。任何帮助表示赞赏。
答案 0 :(得分:0)
您使用的语法错误。查看CREATE TABLE
syntax for Visual Foxpro正确的语法是:
CREATE TABLE NMMAIN (
...,
NAME_ID Numeric(11) AUTOINC PRIMARY KEY,
...
)
或者:
CREATE TABLE NMMAIN (
...,
NAME_ID Numeric(11) AUTOINC,
...,
PRIMARY KEY NAME_ID TAG primKey
)
注意我使用了AUTOINC
代替AUTOINCREMENT
,因为我链接到的引用不会显示AUTOINCREMENT
。
答案 1 :(得分:0)
我认为你的最后一个问题是,只有Integer类型可以使用AUTOINC,而不是Numeric。
答案 2 :(得分:0)
这是CREATE TABLE子句定义:
CREATE TABLE | DBF Table_Name
[CODEPAGE = nCodePage]
(FieldName1 FieldType [( nFieldWidth [, nPrecision] )] [NULL | NOT NULL]
[AUTOINC [NEXTVALUE NextValue [STEP StepValue]]]
[, FieldName2 ... ] [ ... ] )
一个例子:
CREATE TABLE "D:\Data\customer.dbf" (id I AUTOINC NEXTVALUE 1 STEP 1, name C(40), payment F(5,2))
取自here。