ADO(ADOX) を使用して SQL Server 上にテーブルを作成するには?


匿名  2003-07-31 23:57:17  No: 107934

Dim cat   As ADOX.Catalog
  Dim tbl   As ADOX.Table
  Dim col   As ADOX.Column
  Set cat = New ADOX.Catalog
  cat.ActiveConnection = "UID=***;PWD=***;Database=***;Server=***;Driver={SQL Server};DSN='';"
  'cat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.3.51;Data Source=C:\db1.mdb;"
  Set tbl = New ADOX.Table
  tbl.Name = "TABLE1"
  Set col = New ADOX.Column
  With col
    .Name = "FIELD1"
    .Type = adBoolean
    .Attributes = adColNullable
  End With
  tbl.Columns.Append col
  cat.Tables.Append tbl
  Set col = Nothing
  Set tbl = Nothing
  Set cat = Nothing

上のように下のですが、エラーが発生します。
  実行時エラー 3251
  オブジェクトまたはプロバイダは要求された操作を実行できません。

ちなみに下の方法では作成することができます。
  Dim cn As ADODB.Connection
  Set cn = New ADODB.Connection
  cn.Open "UID=***;PWD=***;Database=***;Server=***;Driver={SQL Server};DSN='';"
  cn.Execute "create table TABLE1 (FIELD1 bit null)"
  cn.Close: Set cn = Nothing

なにが原因なのでしょうか?


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加