Dim i As Integer
cmd.CommandText = ("SELECT Max(AccountID) FROM Accounts")
cmd.CommandType = CommandType.Text
cmd.Connection = cnn
If IsDBNull(cmd.ExecuteScalar) Then
i = AccountsDataGridView.Item(0, i).Value
AccountIDTextBox.Text = i
Else
i = cmdinsert.ExecuteScalar + 1
AccountIDTextBox.Text = i
End If
这是我生成ACCOUNTID最大值的代码
我遇到了问题 当我点击按钮生成问题是“ExecuteScalar:连接属性尚未初始化” 如何获取MAX ID以替换ACCOUNTTEXTBOX
答案 0 :(得分:0)
首先,如果您在尝试使用之前实际打开(),这会有所帮助:
cnn.Open()
其次,如果您在共享多个用户的系统中创建帐号,则可以在您的帐户ID上设置竞争条件。我想这是MS Access,所以多个用户还有另外一组问题,但仍然是:让数据库改为使用自动编号列,在你准备保存记录之前不要担心这个数字。