首页 > 数据库 >sql 全部表名

sql 全部表名

时间:2023-12-11 11:04:33浏览次数:77  
标签:tables sp -- sql 表名 全部 SQL

sql 全部表名


https://blog.51cto.com/u_16055028/7211099

def all_table():
    statement_1 = r"SELECT * FROM sysobjects WHERE xtype='U'; -- 利用sysobjects系统表"
    statement_2 = r"SELECT * FROM sys.tables; -- 利用sys.tables目录视图"
    statement_3 = r"EXEC sp_tables; -- 利用存储过程sp_tables"
    con = mssql_con()
    df = pd.read_sql(statement_3, con)
    return df.shape
all_table()

exec 查到的最多 包含了视图

在SQL中,获取所有表名的方法取决于你使用的数据库系统。以下是一些常见数据库系统的查询语句¹:


- **Oracle**:

```sql

SELECT * FROM ALL_TABLES; -- 系统里有权限的表

SELECT * FROM DBA_TABLES; -- 系统表

SELECT * FROM USER_TABLES; -- 当前用户下的表

```

- **SQL Server**:

```sql

SELECT * FROM sysobjects WHERE xtype='U'; -- 利用sysobjects系统表

SELECT * FROM sys.tables; -- 利用sys.tables目录视图

EXEC sp_tables; -- 利用存储过程sp_tables

```


获取每个表的第一行数据,你可以使用`LIMIT`(在MySQL中)或者`TOP`(在SQL Server中)关键字。但是,你需要为每个表单独执行查询。以下是一个例子²:


```sql

SELECT * FROM 表名 LIMIT 1; -- MySQL

SELECT TOP 1 * FROM 表名; -- SQL Server

```


请注意,你需要将`表名`替换为你想要查询的实际表名。


希望这个信息对你有所帮助!如果你有任何其他问题,欢迎随时向我提问。¹²


源: 与必应的对话, 2023/12/11

(1) 利用SQL语句查询数据库中所有表 - CSDN博客. https://blog.csdn.net/Fuyouche/article/details/8039197.

(2) SQL 如何从 SQL 查询中提取表名和列名 - 极客教程. https://geek-docs.com/sql/sql-ask-answer/173_sql_how_to_extract_table_names_and_column_names_from_sql_query.html.

(3) MS SQL查询所有表行数,获取所有数据库名,表名,字段名 - po-A - 博客园. https://bing.com/search?q=sql+%e8%8e%b7%e5%8f%96%e5%85%a8%e9%83%a8%e8%a1%a8%e5%90%8d%e5%92%8c%e7%ac%ac%e4%b8%80%e8%a1%8c.

(4) MS SQL查询所有表行数,获取所有数据库名,表名,字段名 - swtool - 博客园. https://www.cnblogs.com/swtool/p/5305963.html.

(5) sqlserver查询数据的所有表名和行数及空间占用量 - 腾讯云. https://cloud.tencent.com/developer/article/2044354.

(6) MS SQL查询所有表行数,获取所有数据库名,表名,字段名 - po-A - 博客园. https://www.cnblogs.com/watermarks/p/3740109.html.



`EXEC sp_tables`是SQL Server中的一个系统存储过程,它返回可以在当前环境中查询的对象列表²。这表示任何表或视图,但同义词对象除外²。


以下是`sp_tables`的语法²:

```sql

EXEC sp_tables [ @table_name = ] 'name'  

[ , [ @table_owner = ] 'owner' ]  

[ , [ @table_qualifier = ] 'qualifier' ]  

[ , [ @table_type = ] "type" ]  

[ , [@fUsePattern = ] 'fUsePattern'];

```

其中:

- `@table_name`:用来返回目录信息的表的名称²。

- `@table_owner`:用来返回目录信息的表的所有者²。

- `@table_qualifier`:表限定词的名称²。在SQL Server中,此列代表数据库名称²。

- `@table_type`:以逗号分隔的值列表,可以提供指定之表类型之所有表的相关信息²。其中包括TABLE、SYSTEMTABLE和VIEW²。

- `@fUsePattern`:判断字符_、% [和]是否解释为通配符²。


希望这个信息对你有所帮助!如果你有任何其他问题,欢迎随时向我提问。¹²³。


源: 与必应的对话, 2023/12/11

(1) sp_tables (Transact-SQL) - SQL Server | Microsoft Learn. https://learn.microsoft.com/zh-tw/sql/relational-databases/system-stored-procedures/sp-tables-transact-sql?view=sql-server-ver16.

