用C#代码 怎样获取数据库的所有的表名

用C#代码 怎样获取数据库的所有的表名,第1张

软糖来回答这个问题把。

1使用Connection的GetSchema方法,参数为"Tables"

        public IList<string> 获取表集合(SqlConnection 连接)

        {

            List<string> 表名 = new List<string>();

            DataTable dt = 连接GetSchema("Tables");

            foreach (DataRow row in dtRows)

            {

                string 表类型 = (string)row["TABLE_TYPE"];

                if (表类型Contains("TABLE"))

                { 表名Add(row["TABLE_NAME"]ToString()); }

            }

            return 表名;

        }

2使用SELECT语句针对系统表进行 *** 作

        public IList<string> 获取表集合2(SqlConnection 连接)

        {

            SqlCommand 命令 = new SqlCommand

            (@"SELECT name FROM sysobjects WHERE (OBJECTPROPERTY(id, N'IsUserTable') = 1)", 连接);

            List<string> 表名 = new List<string>();

            SqlDataReader 读取器 = 命令ExecuteReader();

            while (读取器Read())

            {

                string 名称 = 读取器[0]ToString();

                表名Add(名称);

            }

            读取器Close();

            return 表名;

        }

以上两种方法都是针对SQL SERVER数据库测试有效,其他的数据库可能需要修改部分代码。

如满意,请采纳,谢谢。

用sql获取数据库中所有的表名的方法:

1、oracle下:select

table_name

from

all_tables;

2、MySQL下:select

table_name

from

information_schematables

where

table_schema='csdb'

and

table_type='base

table';

3、sql

server下:select

name

from

systables

go

方法如下,以oracle为例:

select from all_tables WHERE owner='SCOTT' ;或者

SELECT FROM DBA_TABLES WHERE OWNER='SCOTT';

数据字典视图

表和列

DBA_TABLES、ALL_TABLES和USER_TABLES显示了有关数据库表的一般信息。

DBA_TAB_COLUMNS、ALL_TAB_COLUMNS和USER_TAB_COLUMNS显示了每个数据库表的列的信息。

注意:DBA_OBJECTS、ALL_OBJECTS和USER_OBJECTS显示了模式对象的信息,包括表。

觉得你应该先弄清楚oracle的常规数据字典的结构,像9i里的常规数据字典中对象名称就有以user,all,dba为前缀的对象。

以user为例,我们查该对象下有些什么表,就应该执行下列的语句

sql>select

table_name

from

user_tables;

类似的,你可以进行替换。:)

如果你想查数据库中所有的表的话,可以查询

select

from

dba_tables

如果你想查询数据库中某个用户下的表的话,也可以登录这个用户,再查询:

select

from

user_tables

要想导入外部sql语句可以用命令

sql

>@e:\文件名sql

如你想保存

select

from

tablename;语句的结果,可以在sqlplus

里面这样:

spool

c:\testsql

//这是保存文件的位置

select

from

tablename;

spool

off

$dbh是new PDO()

$dbh->exec("show tables");--获取所有表#

$dbh->exec("desc 表名");--查询表结构

以上就是关于用C#代码 怎样获取数据库的所有的表名全部的内容,包括:用C#代码 怎样获取数据库的所有的表名、怎样获取mysql数据库里所有表的名字、怎么用SQL语句获取指定数据库中的所有表名等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/sjk/9340837.html

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

发表评论

登录后才能评论

评论列表(0条)

保存