首页 > 数据库 >VB创建ACCESS数据库和数据表

VB创建ACCESS数据库和数据表

时间:2023-05-29 10:23:44浏览次数:45  
标签:VB 字节 DBTYPE ACCESS 数据表 带符号 整型 Conn Sub

建立数据库

 1 Public Sub BD_Create()
 2 
 3     On Error GoTo db_err
 4 
 5     Dim pstr As String
 6     
 7     Dim tb1 As New Table
 8     
 9     pstr = "PROVIDER=Microsoft.Jet.OLEDB.4.0;" '必须用4.0
10     
11     pstr = pstr & "Data Source=" & AppPath & "jtl.mdb;"
12     
13     Db.Create (pstr)
14     
15     Db.ActiveConnection = pstr
16     
17     tb1.Name = "平均力值" '设定表名
18     
19     tb1.ParentCatalog = Db
20     
21     tb1.Columns.Append "DevCode", adVarWChar    
22     
23     Exit Sub
24 
25 db_err:
26     MsgBox " 数据库创建失,系统中已有数据库!" & Err.Description, vbExclamation + vbOKOnly, " 创建失败..."
27     DB_Disconnect
28 End Sub

连接数据库

'===============================================
'连接数据库
Public Sub DB_Connect()

    On Error GoTo db_err

    Conn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & AppPath & "jtl.mdb;"

    If Conn.State = adStateOpen Then State_Conn = True

    Exit Sub

db_err:
    MsgBox " 无法连接数据库:" & Err.Description, vbExclamation + vbOKOnly, " 连接失败..."
    DB_Disconnect
End Sub
'</Added by: Project Administrator at: 2023-5-25-下午 09:18:39 on machine: U5V07SRJVLTECTJ>

'===============================================
'关闭数据库
Public Sub DB_Disconnect()

    If Conn.State <> adStateClosed Then Conn.Close
    Set Conn = Nothing
    State_Conn = False
End Sub

'获得数据库连接状态
Public Property Get ConnState() As Boolean
    ConnState = State_Conn
End Property

Private Sub Class_Initialize()
    State_Conn = False
End Sub

 ACCESS数据表的更新

Public Sub UA_RecData()

    Dim sql As String
    Dim rs As New ADODB.Recordset
    sql = "select * from 平均力值 where FDateTime ='" & pdtDateTime & "'"
    rs.Open sql, Conn, adOpenKeyset, adLockReadOnly
    If rs.RecordCount Then
        Updata_RecData
    Else
        Add_RecData
    End If
    Debug.Print rs.RecordCount
    rs.Close’注意使用后关掉数据表
    
Add_Err:
End Sub

 

ACCESS库字段变量类型

自动编号用:adNumeric,备注用adLongVarWChar
以下是部分说明:
adBigInt 8 字节带符号的整数 (DBTYPE_I8).
adBinary 二进制值 (DBTYPE_BYTES).
adBoolean 布尔型值 (DBTYPE_BOOL).
adByRef 与其他类型一起加入逻辑 OR 以指示该数据是其他类型数
据的指针 (DBTYPE_BYREF).
adBSTR 以空结尾的字符串 (Unicode) (DBTYPE_BSTR).
adChar 字符串值 (DBTYPE_STR).
adCurrency 货币值 (DBTYPE_CY).货币数字的小数点位置固定、小数
点右侧有四位数字.该值保存为 8 字节范围为10,000 的带符
号整型值.
adDate 日期值 (DBTYPE_DATE).日期按双精度型数值来保存, 数
字全部表示从 1899 年 12 月 30 开始的日期数.小数部分是
一天当中的片段时间.
adDBDate 日期值 (yyyymmdd) (DBTYPE_DBDATE).
adDBTime 时间值 (hhmmss) (DBTYPE_DBTIME).
adDBTimeStamp 时间戳 (yyyymmddhhmmss 加 10 亿分之一的小数)(DBTYPE_DBTIMESTAMP).
adDecimal 具有固定精度和范围的精确数字值 (DBTYPE_DECIMAL).
adDouble 双精度浮点值 (DBTYPE_R8).
adEmpty 未指定值 (DBTYPE_EMPTY).
adError 32 - 位错误代码 (DBTYPE_ERROR).
adGUID 全局唯一的标识符 (GUID) (DBTYPE_GUID).
adIDispatch OLE 对象上 Idispatch 接口的指针 (DBTYPE_IDISPATCH).
adInteger 4 字节的带符号整型 (DBTYPE_I4).
adIUnknown OLE 对象上 IUnknown 接口的指针 (DBTYPE_IUNKNOWN).
adLongVarBinary 长二进制值.
adLongVarChar 长字符串值.
adLongVarWChar 以空结尾的长字符串值.
adNumeric 具有固定精度和范围的精确数字值 (DBTYPE_NUMERIC).
adSingle 单精度浮点值 (DBTYPE_R4).
adSmallInt 2 字节带符号整型 (DBTYPE_I2).
adTinyInt 1 字节带符号整型 (DBTYPE_I1).
adUnsignedBigInt 8 字节不带符号整型 (DBTYPE_UI8).
adUnsignedInt 4 字节不带符号整型 (DBTYPE_UI4).
adUnsignedSmallInt 2 字节不带符号整型 (DBTYPE_UI2).
adUnsignedTinyInt 1 字节不带符号整型 (DBTYPE_UI1).
adUserDefined 用户定义的变量 (DBTYPE_UDT).
adVarBinary 二进制值.
adVarChar 字符串值.
adVariant 自动变体型 (DBTYPE_VARIANT).
adVector 与其他类型一起加入逻辑 OR 中, 指示数据是 DBVECTOR
结构(由 OLE DB 定义).该结构含有元素的计数和其他类型
(DBTYPE_VECTOR) 数据的指针.
adVarWChar 以空结尾的 Unicode 字符串.
adWChar 