(2) sp_tables_ex (Transact-SQL) - SQL Server | Microsoft Learn. https://learn.microsoft.com/zh-tw/sql/relational-databases/system-stored-procedures/sp-tables-ex-transact-sql?view=sql-server-ver16.

(3) sp_tables (Transact-SQL) - SQL Server | Microsoft Learn. https://learn.microsoft.com/zh-cn/sql/relational-databases/system-stored-procedures/sp-tables-transact-sql?view=sql-server-ver16.

标签:tables,sp,--,sql,表名,全部,SQL
From: https://blog.51cto.com/u_16055028/8768574

相关文章

  • sqlalchemy 实现 mysql INSERT INTO...ON DUPLICATE KEY UPDATE语法
    1.前言myql的INSERTINTO...ONDUPLICATEKEYUPDATE语句,简单点来说,就是如果记录不存在,则插入,如果记录存在,则更新。那怎么判断记录存在否?——主键、唯一键。那不是可以使用replace语句吗?——原理上可以,但是sqlalchemyorm中的的实现,是使用merge语法,这个语法有一个限制,就是判......
  • IntelliJ IDEA无公网远程连接本地Mysql(提高开发效率!!!)
    IDEA作为Java开发最主力的工具,在开发过程中需要经常用到数据库,如mysql数据库,但是在IDEA中只能连接本地数据库,有时候需要访问其他地方如家里或者公司的数据库,将无法访问,内网的局限性导致我们只能在同一网络访问,无法跨网络访问,所以,本例将介绍如何在异地也可以实现远程连接......
  • MySQL的SQL语句
    数据库管理系统的层次\(数据库\rightarrow表\rightarrow行列\)DDLDDL是datadefinitionlanguage的缩写数据定义语言,而其作用是在于对数据库和数据库中的表的创建的基本操作这里的增删改查实际上是对于数据库,数据表本身的性质的一的增删改查所以DDL是数据的数据库表和结构上......
  • MySQL 分组排序后 → 如何取前N条或倒数N条
    开心一刻晚上,老婆辅导女儿写语文作业填空题:春天来了,__绿了女儿:春天来了,爸爸绿了老婆一脸不悦地问道:你再说一遍,春天来了,什么玩意绿了?女儿:春天来了,爸爸绿了呀老婆很生气,但依旧温柔地问道:春天来了,爸爸怎么绿了呢女儿略带哭腔的说道:那冬天呢......
  • SQL Server 字段设自增的实现方法
    信铁寒胜实测:创建表是,在需要自增的字段,加上该SQL即可。“IDENTITY(1,1)”表示该字段从1开始自增,每次自增1。--------------------------------------------------正文------------------------------------------------------------------------------------------------------......
  • mysql数据库文件丢失恢复---惜分飞
    联系:手机/微信(+8617813235971)QQ(107644445)标题:mysql数据库文件丢失恢复作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]客户服务器重启,mysql相关数据文件丢失通过底层工具进行分析,无法正确恢复数据库名字,一个个单个ibd文件(......
  • 【数据库】sql server 中的sql语句--增删改查
    createdatabase学生gouse学生goCREATETABLEStudent(Snochar(7)PRIMARYKEY,Snamechar(10)NOTNULL,Ssexchar(2)check(ssexin('男','女')),Sagetinyint,Sdeptchar(20))CREATETABLECourse(Cn......
  • SQL SERVER 与ACCESS、EXCEL的数据转换
      熟悉SQLSERVER2000的数据库管理员都知道,其DTS可以进行数据的导入导出,其实,我们也可以使用Transact-SQL语句进行导入导出操作。在Transact-SQL语句中,我们主要使用OpenDataSource函数、OPENROWSET函数,关于函数的详细说明,请参考SQL联机帮助。利用下述方法,可以十分容易地实现SQL......
  • mysql中count函数的几种写法解析
    一、count(主键)innodb引擎会遍历整张表,把每一行的主键值都取出来返回给服务层,服务层拿到主键后直接按行进行计数累加二、count(特定字段)2.1没有notnull约束innodb引擎会遍历整张表,把每一行的字段值都取出来返回给服务层,服务层判断是否为null,不为null计数累加2.2有no......
  • mysql安装
    安装windwos服务初始化@echooffcd/D%~dp0setbasepath=%~dp0setservicename=MySQLcd%basepath%binechoinitializemysqld--initialize-insecureechoinstallservicemysqld--install%servicename%echostartmysqlnetstart%servicename%pause......