我正在研究可以处理多个数据库服务器(如“ MySQL”和“ MS SQL Server”)的应用程序。我想使用适合所有数据库类型的常规查询来获取特定数据库的表名。我尝试了以下方法:SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE'但是它给出了特定服务器的所有数据库的表名,但是我只想获取所选数据库的表名。如何限制此查询以获取特定数据库的表?
3 回答
慕后森
TA贡献1802条经验 获得超5个赞
可能是由于不同的sql dbms处理架构的方式所致。
尝试以下
对于SQL Server:
SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE' AND TABLE_CATALOG='dbName'
对于MySQL:
SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE' AND TABLE_SCHEMA='dbName'
对于Oracle,我认为可以使用DBA_TABLES。
- 3 回答
- 0 关注
- 804 浏览
添加回答
举报
0/150
提交
取消