ACCESS字段变量类型

1.文本型(Text):用于输入文本或文本与数字相结合的数据,最长为255个字符(字节),默认值是50。在Access中,每一个汉字和所有特殊字符(包括中文标点符号)都算作一个字符。

表示方法:用英文单引号(’ ’)或英方双引号(” ”)括起来。例:’王刚’、’会计2班’、’3246291’等。

2.货币型(Currency):用来存储货币值,占8个字节,在计算中禁止四舍五入。

3.数字型(Number):用于可以进行数值计算的数据,但货币除外。数字型字段按字段大小分字节、整型、长整型、单精度型、双精度型、同步复制ID和小数7种情形,分别占1、2、4、4、8、16和12个字节。

表示方法:直接书写即可。例:3246291

4.日期/时间型(Date/Time):用于存储日期和(或)时间值,占8个字节。

表示方法:用英文字符#号括起来。例:#2010-02-25#、#02/25/2010#、#2010-02-25 15:30#、#2010-02-25 3:30pm#、#15:30#都是合法的表示方法。不过要注意:日期和时间之间要留有一个空格。

5.自动编号型(AutoNumber):用于在添加记录时自动插入的序号(每次递增1或随机数),默认是长整型,也可以改为同步复制ID。自动编号不能更新。

6.是/否型(Yes/No):用于表示逻辑值(是/否,真/假),占1个字节。

表示方法: .T. .F. True false

7.备注型(Memo):用于长文本或长文本与数字(大于255个字符)的结合,最长为65535个字符。

8.OLE对象型(OLE Object):用于使用OLE协议在其它程序中创建的OLE对象(如Word文档、Excel电子表格、图片、声音等),最多存储1GB(受磁盘空间限制)。

9.超级链接型(Hyper Link):用于存放超级链接地址,最多存储64000个字符。

10.查阅向导型(Lockup Wizard):让用户通过组合框或列表框选择来自其它表或值列表的值,实际的字段类型和长度取决于数据的来源。

11、附件 ,新版本新增的数据类型,可以上传图片或文件。

 

'adkeyPrimary 1 是默认值,此键是主键
'adkeyForeign 2 此键是外键
'adKeyUnique 3 此键盘是唯一键

 

rst.Open "tblVoucher", conn, adOpenKeyset, adLockOptimistic什么意思

简单理解为打开表tblVoucher 

这个参数有四个值分别是: 
adOpenForwardOnly 表示只允许在记录集内的记录间往前移动。这个是缺省值。 
adOpenKeyset 反映由其它用户所做的对记录的改变或者删除动作,但并不反映由其它用户做作的添加新记录的动作。 
adOpenDynamic 反映由其它用户所做的对记录的改变或者删除动作,包括添加的新记录 
adOpenStatic 不反映其它用户对记录所做的修改,添加,删除动作。 
这四个值VBSCRIPT预定义位 
adOpenForwardOnly = 0 
adOpenKeyset = 1 
adOpenDynamic = 2 
adOpenStatic = 3 
lockType 表示当打开记录集时,数据提供者用于锁定数据库的类型: 
adLockReadOnly 数据不能改变,这是缺省值! 
adLockPessimistic 数据提供者在开始编辑数据的时候锁定记录 
adLockOptimistic 仅当调用update方法时,数据提供者锁定记录 
adLockBatchOptimistic 用于批处理修改 
他们的常量值定义分别是: 
adLockReadOnly = 1 
adLockPessimistic = 2 
adLockOptimistic = 3 
adLockBatchOptimistic = 4

 

 

 

