2016-05-12 104 views
0

我想列在MS Access 2010中添加到现有的表使用adodb.recordset错误而通过访问记录

rst.Open "ALTER TABLE tblPatients ADD COLUMN husband_profession TEXT", conn, adopendynamic, adlockoptimistic 

添加一列,我收到以下错误

ADODB.Recordset错误“800a0bb9”

参数的类型错误,超出可接受的范围,或者是与另一个冲突的 。

回答

2

ADODB.Recordset是一个旨在包含记录的对象。

ALTER TABLE语句不返回记录。

这是冲突的原因rst.Open ---您没有给Open方法提供Recordset的有效数据源。

假设你conn对象变量是有效的打开连接,使用它的Execute方法来执行你的ALTER TABLE这样的:

conn.Execute "ALTER TABLE tblPatients ADD COLUMN husband_profession TEXT" 

说明访问SQL TEXT类型没有指定实际上给你一个尺寸备忘录字段从ADO执行时。如果您想要一个简单的文本字段,请在TEXT关键字后加上一个大小。 Access文本字段的最大大小为255个字符。如果你愿意,你可以用一个较小的数字代替。

conn.Execute "ALTER TABLE tblPatients ADD COLUMN husband_profession TEXT (255)" 
+0

谢谢......这个问题已经解决 –