zoukankan      html  css  js  c++  java
  • VBS编辑字段

    '为已经创建好的数据表添加字段
    '参数:strDBPath 字符串型 数据库路径
    '参数:strTableName 字符串型 需要创建的数据表的名称
    '参数:strColumnName 字符串型 需要添加的字段名称
    '参数:strColumnType 字符串型 需要添加的字段数据类型
    Sub AddColumn(strDBPath, strTableName, strColumnName, strColumnType)
        Dim connObj
        Set connObj = CreateObject("ADODB.Connection")
        connObj.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
        "Data Source = " & strDBPath
        connObj.Execute "ALTER TABLE " & strTableName& vbCrLf & _
        "ADD " & strColumnName & " "& strColumnType
        connObj.Close
        Set connObj = Nothing
    EndSub

    '例子如下:

    AddColumn "C:Test.mdb", "TestTable", "测试添加字段", "varchar(255)"

    '为C:Test.mdb中的TestTable表添加 名称为 测试添加字段 数据类型为 字符串型 的字段

    '删除字段
    '参数跟上面的一样,就不多做介绍了,为什么是3个参数,删除字段,只要字段名称就完事了,扯不到数据类型。
    Sub DeleteColumn(strDBPath, strTableName, strColumnName)
        Dim connObj
        Set connObj = CreateObject("ADODB.Connection")
        connObj.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
        "Data Source = " & strDBPath
        connObj.Execute "ALTER TABLE " & strTableName& vbCrLf & _
        "DROP COLUMN " & strColumnName
        connObj.Close
        Set connObj = Nothing
    EndSub

    '使用例子:
    DeleteColumn "C:Test.mdb", "TestTable", "测试添加字段"

    '修改字段的数据类型
    '参数同AddColumn
    Sub AlterColumnType(strDBPath, strTableName, strColumnName, strColumnType)
        Dim connObj
        Set connObj = CreateObject("ADODB.Connection")
        connObj.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
        "Data Source = " & strDBPath
        connObj.Execute "ALTER TABLE " & strTableName& vbCrLf & _
        "ALTER COLUMN " & strColumnName & " " & strColumnType
        connObj.Close
        Set connObj = Nothing
    EndSub

    '使用例子:
    AlterColumnType "C:Test.mdb", "TestTable", "测试添加字段", "int"

    '字段重命名
    '参数:strDBPath 数据库所在路径
    '参数:strTableName 表名称
    '参数:strOldName 旧字段名
    '参数:strNewName 新字段名
    Sub AlterColumnName(strDBPath, strTableName, strOldName, strNewName)
        Dim catObj
        Set catObj = CreateObject("ADOX.Catalog")
        catObj.ActiveConnection="Provider=Microsoft.Jet.OLEDB.4.0;"& _
        "Data Source= " & strDBPath
        catObj.Tables(strTableName).Columns(strOldName) = strNewName
        Set catObj = Nothing
    EndSub

    '字段重命名并非是用的ADODB.Connection对象,而是用的ADOX.Catalog对象,也就是创建数据库的这个对象,如果认真读代码,并且认真了解过的人,一眼就看出怎么进行数据表重命名的操作了,我也就不用说了。

    '使用例子
    AlterColumnName "C:Test.mdb", "TestTable", "测试添加字段", "测试修改"

    '将C:Test.mdb的TestTable表中的 "测试添加字段" 重命名 为 "测试修改"

    '执行SQL语句
    '留出一个直接用SQL进行数据表操作的函数。
    '其实认真学习的人,自己随便都可以写了。
    Sub TableExecuteSQL(strDBPath, strSQLCode)
        Dim connObj
        Set connObj = CreateObject("ADODB.Connection")
        connObj.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
        "Data Source = " & strDBPath
        connObj.Execute strSQLCode
        connObj.Close
        Set connObj = Nothing
    EndSub

    Dim connObj,rsObj
    Set connObj = CreateObject("ADODB.Connection") 
    '还是需要用到ADODB.Connection对象来进行数据库的连接
    connObj.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=C:Test.mdb"
    '可以先把连接数据库的参数写到对象的ConnectionString属性中,Open的时候就可以不用写参数了。
    connObj.Open
    Set rsObj = CreateObject("ADODB.RecordSet") '数据的操作,主要靠的是ADODB.RecordSet对象
    '好吧,打开数据表。
    rsObj.Open "select * FROM TestTable", connObj, 1, 3
    '关于参数 "select * FROM TestTable" 这就是SQL的语句了,意思是,FROM 从TestTable表中 打开select *任意字段名
    '第二个参数就是已经连接好数据库的ADODB.Connection对象connObj
    '第3个参数和第4个参数,100个帖子里面都是1,3,我也不知道具体啥意思,反正能用就可以了,有兴趣的自己百度ADODB.RecordSet研究去。
    '我们先来添加一条数据
    rsObj.AddNew 
    '添加很简单,就AddNew就完事了,添加之后,就需要填入各字段的数据了。
    IfNot rsObj.Eof Then
    rsObj("姓名") = "张三"
    rsObj("性别") = "男"
    rsObj("年龄") = 20
    EndIf
    '好了,这就填完了,简单吧,关于Eof属性,我在明天会详细介绍,百度上搜出来的东西,都太专业了,我都理解了好半天并且测试之后才玩懂了。
    '我们多添加几条吧
    rsObj.AddNew
    IfNot rsObj.Eof Then
    rsObj("姓名") = "李四"
    rsObj("性别") = "男"
    rsObj("年龄") = 21
    EndIf
    rsObj.AddNew
    IfNot rsObj.Eof Then
    rsObj("姓名") = "王二"
    rsObj("性别") = "男"
    rsObj("年龄") = 22
    EndIf
    '整个妹子吧
    rsObj.AddNew
    IfNot rsObj.Eof Then
    rsObj("姓名") = "小倩"
    rsObj("性别") = "女"
    rsObj("年龄") = 18
    EndIf

    '再整个不正常的
    rsObj.AddNew
    IfNot rsObj.Eof Then
    rsObj("姓名") = "骡子"
    rsObj("性别") = "未知"
    rsObj("年龄") = 2
    EndIf
    rsObj.Update '更新操作后的数据库。
    '好了,添加数据,就暂时到这里。
    '我们再来看看,打开时,直接查找数据
    rsObj.Open "select * FROM TestTable where 姓名 = '"& "骡子" & "'", connObj, 1, 3'FROM 从表 TData 中where 
    '中的字段 姓名 查找 字段名为 '张三' 的数据。
    '请自己注意看SQL语句的代码,SQL语句中,字符串常量是要用单引号的 如:'张三' '李四' '小倩' 
    ifNot rsObj.Eof Then
    MsgBox rsObj("性别") '如果找到,则弹出骡子的性别。
    rsObj("性别") = "公"'修改骡子的性别
    EndIf
    rsObj.Update '更新操作后的数据库。
    MsgBox rsObj("性别") '再次弹出骡子的性别
    rsObj.Delete '删除关于骡子的这整条数据
    rsObj.Update '更新操作后的数据库。
    rsObj.Close '最后别忘了关闭操作句柄
    connObj.Close '关闭连接
    Set rsObj = Nothing
    Set connObj = Nothing

    '在表中新增一条数据
    '参数:strDBPath 字符串型 数据库所在路径
    '参数:strTableName 字符串型 数据表名称
    '参数:strData 字符串型 写入各个字段的值,关于该参数的详细说明在下面,请先看使用例子。

    Sub AddNewData(strDBPath, strTableName, strData)
    Dim connObj, rsObj, catObj, saData, saPlace, i, saTemp, saType, saCol, saCon
    Set connObj = CreateObject("ADODB.Connection")

    connObj.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Data Source = " & strDBPath

    Set rsObj = CreateObject("ADODB.RecordSet")
    rsObj.Open "select * FROM " & strTableName, connObj, 1, 3

    rsObj.AddNew

    Set catObj = CreateObject("ADOX.Catalog")
    catObj.ActiveConnection="Provider=Microsoft.Jet.OLEDB.4.0;"& _
    "Data Source= " & strDBPath

    saData = Split(strData, ",")
    saPlace = UBound(saData)
    For i = 0To saPlace
    saTemp=Split(saData(i),"=")
    saCol=Trim(saTemp(0))
    saType = catObj.Tables(strTableName).Columns(saCol).Type
    If saType = 202Then
    saCon = CStr(Trim(saTemp(1)))
    ElseIf saType = 3Then
    saCon = CInt(Trim(saTemp(1)))
    EndIf
    rsObj(saCol)=saCon
    'MsgBox saCol & "," & saType& "," & saCon
    Next
    rsObj.Update
    rsObj.Close
    connObj.Close
    Set rsObj = Nothing
    Set connObj = Nothing
    Set catObj = Nothing
    EndSub


    '使用例子
    AddNewData "C:Test.mdb", "TestTable", "姓名=赵钱孙, 性别=男,年龄=24"

  • 相关阅读:
    nagios安装配置
    Nagios:企业级系统监控方案
    使用Maven搭建Struts2+Spring3+Hibernate4的整合开发环境
    SecureCRT最佳配色方法+直接修改默认配置方法
    highcharts插件使用总结和开发中遇到的问题及解决办法
    关于Highcharts图表组件动态修改属性的方法(API)总结之Series
    Linux中环境变量文件及配置
    使用正则表达式匹配任意字符包括空格和换行符
    设置mysql远程连接root权限
    java读取文件夹下所有文件并替换文件每一行中指定的字符串
  • 原文地址:https://www.cnblogs.com/futrueface/p/4123314.html
Copyright © 2011-2022 走看看