sql查询查所有表名(table)

本文介绍了使用SQL查询数据库的多种技巧,包括如何从不同类型的数据库(如SQL Server和Oracle)中检索表名和列名,以及如何执行包含特定字符串的数据搜索。
部署运行你感兴趣的模型镜像

(1)
select * from information_schema.tables
(2)
select name from dbo.sysobjects where xtype='u' and (not name LIKE 'dtproperties')
(3)
SELECT dbo.sysobjects.name as Table_name, dbo.syscolumns.name AS Column_name
FROM dbo.syscolumns INNER JOIN
      dbo.sysobjects ON dbo.syscolumns.id = dbo.sysobjects.id
WHERE dbo.sysobjects.name='TM_User'and (dbo.sysobjects.xtype = 'u') AND (NOT (dbo.sysobjects.name LIKE 'dtproperties'))
(4)
declare @str varchar(100)
set @str='1'  --要搜索的字符串
declare @s varchar(8000)
declare tb cursor local for
select s='if exists(select 1 from ['+b.name+'] where convert(varchar,['+a.name+']) like ''%'+@str+'%'')
print ''select top 5 ['+a.name+'],* from ['+b.name+']'''
from syscolumns a join sysobjects b on a.id=b.id
where b.xtype='U' and a.status>=0
--所查列的字段类型
and a.xusertype in(175,239,231,167,56,60,108,106)
open tb
fetch next from tb into @s
while @@fetch_status=0
begin
exec(@s)
fetch next from tb into @s
end
close tb
deallocate tb
(5)
Oracle版:
列出当前DB中所有表:
select table_name from user_all_tables
列出表中所有字段:
SELECT column_name from user_tab_columns where table_name='EDL_TM_User')

您可能感兴趣的与本文相关的镜像

Anything-LLM

Anything-LLM

AI应用

AnythingLLM是一个全栈应用程序,可以使用商用或开源的LLM/嵌入器/语义向量数据库模型,帮助用户在本地或云端搭建个性化的聊天机器人系统,且无需复杂设置

在不同的数据库管理系统中,查询所有的语句会有所不同。以下是几种常见数据库系统中查询所有的方法: ### SQL Server 在SQL Server中,可以通过以下语句查询所有用户定义的: ```sql SELECT NAME FROM SYSOBJECTS WHERE TYPE='U' ``` 另外,也可以使用`INFORMATION_SCHEMA.TABLES`来获取所有的信息: ```sql SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'BASE TABLE' ``` ### Oracle 对于Oracle数据库,可以使用如下SQL语句来查询当前用户拥有的所有: ```sql SELECT TABLE_NAME FROM USER_TABLES ``` 如果需要查看所有用户(包括其他模式)的,则可以使用: ```sql SELECT TABLE_NAME FROM ALL_TABLES ``` ### MySQL 在MySQL中,要查询特定数据库中的所有,可以使用`SHOW TABLES`命令: ```sql SHOW TABLES FROM 数据库; ``` 或者查询`INFORMATION_SCHEMA`数据库中的`TABLES`: ```sql SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '数据库' AND TABLE_TYPE = 'BASE TABLE'; ``` ### PostgreSQL PostgreSQL查询所有的方式是访问系统目录或使用`INFORMATION_SCHEMA`: ```sql -- 查询当前模式下的所有 SELECT tablename FROM pg_tables WHERE schemaname = 'public'; -- 或者使用 INFORMATION_SCHEMA SELECT table_name FROM information_schema.tables WHERE table_schema = 'public' AND table_type = 'BASE TABLE'; ``` ### Microsoft Access 在Microsoft Access中,可以通过查询`MSYSOBJECTS`系统来获取所有: ```sql SELECT NAME FROM MSYSOBJECTS WHERE TYPE=1 AND FLAGS=0 ``` 需要注意的是,默认情况下`MSYSOBJECTS`是隐藏的,可能需要通过工具选项设置以显示系统对象[^1]。 以上方法可以帮助您根据所使用的具体数据库环境查询到所有的
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值