VB2010を使用しております。
Access2007に添付ファイル型のフィールドを持ったテーブルを作成したいので
下記のようなコードを書きました。
Dim Cn2 As New OleDb.OleDbConnection()
Cn2.ConnectionString = My.Settings.dbConnectionString
Dim SQLCm As OleDb.OleDbCommand = Cn2.CreateCommand
SQLCm.CommandText = "create table [T_Backup] (aaa ●●)"
Cn2.Open()
SQLCm.ExecuteNonQuery()
●の部分は、添付ファイルのデータ型を記載したいのですが、
何を記載すれば良いのか不明です。
あちこちのサイトを探し回りましたが、欲しい情報が見つかりません。
fileやattachment、itemなどそれらしい名前を記載しましたがすべて駄目でした。
ちなみに、INTやchar(50)などと記載すれば問題なく作成できます。
そもそも添付ファイル型で作成するのは可能でしょうか?
複数値を持つフィールド型については、
現状、JET SQL からの作成には対応していないはずです。
> そもそも添付ファイル型で作成するのは可能でしょうか?
DAO の CreateField メソッドで dbAttachment を指定してみてください。
魔界の仮面弁士様
迅速なご回答ありがとうございます。
アドバイス頂きました内容で下記の通りソースを記述したら思い通りの処理ができました。
これでようやく先の処理に進めます。本当にありがとうございました。
Dim de As New DBEngine()
Dim db As Database
Dim tdf As TableDef
db = de.OpenDatabase("C:\db.accdb", False)
tdf = db.CreateTableDef("T_Backup")
tdf.Fields.Append(tdf.CreateField("file", DataTypeEnum.dbAttachment))
db.TableDefs.Append(tdf)