none
Access2003にテーブルを作成する RRS feed

  • 質問

  •  

    お世話になります。vb2008です。

    人から聞かれたのですが、vbからAccessのテーブルを作りたいということです。

    Accessとの接続はぜんぜん経験内のですが、いろいろ調べて下記をボタンに書きました。

    実行するとmdbに接続はしているようですがexecuteでとまります。

    超初心者が意味も分からずに書いたのですがいかがでしょうか。

     

           Dim oconn As New OleDb.OleDbConnection
            Dim reTurnvalue As VariantType
            oconn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; " + _
           "Data Source=C:\TEST.mdb"
            oconn.Open()


            Dim oCommand As OleDb.OleDbCommand = oconn.CreateCommand

     

            'SQL文の設定
            oCommand.CommandText = "CREATE TABLE 名前 (氏名 CHAR(20) NUL)"


            reTurnvalue = oCommand.ExecuteNonQuery
            oconn.Close()

    2008年9月10日 8:25

回答

すべての返信

  • こちらが参考になると思います。

     

    ADOXで作成したデータベースのテーブルの値要求について
    http://forums.microsoft.com/msdn-ja/ShowPost.aspx?PostID=1643534&SiteID=7

    2008年9月10日 8:52
    モデレータ
  • おせわになります。

    VB2008のコードに貼り付けるとADOXに下線が付くのですが設定が分かりません。

     

    Dim Cat As ADOX.Catalog
    これを先頭に書いてもおなじです。

    2008年9月10日 9:47
  • ソリューションエクスプローラの参照設定を右クリックして「参照の追加」の画面を出します。COMタブをクリックし、「Microsoft ADO Ext.2.8 for DDL and Security」を選択してOKボタンを押します。

     

    名前空間は以下をImportsします。

     

    Imports ADOX
    Imports ADOX.DataTypeEnum

    2008年9月10日 14:20
    モデレータ
  • データベースから作成する内容で確認できました。動きました。

    ありがとうございます。

     

    2008年9月11日 1:23
  • データベース、テーブルを作成するのは確認できたのですが既存のデータベースにテーブルを追加するのはなんとかなるかなと思いやってみましたがまたぜんぜん分からなくなりました。

    Dim adoCat As ADOX.Catalog = New ADOX.Catalog

    Dim Cnn As New ADODB.Connection

    Dim adoIndex As ADOX.Index

    Dim blnRes As Boolean

     

    Cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Test.mdb"

    Cnn.Open()

     

    あたりを貼り付けてみましたがADODBに下線が入り動いてくれません。

    こういう関係の参考書とか無いかなと思ったりしています。

    2008年9月11日 2:23