我有一个关于vb访问插入的问题,我有一个id,但是我的下一个插入ID会自动获得更高的数字。这是我到目前为止的代码:
尝试
Dim cn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & My.Application.Info.DirectoryPath.ToString() & "\data\testing.Accdb;Persist Security Info=False;")
If cn.State = ConnectionState.Open Then
cn.Close()
End If
cn.Open()
Dim sSQL As String = "insert into tabel1(id) values(@d1)"
Dim cmd As OleDbCommand = New OleDbCommand(sSQL, cn)
Dim id As OleDbParameter = New OleDbParameter("@d1", OleDbType.VarWChar, 25)
id.Value = 'so here I need the automatic higher number
cmd.Parameters.Add(id)
我真的希望你们其中一个人可以帮助我,谢谢。 抱歉我的英语不好因为我是荷兰人,如果有任何问题我会试着解释一下。
问汤姆
答案 0 :(得分:0)
您可以使用嵌套的子查询执行此操作:
INSERT INTO Table1 (Id,Test) SELECT TOP 1 MAX(ID) + 1,"Test Value" FROM Table1;
在这个例子中,我添加了另一个名为" Test"这样您就可以看到如何输入其他字段的值。