Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 通过创建表创建的最大字段数?我似乎被困在8点_Vb.net_Create Table - Fatal编程技术网

Vb.net 通过创建表创建的最大字段数?我似乎被困在8点

Vb.net 通过创建表创建的最大字段数?我似乎被困在8点,vb.net,create-table,Vb.net,Create Table,只要我停留在9个字段之下,表就会在数据库中创建 从9个字段中我得到一个错误,从荷兰语翻译成英语有点像“记录太大了” (我在代码中添加了一些无意义的字段以获得9) 错误消息太长了 但是,当我看到错误消息中提到的行号时,就我所知,没有任何东西与我正在做的事情密切相关 我在网上看过,但我发现的与我的问题无关 有没有人遇到过类似的事情并找到了解决办法?非常感谢您的意见!一如既往 老实说,我不知道在使用with theCHAR关键字指定字段类型时,为什么会收到“Record is too large”错

只要我停留在9个字段之下,表就会在数据库中创建

从9个字段中我得到一个错误,从荷兰语翻译成英语有点像“记录太大了”

(我在代码中添加了一些无意义的字段以获得9)

错误消息太长了

但是,当我看到错误消息中提到的行号时,就我所知,没有任何东西与我正在做的事情密切相关

我在网上看过,但我发现的与我的问题无关


有没有人遇到过类似的事情并找到了解决办法?非常感谢您的意见!一如既往

老实说,我不知道在使用with the
CHAR
关键字指定字段类型时,为什么会收到“Record is too large”错误。在Access中,当创建记录且所有字段中输入的字符总数超过最大限制时,您会收到此错误

一种方法是使用
TEXT
关键字,而不是
CHAR
(或
CHARACTER
)关键字

关于记录大小限制,请参阅:

此限制似乎约为2000个Unicode字符(无压缩)

要对文本字段启用压缩,需要将
WITH compression
属性应用于字段定义


例如:
writenbytext(255)和压缩

您使用的是什么数据库系统(SQL Server、Oracle、MySQL…?)您的
CHAR
类型有多长?您应该指定字段长度,至少在许多常见数据库中是这样。它是MS access数据库-我不知道必须指定字段长度。我认为255个字符是文本字段的标准。即使如此,允许8个字段(但不允许更多字段)似乎也不太合乎逻辑。这让我头疼!我甚至试着创建一个包含8个字段的表,然后修改表以添加字段——同样的错误是,最多4000字节,即2000个字符或7个文本字段,默认大小为255个字符。例如,使用CHAR(42)缩小文本字段或使用MEMO。使用
text
关键字而不是
CHAR
。还要指定长度。i、 e.
文本(255)
。请注意,文本字段的最大大小为255。使用不带长度的文本将创建备注字段,也可以使用备注关键字。
 Using cmd As New OleDbCommand()
        con.Open()
        cmd.Connection = con
        cmd.CommandText = "CREATE TABLE tblProject (ProjectID COUNTER, WrittenBy CHAR, ContactDetails CHAR, roetepetoet CHAR, TitleBlock CHAR, popopopopop CHAR, Producer CHAR, xxxooxxx CHAR, ProductionTitle CHAR, PRIMARY KEY (ProjectID))"

        cmd.ExecuteNonQuery()
    End Using