更新Datagrid中除ID(MySQL数据库VB.NET)之外的所有列中的数据
这是我的程序的功能。这是一个患者管理系统,系统可以添加、删除和更新,但我编码了一个自动生成随机键,它将创建随机键,我在Mysql数据库的ID列上未选中主键,数据类型为INT,所以这个程序在添加记录时会自动生成一个随机ID,而不是MySql数据库自动生成ID数字顺序。问题是,当我单击“更新”按钮时,它表明我的语法不正确,有时它会显示主键的重复输入键“xxxxx”,这意味着它会复制、替换或再次保存ID。我的问题是 如何在不更改或影响ID键的情况下更新列中的所有记录 Update语句没有Where条件,因此它将使用相同的ID更新表中的所有行,这就是为什么会出现该错误 编辑:只需像这样将WHERE添加到更新语句中更新Datagrid中除ID(MySQL数据库VB.NET)之外的所有列中的数据,mysql,vb.net,Mysql,Vb.net,这是我的程序的功能。这是一个患者管理系统,系统可以添加、删除和更新,但我编码了一个自动生成随机键,它将创建随机键,我在Mysql数据库的ID列上未选中主键,数据类型为INT,所以这个程序在添加记录时会自动生成一个随机ID,而不是MySql数据库自动生成ID数字顺序。问题是,当我单击“更新”按钮时,它表明我的语法不正确,有时它会显示主键的重复输入键“xxxxx”,这意味着它会复制、替换或再次保存ID。我的问题是 如何在不更改或影响ID键的情况下更新列中的所有记录 Update语句没有Where条件
cmd.CommandText = String.Format("UPDATE newpatient SET " &
"ID='{0}', " &
"Lastname='{1}', " &
"Firstname= '{2}', " &
"Middlename= '{3}', " &
"Age= '{4}', " &
"Gender= '{5}', " &
"Address= '{6}', " &
"Occupation= '{7}', " &
"Month= '{8}', " &
"Day= '{9}', " &
"Year= '{10}'" &
"WHERE ID={11}, ' here we add where
txtID.Text,
txtFirstname.Text,
txtFirstname.Text,
txtMiddlename.Text,
txtAge.Text,
cmbGender.SelectedItem,
txtAddress.Text,
txtOccupation.Text,
cmbMonth.SelectedItem,
cmbDay.SelectedItem,
cmbYear.SelectedItem,
yourID)
你几乎肯定不想更新ID。在missing WHERE子句中使用它。你能给我正确的语法吗?我不知道正确的语法是什么。对不起,我只是一名IT专业的学生,我试图在谷歌上搜索答案,但没有找到任何答案
cmd.CommandText = String.Format("UPDATE newpatient SET " &
"ID='{0}', " &
"Lastname='{1}', " &
"Firstname= '{2}', " &
"Middlename= '{3}', " &
"Age= '{4}', " &
"Gender= '{5}', " &
"Address= '{6}', " &
"Occupation= '{7}', " &
"Month= '{8}', " &
"Day= '{9}', " &
"Year= '{10}'" &
"WHERE ID={11}, ' here we add where
txtID.Text,
txtFirstname.Text,
txtFirstname.Text,
txtMiddlename.Text,
txtAge.Text,
cmbGender.SelectedItem,
txtAddress.Text,
txtOccupation.Text,
cmbMonth.SelectedItem,
cmbDay.SelectedItem,
cmbYear.SelectedItem,
yourID)