mysql:13516
From: <atakahashi@xxxxxxxxxx>
Date: Fri, 17 Nov 2006 15:19:51 +0900
Subject: [mysql 13516] ado VB でのauto_incrementのフィールドのINSERT構文
お世話になります。MySQL初心者のもので、投稿します。
ADO VBで開発を行っておりますが、auto_incrementがついているフィールドに対し
てどのように
レコード追加していいか分かりません。どなたか知ってらっしゃる方は教えて下さ
い。
初心者な質問で申し訳ございません、、、、
ソース
************************************
Sub CSV取込処理_Click()
Dim myrec As ADODB.Recordset
Set myrec = New ADODB.Recordset
Dim cn As ADODB.Connection
Dim cnt As String
Dim sql As String
Dim i As Integer
Dim myFileName
cnt = "Provider=MSDASQL.1;Data Source=new_nyukin2"
On Error GoTo Error1
' ダイアログを表示
myFileName = Application.GetOpenFilename( _
FileFilter:="CSV ファイル(*.CSV), *.CSV", _
Title:="ファイルを選択して下さい", MultiSelect:=False)
If myFileName = False Then
Exit Sub
End If
Workbooks.Open myFileName
Cells.Select
Selection.Copy
Workbooks.Add
Cells.Select
ActiveSheet.Paste
i = 1
Do Until Cells(i + 1, 1) = ""
Cells(i, 7) = myFileName
Cells(i, 8).Select
ActiveCell.FormulaR1C1 = "=LEFT(RIGHT(RC[-1],8),4)"
i = i + 1
Loop
Columns("H:H").Select
Application.CutCopyMode = False
Selection.Copy
Columns("I:I").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,
SkipBlanks _
:=False, Transpose:=False
Columns("G:H").Select
Application.CutCopyMode = False
Selection.Delete Shift:=xlToLeft
Set cn = CreateObject("ADODB.Connection")
cn.Open cnt
cn.BeginTrans
MsgBox Cells(3, 1)
sql = "insert into 67ds.u_import(pkid , syohinmei) values(1," &
Cells(3, 1) & ");"
cn.Execute (sql)
cn.CommitTrans
cn.Close
Exit Sub
Error1:
MsgBox "エラーが発生しました。"
Exit Sub
End Sub
************************************
テーブル
************************************
CREATE TABLE `u_import` (
`pkid` int(7) NOT NULL auto_increment,
`hiduke` date default NULL,
`jancode` varchar(13) default NULL,
`sum_suryo` smallint(7) default NULL,
`sum_kingaku` smallint(13) default NULL,
`syohinmei` varchar(13) default NULL,
PRIMARY KEY (`pkid`),
KEY `pkid` (`pkid`)
) TYPE=InnoDB
************************************