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. 如何解决excel工作簿保护密码

    自己的excel文档设置了“保护工作簿”密码,但是密码又忘记了,怎么办? 如果你会编写代码,那么这个问题非常好解决.Excel内置功能不能解决的事儿,自己编写一段代码或许就可以搞定了. 第一步,大家已 ...

  2. STL标准库-容器-set与map

    STL标准库-容器-set与multiset C++的set https://www.cnblogs.com/LearningTheLoad/p/7456024.html STL标准库-容器-map和 ...

  3. Linux_系统进程管理

    目录 目录 进程管理 进程管理的指令 查看进程ps指令 pgreppidof指令查pid lsof查看系统中的进程 nice指令修改进程的nice值 kill指令结束进程 top系统进程管理器任务管理 ...

  4. map根据属性排序、取出map前n个

    /** * map根据value排序 * flag = 1 正序 * flag = 0 倒序 * * @param map * @param flag * @return */ public stat ...

  5. 彻底理解RSA算法原理

    1. 什么是RSA RSA算法是现今使用最广泛的公钥密码算法,也是号称地球上最安全的加密算法.在了解RSA算法之前,先熟悉下几个术语 根据密钥的使用方法,可以将密码分为对称密码和公钥密码 对称密码:加 ...

  6. HTML5——新表单元素 表单属性 语义元素

    表单元素 新的表单元素 datalist——输入域选项列表 keygen——提供一种验证用户的可靠方法 output——不同类型的输出,比如计算或脚本输出 表单属性 <form> / &l ...

  7. Jmeter---不同线程组的使用介绍(转)

    在添加线程组:发现线程组种类挺多的  翻查资料后对几个工具进行总结: 原本想写三个 在翻阅资料,后发现下面博文比较详情, 本文大部分来自: https://blog.csdn.net/sinat_32 ...

  8. <class 'blog.admin.CategoryAdmin'>: (admin.E108) The value of 'list_display[0]' refers to 'mame', which is not a callable, an attribute of 'CategoryAdmin', or an attribute or method on 'blog.Category'

    系统反馈此类错误是因为行列映射时无法对应: 引起无法对应的原因有: 定义是缺少某列,定义时缩进导致,映射关系时缺少某列,(通俗讲列名对应不上). 这种错误多是python中的 因为其中对于空格的要求是 ...

  9. Spring Boot 为什么这么火?(二)

    Spring Boot 的火 网上连载了 Spring Boot 系列文章,没想到这一开始便与 Spring Boot 深度结缘. 技术社区 Spring Boot 的文章越来越多:Spring Bo ...

  10. 更新代码 出现 You need to upgrade the working copy first 错误

    今天更新了Eclipse的subclipse插件,更新代码报如下错误: svn: The working copy at 'E:\591woospace\kst_fashion_alipay_v1.2 ...