No.5ベストアンサー
- 回答日時:
Sub テーブル作成2()
Dim db As DAO.Database 'Microsoft DAO 3.6 Object Libraryの参照設定必要
Set db = CurrentDb
db.Execute "CREATE TABLE testm" & _
"(key1 TEXT(8) CONSTRAINT キーの名前 PRIMARY KEY," & _
"data1 INTEGER," & _
"data2 INTEGER)"
db.Close
Set db = Nothing
End Sub
この回答へのお礼
お礼日時:2008/11/23 18:32
ありがとうございます。
この手でいこうと思います。
なお、DAOでなくてADOなんで、CN.Excecuteですね。
私の場合。(ここを後から参考にされる方へ・・・)
No.6
- 回答日時:
No.5です。
コードだけ貼り付けてしまいすみません。「Access VBA で 主キー付きのテーブルをSQL文で作成したい」
という単純な事でしたら、No.5の様な単純なコードでいいんじゃないかと思いました、投稿してみました。
WinXP Accee2003でテスト済みです。
No.4
- 回答日時:
[イミディエイト]
? CNNExecute("CREATE TABLE AAA")
True
Private Sub コマンド0_Click()
DoCmd.RunSQL "CREATE TABLE BBB"
End Sub
DoCmd.RunSQL を使うのも手です。
また、 CNNExecute関数を自作するのも手です。
この辺りは、それぞれの流儀というか好みの問題だと思いますよ。
Public Sub ErrMessage(ByVal CnnErrors As ADODB.Error, ByVal strSQL As String)
MsgBox "ADOエラーが発生しましたので処理をキャンセルします。" & Chr$(13) & Chr$(13) & _
"・Err.Description=" & CnnErrors.Description & Chr$(13) & _
"・Err.Number=" & CnnErrors.Number & Chr$(13) & _
"・SQL State=" & CnnErrors.SQLState & Chr$(13) & _
"・SQL Text=" & strSQL, _
vbExclamation, " ADO関数エラーメッセージ"
End Sub
Public Function CnnExecute(ByVal strSQL As String) As Boolean
On Error GoTo Err_CnnExecute
Dim isOK As Boolean
Dim cnn As ADODB.Connection
isOK = True
Set cnn = CurrentProject.Connection
With cnn
.Errors.Clear
.BeginTrans
.Execute strSQL
.CommitTrans
End With
Exit_CnnExecute:
On Error Resume Next
cnn.Close
Set cnn = Nothing
CnnExecute = isOK
Exit Function
Err_CnnExecute:
isOK = False
If cnn.Errors.Count > 0 Then
ErrMessage cnn.Errors(0), strSQL
cnn.RollbackTrans
Else
MsgBox "プログラムエラーが発生しました。システム管理者に報告して下さい。(CnnExecute)", _
vbExclamation, " 関数エラーメッセージ"
End If
Resume Exit_CnnExecute
End Function
No.2
- 回答日時:
#1 です。
リンクを貼り忘れました。
マイクロソフトの Office Online の説明です。
http://office.microsoft.com/ja-jp/access/HP01032 …
参考URL:http://office.microsoft.com/ja-jp/access/HP01032 …
No.1
- 回答日時:
できますよ。
普通にアクセスのクエリデザイナでSQLモードにして
create table 文を実行すればできるはずです。
今、手元にAccessありませんが、ODBC接続のツールで
以下のSQLを実行したら、ちゃんとAccessのmdbに
テーブルを作成できました。
create table testm (
key1 char(008) primary key,
data1 int,
data2 int,
data3 int
)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL MYSQL エラー 2 2022/10/18 11:37
- MySQL 何にかが違うから エラーなんでしょうね! 2 2022/09/18 05:28
- MySQL my_itemsテーブルのIDにAUTO_INCREMENT を追加ができるかで 1 2023/01/03 09:09
- MySQL SHOW CREATE TABLE posts;これって何ですか? 3 2022/08/28 22:57
- MySQL MySQLのテーブル作成で 自信がありません。 2 2022/08/28 05:35
- MySQL あと、MySQLの文字コードはutf8 気になりますね 1 2022/12/01 07:22
- MySQL テーブル作成です。どこかのスペルが間違っているか記号など スペースかな? 1 2022/10/01 05:08
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- MySQL エラー 1068 (42000): 複数の主キーが定義されていますエラー 2 2022/11/17 04:36
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでクエリを完了できませ...
-
ACCESS2007 フォーム 「バリア...
-
Access VBA [リモートサーバー...
-
大きなテーブルに対する問い合...
-
AccessのテーブルをSQL Server...
-
PhpMyAdminで作成して実行せよ...
-
ACCESSにてテーブルをEXCEL形式...
-
Select ~ into ~ で作成した...
-
ジョブでvbsを起動する方法
-
ACCESSのODBCリンクテーブルに...
-
VBAの実行時エラー'2522'について
-
Oracleデータベーストリガーの...
-
ユニオンクエリで繋げられるテ...
-
TRY CATCHでシステムエラーを検...
-
結合テーブルクエリPrimaryKey...
-
「マスタ」と「テーブル」の違...
-
[ BETWEEN ] vs [ >= AND <= ]
-
オラクルではできるのにSQLSERV...
-
数百万件レコードのdelete
-
データの二重表示の原因
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access VBA [リモートサーバー...
-
ACCESS2007 フォーム 「バリア...
-
Accessでクエリを完了できませ...
-
実行時エラー3086 削除クエリ...
-
ACCESSのODBCリンクテーブルに...
-
SQL Serverのテーブルってどう...
-
VBAの実行時エラー'2522'について
-
ユニオンクエリで繋げられるテ...
-
Select ~ into ~ で作成した...
-
TRY CATCHでシステムエラーを検...
-
accessでSQL実行時のテーブル名...
-
Oracleデータベーストリガーの...
-
AccessのテーブルをSQL Server...
-
SSIS 変数の値をSQL実行タスク...
-
Access Update文の副問い合わせ
-
勤続年数の求め方
-
DB2 create tableコマンドでエ...
-
結合テーブルクエリPrimaryKey...
-
PhpMyAdminで作成して実行せよ...
-
SQL SERFVER で外部キーのエラ...
おすすめ情報