Private Sub mnuDel_Click()
'删除节点
Dim sKey As String
'Dim sFile As String
Dim oFS As FileSystemObject
Dim sPathFile As String
Dim sIndex As String
Dim sFlag As String
Set oFS = New FileSystemObject
On Error Resume Next
If MsgBox("确定要删除此类别[" & TreeView1.SelectedItem.Text & "]", vbYesNo, "静态信息") = vbYes Then
    sKey = TreeView1.SelectedItem.Key
    sIndex = TreeView1.SelectedItem.Index
'    sFile = sContentPath & sKey & "*" & ".htm"
'    sFlag = Check(sIndex)
    sFlag = Len(sKey) - 1
    If RemoveInfo(sKey) Then
        TreeView1.Nodes.Remove TreeView1.SelectedItem.Index
        sPathFile = Dir(sContentPath)
        While (sPathFile <> "")
            If Mid(sPathFile, 2, sFlag) = Right(sKey, Len(sKey) - 1) Then
'                oFS.DeleteFile sPathFile, True
                Kill sContentPath & sPathFile
            End If
            sPathFile = Dir
        Wend
        If TreeView1.SelectedItem.Children = 0 Then
           TreeView1.SelectedItem.Image = "closed"
        End If
    End If
End If
End Sub

 补充函数Dir用法,Dir(Path)遍历指定目录下的所有文件,第一次返回第一个文件,如果不想重复遍历,下一次调用时不要加参数。

函数Kill用法,Kill(Path&file)删除绝对路径下的文件,不可以缺少目录(或者只写文件名)。

While....Wend循环,类似于C语言的While循环。

If嵌套调用,If...Then...Elseif..Then....EndIf。

Private Function RemoveInfo(sSearch As String) As Boolean
Dim sSQL As String
Dim objDataAccess As clsDataAccess
RemoveInfo = False
On Error GoTo errHandle
'    sSQL = "Delete From BCCB_Info Where Id=" & Right(sSearch, Len(sSearch) - 1)
    sSQL = "Delete From BCCB_Info Where Id like '" & Right(sSearch, Len(sSearch) - 1) & "%'"
    Set objDataAccess = New clsDataAccess
    If objDataAccess.ExecSQL(sSQL) Then RemoveInfo = True
   
    Set objDataAccess = Nothing
Exit Function
errHandle:
    RemoveInfo = False
    Call WriteLog(DEBUG_LEVEL, "frmBCCBInfo.RemoveInfo Error" & err.Description)
    Set objDataAccess = Nothing
End Function

补充语法:

操作数据库过程:

声明一个连接,建立或者实例化一个连接,准备好SQL数据库语句,执行语句,释放连接(适用于Access)。

声明一个连接,建立或者实例化一个连接,声明一个数据集,建立或者实例化一个数据集,准备SQL数据库语句,执行数据库语句,释放数据集,释放连接(适用于ADO.RecordSet)。

