sql - 如何修复'System.IndexOutOfRangeException:'位置 0 处没有行。' 错误?
问题描述
我正在使用 SQL 和 OLEDB 在 VB.NET 中创建登录系统(如果有帮助的话)。我试图在表格中插入一个新项目,但我不断收到异常,我该如何解决?
我尝试简单地将这一行中的数字零更改Dim comd As New OleDb.OleDbCommand(sql, Connstring)
为其他数字,并将记录号更改为表中的记录数。
Dim sql As String = "INSERT INTO UserInfo (Username, Password, CurrentLevel) VALUES (?, ?, ?)"
Dim comd As New OleDb.OleDbCommand(sql, Connstring)
comd.Parameters.AddWithValue(0, tblTable.Rows(recordno)(0))
comd.Parameters.AddWithValue("@Username", tblTable.Rows(2)(recordno))
comd.Parameters.AddWithValue("@Password", tblTable.Rows(3)(recordno))
comd.Parameters.AddWithValue("@CurrentLevel", tblTable.Rows(4)(recordno))
comd.ExecuteNonQuery() 'run the code to Insert back to the db file
我希望代码将另一个条目添加到表中UserInfo
,但除了异常之外什么也没有发生
System.IndexOutOfRangeException:位置 0 处没有行。
解决方案
这表明您的 tblTable 中没有行,并且由于您试图获取第一行 (...tblTable.Rows(0)...),因此它会引发错误。
推荐阅读
- c++ - C++Builder6 中的 Random_shuffle 替代方案
- java - Java LinkedList 用于存储和排序用户输入。请协助
- javascript - 使用 Node.js 将多个条目插入 SQL Server
- google-play - Google 收据验证 - 401 - permissionDenied
- google-apps-script - 尝试从容器脚本中删除命名的外部工作表
- c++ - #包括
导致 bind() 函数调用在编译时抛出错误,为什么? - google-apps-script - 环聊聊天机器人图像卡未刷新
- java - Java derby Embedded DB 错误:日期/时间值的字符串表示的语法不正确
- html - 仅使用标准 Html 导入 Html,可以吗?
- ios - UICollectionView 预取不适用于动态单元格大小