用VBA如何获取access数据库中字段的数据类型?

用VBA如何获取access数据库中字段的数据类型?,第1张

1、打开相应的access数据库

2、在左边的对象栏里单击模块,观察右边的窗口,如果里面有模块,可以双击打开。如果没有新建一个模块,然后双击打开。

3、粘贴以下代码并运行、观察立即窗口。

Private Sub aaaa()

    Dim TableName As String, FieldName As String, i As Integer

    TableName = "tb1" '表名 tb1

    FieldName = "编号" '字段名 编号

    

        Select Case CurrentDb.TableDefs(TableName)(FieldName).Type

        Case dbBoolean

            Debug.Print "是/否"

        Case dbByte

            Debug.Print "数字(字节)"

        Case dbInteger

            Debug.Print "数字(整型)"

        Case dbLong

            If (CurrentDb.TableDefs(TableName)(FieldName).Attributes And dbAutoIncrField) = dbAutoIncrField Then

                Debug.Print "自动编号(长整型)"

            Else

                Debug.Print "数字(长整型)"

            End If

        Case dbSingle

            Debug.Print "数字(单精度)"

        Case dbDouble

            Debug.Print "数字(双精度)"

        Case dbDecimal

            Debug.Print "数字(小数)"

        Case dbCurrency

            Debug.Print "货币"

        Case dbDate

            Debug.Print "日期/时间"

        Case dbText

            Debug.Print "文本"

        Case dbMemo

            If (CurrentDb.TableDefs(TableName)(FieldName).Attributes And dbHyperlinkField) = dbHyperlinkField Then

                Debug.Print "超链接"

            Else

                Debug.Print "备注"

            End If

        Case dbGUID

            Debug.Print "自动编号(自动复制ID)"

        End Select

    

End Sub

执行 sql语句 “show columns from tbname” tbname 是要获取的表的表名

会得到 一个结果集 包含了字段名  数据类型  是否可以为空  是否主键 默认值 是否自增 等信息 要改足够使用了

1、 //看当前使用的是哪个数据库 ,如果你还没选择任何数据库,结果是NULL。

mysql>select database() 

+------------+ 

| DATABASE() | 

+------------+ 

| menagerie  | 

+------------+ 

2、//查看有哪些数据库

mysql> show databases  

+--------------------+

| Database           | 

+--------------------+ 

| information_schema | 

| mysql              | 

| test               | 

+--------------------+ 

3、//选择数据库  

mysql>use test  //号可有可无,必须单行使用.

4、为了找出当前的数据库包含什么表(例如,当你不能确定一个表的名字),使用这个命令: 

5、//看数据库里有哪些表

mysql>show tables  

+---------------------+

| Tables in menagerie | 

+---------------------+ 

| event               | 

| pet                 | 

+---------------------+ 

如果你想要知道一个表的结构,可以使用DESCRIBE命令;它显示表中每个列的信息: 

6、//看表里有哪些列

mysql>describe pet  

+---------+-------------+------+-----+---------+-------+

| Field   | Type        | Null | Key | Default | Extra | 

+---------+-------------+------+-----+---------+-------+ 

| name    | varchar(20) | YES  |     | NULL    |       | 

| owner   | varchar(20) | YES  |     | NULL    |       | 

| species | varchar(20) | YES  |     | NULL    |       | 

| ***     | char(1)     | YES  |     | NULL    |       | 

| birth   | date        | YES  |     | NULL    |       | 

| death   | date        | YES  |     | NULL    |       | 

+---------+-------------+------+-----+---------+-------+ 

Field显示列名字,Type是列的数据类型,Null表示列是否能包含NULL值,Key显示列是否被索引而Default指定列的默认值。 

如果表有索引,SHOW INDEX FROM tbl_name生成有关索引的信息。 

删除数据库. 

mysql>drop database test


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9252840.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-26
下一篇2023-04-26

发表评论

登录后才能评论

评论列表(0条)

    保存