VB.net删除节点,数据库,文件的更多相关文章

  1. ASP.NET在删除掉数据库文件后报错处理

    在开发asp.net mvc程序时,默认时我们会使用LocalDB, 我们有时会以为删除掉App_Data目录就可以自动新建数据库,但是我们在网站重新启动后(进入Account)就会发现报如下错误: ...

  2. 包含LOB_Data列的表删除大量数据后表及数据库文件的收缩

    最近有一张表(内含varchar(max)字段),占用空间达到240G,删除历史数据后几十万条后,空间并未得到释放. 然后用DBCC CLEANTABLE(0,tb_name,100)来释放删除记录后 ...

  3. 使用DOM解析XML文件,、读取xml文件、保存xml、增加节点、修改节点属性、删除节点

    使用的xml文件 <?xml version="1.0" encoding="GB2312" ?> <PhoneInfo> <Br ...

  4. mysql删除数据库文件ibdata1后引发的故障

    进行性能测试是发现大量报错: Duplicate entry主键重复 可以看到mysql数据库中已经没有innodb引擎启动信息了 之前发现ibdata1占用了大量硬盘,为了省出空间删除了数据库ibd ...

  5. iOS 把数据库文件打包到mainbundle中,查找不到路径的解决的方法;以及在删除bundle中文件的可行性

    在开发中有时我们须要把数据库文件打包到我们的项目中.一般我们都是在外部用工具生成数据库文件,然后拉入项目中.可是我们在程序中查找改文件时.返回的路径总是nil 解决的方法: 原因我们拉入其它资源文件( ...

  6. SQL Server中使用SQL语句关闭数据库连接和删除数据库文件

    有时候我们想用DROP DATABASE语句删除数据库和数据库文件,会删不掉,因为有其他人正在使用要删除的数据库,这里有一个方法可以强制断开其它数据库连接,再删除数据库. 假如我们要删除的数据库是[T ...

  7. C#操作XML(读XML,写XML,更新,删除节点,与dataset结合等)【转载】

    已知有一个XML文件(bookstore.xml)如下: Corets, Eva 5.95 1.插入节点 往节点中插入一个节点: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ...

  8. sql server还原数据库文件(.bak)常见问题解决办法笔记

    还原的时候出现错误:备份集中的数据库备份与现有的数据库不同 SQL Server 2005数据库还原出错错误具体信息为:备份集中的数据库备份与现有的A数据库不同 具体操作如下:第一次:新建了数据库A, ...

  9. Linux中删除特殊名称文件的多种方式

    今日分享:我们在肉体的疾病方面花了不少钱,精神的病害方面却没有花什么,现在已经到了时候,我们应该有不平凡的学校.--<瓦尔登湖> 前言 我们都知道,在linux删除一个文件可以使用rm命令 ...

随机推荐

  1. centos7 yum安装jdk

    安装之前先检查一下系统有没有自带open-jdk 命令: rpm -qa |grep java rpm -qa |grep jdk rpm -qa |grep gcj 如果没有输入信息表示没有安装. ...

  2. js中的 for, for in, for of foreach,filter使用

    下面是对数组进行循环 var array = [ { id: , name: 'ohzri', birth: '1999.09.09', city: '湖北', salary: }, { id: , ...

  3. JSON.stringify方法报错:Converting circular structure to JSON

    别以为JSON.parse(JSON.stringify(data))做深拷贝无敌,对于以下这种情况,当你需要保留父级对象,即 对象存在循环引用,就会报错. var a = [ { "id& ...

  4. RequestMapping 注解的解析、匹配、注册

    RequestMapping 注解的解析.匹配.注册 1)创建 RequestMappingHandlerMapping 实例时会触发 afterPropertiesSet 调用. 2)读取容器中所有 ...

  5. Python基础(函数部分)

    写在前面 加勒比海盗今天上映! 一.函数的基本概念 - 函数是什么?  函数,就是一个'锤子',一个具有特定功能的'锤子',使用者可以在适当的时候使用这个'锤子',而不用再去从头做一个'锤子':即可以 ...

  6. c# 排列组合代码类

    /// <summary> /// 排列组件算法类 /// </summary> /// <typeparam name="T"></ty ...

  7. yum 下载rpm包 安装rpm包依赖关系

    方法一:yumdownloader 工具 1.安装工具包 yum install yum-utils -y 2.下载一个RPM包 yumdownloader <package-name> ...

  8. 正则表达式分组(Grouping)

    一 捕获型 (x) 匹配 x ,并且捕获匹配项 const regExp = /(\w+)\s+(\d+)/; const str = 'Android 8'; str.replace(regExp, ...

  9. mysql5.6修改密码并授权所有远程用户可登陆

    1.my.ini文件,删除最后一行的"skip-grant-tables 2.执行"use mysql;",使用mysql数据库; 3.执行:update mysql.u ...

  10. fastjson @JSONField

    此文来源于:https://blog.51cto.com/xiaok007/2164029 1.作用在FIELD(成员变量上) 注意:1.若属性是私有的,必须有set*方法.否则无法反序列化. pac ...