我有一个DataGridView在我的winform,我的连接字符串是cmd.ExecuteNonQuery不断增加
dim con as new sqlconnection("Data source=" & My.Settings.sqlserver & ", " & My.Settings.sqlport & ";Network Library=DBMSSOCN;initial catalog=" & My.Settings.dbname & ";User id=" & My.Settings.Username & ";Password=" & My.Settings.Password & ";")
我有一个按钮,在SQL数据库中插入数据。代码是
dim cmd as new sqlcommand("insert into db(Firstname) values(@fname)")
con.opn
cmd.parametres.add("@fname",sqldbtype.varchar).value=txt.text
cmd.executenonquery
con.close
end sub
此代码工作正常,但DataGridView不更新/刷新本身,除非我重新启动应用程序。所以我加入这个代码
Private sub btn_click
dim cmd as new sqlcommand("insert into db(Firstname)
values(@fname)") con.opn
`cmd.parametres.add("@fname",sqldbtype.varchar).value=txt.text
if cmd.executenonquery() =1 then
dim cmd as new sqlcommand("Select *from contacts")
dim adapter as new sqldataadapter
dim table as datatable
apater.fill(table)
dgvw.datasource=table
con.close
end sub
`
此代码对form_load.This还添加代码刷新/更新DGVW但问题是,在我的文本框想,我输入“ABCDE”,那么它在SQL数据库,其看起来像
插入多数据“a”(它将第一数据到数据库表) “AB” “ABC” 等等! 我在做什么错?我应该如何解决这个问题?还有最后一件事,如果我删除了cmd.executenonquery if语句中的adaper.fil和其他代码,它只会向表中添加一个数据!请帮忙!
screensht:[链接1] https://drive.google.com/open?id=0B9Q3-Og5WXqYOWFMaGRBT2tGRVk
[链接2] https://drive.google.com/open?id=0B9Q3-Og5WXqYbEV2YUVSdW1kWkU
它听起来像你将数据添加到在TextBox的TextChanged事件处理程序的数据库。对于在TextBox中键入的每个字符,都会触发TextChanged。 – Blackwood
请阅读[问]并参加[导览]。我不知道如何代码将添加一个字符串的多个部分,但我可以看到如何添加多个名称。 – Plutonix
等等... Letme给出屏幕截图 –