vb.net数据库编程(02):再来一个非查询的简单例子

前端之家收集整理的这篇文章主要介绍了vb.net数据库编程(02):再来一个非查询的简单例子前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这次是一个留言薄程序,就是把客人的留言“放入”数据库中。


首先我们要建立一个一个留言薄的Access文件文件名:lyb.mdb (2012版为lyb.accdb) 其中表名为lyb

勤劳的人就自己建立一个吧,图下图(里面没有数据,只有一表结构,因为我们只是设计)


注意的是,日期用默认值,这样可以获得留言时的时间(这个不用我们来考虑,Access加入记录时自动会写上当前准确时间)


如果你是懒人就用这个下载吧:http://download.csdn.net/detail/dzweather/5043544


这个简单程序有两块,一块是插入到数据库(Access)中,二块是显示数据库内容


  1. @H_301_43@ImportsSystem.Data.OleDb
  2. @H_301_43@
  3. @H_301_43@PublicClassForm1
  4. @H_301_43@DimcnAsOleDbConnection
  5. @H_301_43@DimcmAsOleDbCommand
  6. @H_301_43@DimdaAsOleDbDataAdapter
  7. @H_301_43@DimdsAsDataSet
  8. @H_301_43@PrivateSubButton3_Click(senderAsObject,eAsEventArgs)HandlesButton3.Click
  9. @H_301_43@TextBox1.Text=""
  10. @H_301_43@TextBox2.Text=""
  11. @H_301_43@TextBox3.Text=""
  12. @H_301_43@TextBox4.Text=""
  13. @H_301_43@EndSub
  14. @H_301_43@
  15. @H_301_43@PrivateSubButton2_Click(senderAsObject,eAsEventArgs)HandlesButton2.Click
  16. @H_301_43@cn=NewOleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=D:\lyb.mdb;PersistSecurityInfo=False")
  17. @H_301_43@da=NewOleDbDataAdapter("select*fromlyborderby时间desc",cn)
  18. @H_301_43@ds=NewDataSet()
  19. @H_301_43@da.Fill(ds,"lyb")
  20. @H_301_43@DataGridView1.DataSource=ds.Tables("lyb")
  21. @H_301_43@PrivateSubButton1_Click(senderAsObject,eAsEventArgs)HandlesButton1.Click
  22. @H_301_43@DimNameAsString=TextBox1.Text
  23. @H_301_43@DimEmailAsString=TextBox2.Text
  24. @H_301_43@DimSubjectAsString=TextBox3.Text
  25. @H_301_43@DimMemoAsString=TextBox4.Text
  26. @H_301_43@IfName=""OrEmail=""OrSubject=""OrMemo=""Then
  27. @H_301_43@MessageBox.Show("字段有未填写,请再次填写!")
  28. @H_301_43@ExitSub
  29. @H_301_43@EndIf
  30. @H_301_43@'Try
  31. @H_301_43@cn.Open()'插入前,必须连接
  32. @H_301_43@DimsqlAsString="insertintolyb(姓名,Email,主题,内容)values('"&Name&"','"&Email&"','"&Subject&"','"&Memo&"')"
  33. @H_301_43@cm=NewOleDbCommand(sql,226); color:inherit; line-height:18px"> @H_301_43@cm.ExecuteNonQuery()
  34. @H_301_43@cn.Close()
  35. @H_301_43@MessageBox.Show("保存成功!!!")
  36. @H_531_502@'CatchexAsException
  37. @H_301_43@'MessageBox.Show("保存失败!")
  38. @H_531_502@'EndTry
  39. @H_301_43@EndSub
  40. @H_301_43@EndClass



===================================================================================================




细节:

一、在执行Fill方法时,只是针对Select查询

在执行查询结果集时,如果前面连接没有打开,由自动根据参数打开连接,获得结果集后,再关闭连接。

如果前面连接已经打开,获得结果集后,仍保持连接打开。

即,执行后,仍保持原来的连接状态,是关则关,是开仍开。


二,但对于非查询语句,比修改删除等,须要用command来执行。

在执行修改等结果集时,如果前面连接没有打开,则提出错误

因此,修改等必须连接是打开的。

猜你在找的VB相关文章