我写了一个方法要根据“表名”查询表里的字段名比如:
A C B
1 3 5
2 4 6
我查出列名数据就是
A
C
B
不需要排序,最好能够跟表里的字段顺序一致。
各位大大 支持一下。。。
需要MYSQL 、 SQL Server 、 Oracle 、
先谢谢 回答任意一个都给分。 如果可以我会加分
------解决方案--------------------------------------------------------
1、ADO连接数据库,用OPENSCHEMA取;
2、连接数据库后,直接读取系统表。
------解决方案--------------------------------------------------------
mysql 5.x以上:
select *from information_schema.columns
where table_schema='csdn' and table_name='test'
sqlserver:
select * from syscolumns
where id = (select id from sysobjects where name = '表名')
------解决方案--------------------------------------------------------
oracle:
select * from all_TAB_COLUMNS where table_name = 'ACHBATCH'//注意表名大写
------解决方案--------------------------------------------------------
这几种数据库都有它的数据字典,可以直接用SQL语句取到相关列信息,不需要通过ADO来逐FIELD来取。
mysql
select * from INFORMATION_SCHEMA.COLUMNS where TABLE_SCHEMA='db1' and TABLE_NAME='table1'
sqlserver:
select syscolumns.* from syscolumns inner join sysobjects on syscolumns.id = sysobjects.id where sysobjects.name = 'table1'
Oracle
select * from ALL_TAB_COLUMNS where table_name = 'TABLE1'