2016-05-12 8 views
0
私はMS Accessの2010年には既存のテーブルにカラムを追加しようとしています

経由のアクセスに列を追加しながらエラー私は、次のエラーを取得しています<code>adodb.recordset</code></p> <pre><code>rst.Open "ALTER TABLE tblPatients ADD COLUMN husband_profession TEXT", conn, adopendynamic, adlockoptimistic </code></pre> <p>を使用してレコード

ADODB.Recordsetのエラー '800a0bb9'

引数のタイプが間違っているか、許容範囲外か、または互いに矛盾している です。

答えて

2

ADODB.Recordsetは、レコードを含むように設計されたオブジェクトです。

ALTER TABLEステートメントはレコードを返しません。

それはrst.Openでの競合の原因です--- Recordsetの有効なデータソースをOpenメソッドに与えているわけではありません。

このようなあなたのALTER TABLEを実行するために、そのExecuteメソッドを使用して、あなたのconnオブジェクト変数が有効なオープン接続であると仮定すると:指定なしサイズでアクセスSQL TEXTタイプは実際にあなた与える

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

注意ADOから実行されたときにメモフィールド。単純なテキストフィールドが必要な場合は、TEXTキーワードの後に​​サイズを含めてください。アクセステキストフィールドの最大サイズは255文字です。あなたが望むなら、あなたはより小さい数を代用することができます。

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

ありがとうございます...問題はソートされています –

関連する問題

 関連する問題