加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-17 07:57:50 所属栏目:百科 来源:网络整理
导读:这次是一个留言薄程序,就是把客人的留言“放入”数据库中。 首先我们要建立一个一个留言薄的Access文件,文件名:lyb.mdb (2012版为lyb.accdb) 其中表名为lyb 勤劳的人就自己建立一个吧,图下图(里面没有数据,只有一表结构,因为我们只是设计) 注意的是
这次是一个留言薄程序,就是把客人的留言“放入”数据库中。


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

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


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


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


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


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



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




细节:

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

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

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

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


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

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

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读