当前位置:编程学习 > VB >>

VB6.0中,如何删除特定记录,SQL中删除记录很方便,VB中如何实现呢?

在SQL 中,删除特定记录的语句为 
delete from 某一表格名称 where 某一字段名="****"
这样删除特定记录很方便,但是在VB中如何能够实现呢。请求高手指点! --------------------编程问答-------------------- 比如在学生记录表格中,我要删除姓名为 “张三”的记录
则在SQL 中,可以写这样的语句,在SQL查询分析器中直接调用可以删除
delete from 学生记录 where 姓名="张三" 
这样删除特定记录很方便,然而目前我想在VB环境中直接单击某一command命令实现
该如何写代码?? --------------------编程问答-------------------- Dim cn As ADODB.Connection 
        cn.ConnectionString = "Provider=SQLOLEDB.1;" _
                    & "Integrated Security=SSPI;" _
                    & "Persist Security Info=False;" _
                    & "User ID=sa;" _
                    & "Initial Catalog=" & 数据库名 _
    & ";Data Source=" & localhost
cn.execute("delete from 某一表格名称 where 某一字段名='****' ") --------------------编程问答-------------------- Dim cn As ADODB.Connection
        cn.ConnectionString = "Provider=SQLOLEDB.1;" _
                    & "Integrated Security=SSPI;" _
                    & "Persist Security Info=False;" _
                    & "User ID=sa;" _
                    & "Initial Catalog=" & 数据库名 _
    & ";Data Source=" & localhost
cn.execute("delete from 某一表格名称 where 某一字段名='****' ") --------------------编程问答-------------------- 没错用ADO连接,很方便 --------------------编程问答-------------------- 能讲的详细一点吗 --------------------编程问答-------------------- 运行VB,选择“工程\引用”命令,引用“Microsoft AetiveX Date Objects 2.8 Library” (一般选择2.5以上版本)
然后贴上2\3楼的代码就OK

'再注释一下:
    dim cn as adodb.connectino  '声明ADO的数据库连接对象
    dim sql as string
    dim n as integer

    set cn=new adodb.connection '实例化
    '连接数据库
    cn.open "Provider = SQLOLEDB.1;" & _
        "User ID = sa;Password = 123;" & _
        "Data Source = 192.168.1.1;" & _
        "Initial Catalog = 要连接的数据库名称"
    
    sql="delete from 某一表格名称 where 某一字段名='****'"
    '执行SQL语句
     cn.execute sql,n
    '返回所影响的行数
     msgbox n
     
    set cn=nothing

--------------------编程问答-------------------- create database gjlshining

use gjlshining
create table vb6_delete
(
    name varchar(50) primary key, 
    age integer not null default 0
)
insert into vb6_delete (name, age) values ('张三', 10)
insert into vb6_delete (name, age) values ('李四', 11)
insert into vb6_delete (name, age) values ('楼主', 20)

Private Sub Command3_Click()
    Dim dbComm As New ADODB.Command
    Dim sLocalhost As String
    Dim sSQL As String
    Dim sName As String
    
    Err.Clear
    On Error GoTo ErrorComm
    sLocalhost = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Initial Catalog=gjlshining;Data Source=localhost\SQLEXPRESS" '  这是本地连接数据库的一个写法,我不太懂,是网上搜到的;gjlshining是数据库名
    sName = "'张三'"
    sSQL = "delete from vb6_delete where name = " & sName
    dbComm.ActiveConnection = sLocalhost
    dbComm.CommandText = sSQL
    dbComm.Execute
    
    Set dbComm = Nothing'  我猜dbComm需要释放内存,但是不知道这样用对不对,因为Connection对象都有close,command对象没有
    Exit Sub
ErrorComm:
    If (Err.Number <> 0) Then
        MsgBox Err.Description, vbCritical + vbOKOnly, "错误提示"
        Set dbComm = Nothing
        Exit Sub
    End If
End Sub

我用的是sql server 2005 express因此 Data Source=localhost\SQLEXPRESS
--------------------编程问答-------------------- 和SQL里面的差不多,还是用SQL语句 
如:delete from 学生记录 where 姓名="张三"  --------------------编程问答-------------------- 友情up --------------------编程问答-------------------- 友情up --------------------编程问答-------------------- 友情up --------------------编程问答-------------------- 我用的是ADODC连接数据库,能不能在ADODC下实现这样的功能呢,求代码! --------------------编程问答-------------------- 还是慢慢的改用ADO吧 这个 --------------------编程问答-------------------- 对!改用ado吧,很方便的,上面已经说了用ADO创建实例的方法。你只需要在工程中引用ADO就行了。
方法:菜单”工程“→”引用“→Microsoft ActiveX Data object 2.8 library
较老的版本好像是2.5的,记不清了——尽量用新版本吧。 --------------------编程问答-------------------- 另外,使用ADODC连接库如果要删除记录得断开连接,否则会发生非独占错误(我几年前这样做过,那时是单机版),并且非常繁琐。 --------------------编程问答-------------------- 那更新和增加记录用断开连接吗 --------------------编程问答--------------------
ADODC1.Recordset.ActiveConnection.Execute "delete from 学生记录 where 姓名="张三" --------------------编程问答-------------------- 不好意思,近日比较忙,没有上网。修改后更新或增加是不必断开连接的,逻辑删除也不用,只有物理删除时才需要。 --------------------编程问答-------------------- 那用oledb的句子怎么写呢?好像控件实用dataset吧?
补充:VB ,  控件
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,