标签:VB,字节,DBTYPE,ACCESS,数据表,带符号,整型,Conn,Sub
From: https://www.cnblogs.com/hardenzhao/p/17434176.html

相关文章

  • 1万5千求职面试宝典大全ACCESS\EXCEL数据库
    《求职面试宝典大全ACCESS数据库》包含:1-穿着打扮、2-随身携带、3-场景指导、4-考官分析、5-考官问题、6-回答参考表、7-面试大全。虽然有些表的记录数不多,但胜在信息全面以及考官问题及答案的全面。问题类型记录数为:待遇问题(10条)、个人素养(10条)、教育家庭(10条)、经验问题(10条)、......
  • 上万条开心驿站笑话内容ACCESS\EXCEL数据库
    因为签于网站笑话不是采用微博型(一句或两句短篇可以采用250长度的文本型存储),而是所以文章内容型,所以内容保存的字段是MicrosoftAccess数据库里的备注类型。数据库内容经过整理,格式比较统一,比如不会有多余的段落或不整齐的段落;分类比较集中,只有爆笑男女(305)、儿童笑话(594)、夫妻......
  • 执行VBA出现3706错误的解决方案
    现在自用电脑只安装wps,没有安装office了,执行vba居然报3706错误,代码调试好了没改动,那么只有一种可能就是数据库连接有问题了。出现这个提示,安装AccessDatabaseEngine.exe,即可Access 2010数据库引擎:https://download.csdn.net/download/weixin_42750611/12409896安装注意事项:①......
  • Doris(二) -- 基本概念和数据表模型
    字段类型数据类型字节范围TINYINT1字节-2^7+1~2^7-1SMALLINT2字节-2^15+1~2^15-1INT4字节-2^31+1~2^31-1BIGINT8字节-2^63+1~2^63-1LARGEINT16字节-2^127+1~2^127-1FLOAT4字节支持科学计数法DOUBLE......
  • 《卫斯理》之《寻梦》故事梗概(TVB罗嘉良版)
    前清光绪十一年秋,北京东门外同德镇,有两个富商在女支院喝花酒时被女支(ji)女翠莲发现他们随身携带巨款,翠莲唆使暗恋自己的同德酒坊伙计展翼下药害死了两富商,又支使流民王成和梁国忠将尸首埋葬。事后来人查察时,四人串供互相提供不在场证明一时瞒过了官府。几天后,翠莲王成梁国忠失踪,展......
  • solidworks vba 导出数据到文本文件
    Thismacroexportsalltheinformationintotheoutputtextfileinthefollowingformat:OptionExplicitConstcurrentDirAsString="D:\"'DimswAppAsSldWorks.SldWorksSubmain()DimfilePathAsStringfilePath=currentDi......
  • 近2万条情感的秘密故事网站ACCESS\EXCEL数据库
    今天从一个情感的秘密故事网站采集了一些数据,采集这些数据的原因是因为这些情感上的秘密感觉挺吸引人的,尽管自己的情感可能是“正经”的,但是通过阅读别人情感上的那些秘密故事,也是可以丰富生活的。数据量有些大,而且也有分类,分类统计情况为:感情婚姻(2139)、工作职场(436)、家庭教育(457......
  • 近万条一级分类经典短信大全ACCESS\EXCEL数据库
    近万条一级分类经典短信大全ACCESS数据库收集的是近万条常用经典短信,之所以称“一级分类”(意思是只有一个大类没有子类),原因是为了区别另外一个有二级分类的短信数据库。近万条一级分类经典短信大全ACCESS数据库中的短信都是经过索引没有收录重复的记录。大类分类情况是:爱情短信(1......
  • 2万多条QQ签名论坛签名大全ACCESS\EXCEL数据库
    2万多条QQ签名论坛签名大全ACCESS数据库收录了感情,恋爱,哲理,诗词,个性等7类共20000余条的QQ签名或论坛签名,有些包含幽默搞笑也有些蕴含哲理。您可以从中选择自己喜欢的作为自己的签名。截图下方有显示“共有记录数”,截图包含了表的所有字段列。该数据提供ACCESS数据库文件(扩展名是......
  • 4万多条糗事百科网站数据ACCESS\EXCEL数据库
    这个ACCESS数据库采集的是糗事百科小清新网站的内容,而且内容大于400字的将不收集(内容太长的大多是裹脚布),我要的是浓缩的精华。如果你需要实时采集糗事百科的应用程序,也可以联系我获得。 本数据库是由MicrosoftAccess2000创建的MDB数据库文件,您需要使用MicrosoftAccess......