VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > VB.net教程 >
  • vb.net教程之VB.NET来删除数据记录

VB.NET来删除数据记录:

在做程序的时候,我们可能有这样的迷惑就是,我们操作的数据集是返回的DataSet对象,如果此时的DataSet对象十分庞大,或者连接到此数据库服务器的客户非常多,这样就会耗费服务器的很多资源,久而久之服务器总有一天可能会崩溃。其实这种担心是没有必要的,因为我们操作的DataSet对象其实产生的位置并不在服务器端,而是客户端,这样上面的几种顾虑就显得没有必要了。但在对数据库进行删除、修改等操作,我们此时操作的对象是服务器端的数据库,并没有修改到本地的DataSet对象,所以当进行删除、修改操作的时候,为了数据一致,在对服务器端的数据库进行删除、修改后,依然要对本地的DataSet对象进行相关操作。根据上面的这些知识,就可以分别得到针对Access 2000和Sql Server 2000数据库进行删除操作的程序代码:

< I > .删除Access 2000数据库中的记录:



    
    Private Sub button4_Click (ByVal sender As Object , _
      ByVal e As System.EventArgs) Handles button4.Click
     '连接到一个数据库
            Dim strCon As String = " Provider = Microsoft.Jet.OLEDB.4.0 ;
   Data Source = db.mdb "
            Dim myConn As OleDbConnection = New OleDbConnection ( strCon )
            myConn.Open ( )
            Dim strDele As String = "DELETE FROM person WHERE id= " + t_id.Text
            Dim myCommand As OleDbCommand = New OleDbCommand ( strDele , myConn )
            '从数据库中删除指定记录
            myCommand.ExecuteNonQuery ( )
            '从DataSet中删除指定记录
            myDataSet.Tables ( "person" ).Rows ( myBind.Position ).Delete ( )
            myDataSet.Tables ( "person" ).AcceptChanges ( )
            myConn.Close ( )
End Sub  
 


< II > .删除Sql Server 2000数据库中的记录:



    
    Private Sub button4_Click (ByVal sender As Object , _
      ByVal e As System.EventArgs) Handles button4.Click
     '连接到一个数据库
            Dim strCon As String = " Provider = SQLOLEDB.1 ;
   Persist Security Info = False ; User ID = sa ;
   Initial Catalog = data1 ; Data Source = server1 "
            Dim myConn As OleDbConnection = New OleDbConnection ( strCon )
            myConn.Open ( )
            Dim strDele As String = "DELETE FROM person WHERE id= " + t_id.Text
            Dim myCommand As OleDbCommand = New OleDbCommand ( strDele , myConn )
            '从数据库中删除指定记录
            myCommand.ExecuteNonQuery ( )
            '从DataSet中删除指定记录
            myDataSet.Tables ( "person" ).Rows ( myBind.Position ).Delete ( )
            myDataSet.Tables ( "person" ).AcceptChanges ( )
            myConn.Close ( )
End Sub  
 


五.VB.NET来修改数据记录:

掌握了SQL语句,并且掌握了上面删除数据记录的实现过程过以后,用VB.NET来修改数据记录就显得并不十分困难了。下面就是以Access 2000为操作数据库实现记录修改的代码,如下:



    
    Private Sub button3_Click (ByVal sender As Object , _
      ByVal e As System.EventArgs) Handles button3.Click
        Dim i As Integer = myBind.Position
        '连接到一个数据库
        Dim strCon As String = " Provider = Microsoft.Jet.OLEDB.4.0 ;
  Data Source = db.mdb "
        Dim myConn As OleDbConnection = New OleDbConnection ( strCon )
        myConn.Open ( )
        myDataSet.Tables ( "person" ).Rows ( myBind.Position ).BeginEdit ( )
        '从数据库中修改指定记录
        Dim strUpdt As String = " UPDATE person SET xm = '" _
         + t_xm.Text + "'  , xb = '" _
         + t_xb.Text + "'  , nl = " _
         + t_nl.Text + "  , zip = " _
         + t_books.Text + " WHERE id = " + t_id.Text
        Dim myCommand As OleDbCommand = New OleDbCommand ( strUpdt , myConn )
        myCommand.ExecuteNonQuery ( )
        myDataSet.Tables ( "person" ).Rows ( myBind.Position ).EndEdit ( )
        myDataSet.Tables ( "person" ).AcceptChanges ( )
        myConn.Close ( )
        myBind.Position = i
    End Sub  
 


在介绍完上面这二个典型的数据操作后,我们不难发现,其实对数据库进行编程,选取什么样的数据库类型对于程序开发并不是十分主要的,因为在用VB.NET进行数据库开发的时候,对不同数据库,其开发代码的主要区别只在于数据链接的不同,所以在此就不单独介绍用VB.NET对Sql Server 2000进行修改记录操作的代码了。我想这应该不是很难吧。

六.VB.NET来插入数据记录:

往数据库中插入记录和修改记录和删除记录基本上差不多,主要也是利用SQL语句,下面是以Access 2000为操作数据库,进行插入记录的代码:



    
    Private Sub button2_Click (ByVal sender As Object , _
      ByVal e As System.EventArgs) Handles button2.Click
        '判断所有字段是否添完,添完则执行,反之弹出提示
        If  ( t_id.Text <> "" And t_xm.Text <> ""
  And t_xb.Text <> "" And t_nl.Text <> ""
  And t_books.Text <> "" ) Then
            Dim myConn1 As String = " Provider = Microsoft.Jet.OLEDB.4.0 ;
   Data Source = db.mdb"
            Dim myConn As OleDbConnection = New OleDbConnection ( myConn1 )
            myConn.Open ( )
            Dim strInsert As String = " INSERT INTO person  ( id  , xm  ,
    xb  , nl  , zip ) VALUES  ( " & _
            t_id.Text + " , '" & _
            t_xm.Text + "' , '" & _
            t_xb.Text + "' , " & _
            t_nl.Text + " , " & _
            t_books.Text + ")"
            Dim inst As OleDbCommand = New OleDbCommand ( strInsert , myConn )
            inst.ExecuteNonQuery ( )
            myConn.Close ( )
            myDataSet.Tables ( "person" ).Rows ( myBind.Position ).BeginEdit ( )
            myDataSet.Tables ( "person" ).Rows ( myBind.Position ).EndEdit ( )
            myDataSet.Tables ( "person" ).AcceptChanges ( )
        Else
            MessageBox.Show ( "必须填满所有字段值!" , "错误!" )
        End If
End Sub  
 


同样对Sql Server 2000数据库进行插入记录操作和Access 2000数据库插入记录操作的差异也只在于不同的数据链接,具体的代码可以参考"删除数据记录"中的代码,在这里就不提供了。

相关教程