Oracle数据库查询当前用户所有表名、表注释以及表对应字段、字段注释

嘿嘿,听你这么一说,我想起了在杭州的时候。
当时我们公司有一位老人,是oracle数据库的日常旅行者。
真的很滑。
有一次他想做一个报告,所有的记录和记录都是在用户知情的情况下进行的。
你猜怎么着?直接使用我提到的语句,select table_name,comments from user_tab_comments;突然间所有的表名和评论都出来了,这是一件好事。
他告诉我,这比手动检查每一项要好得多,省时省力。

接下来他想查看每个表的字段名称和注释。
还是一样,select table_name,column_name,comments from user_col_comments;只需要很短的时间,并且所有需要的信息都可用。
然后我就觉得这个SQL语句真是太神奇了,解决了这么多实际问题。

但我会提醒你。
我以前用过这两个命题,但是它们是按一定的方式使用的。
可能只有表格,没有很多有用的信息。
结果很顺利,没有周末。
但需要注意的是,如果数据库的记录很多,尤其是数百或数千条,搜索可能会慢一些。
我没有经历过,不敢乱说。
不过一般情况下还是够用的。

所以,前面提到的两条SQL语句现在已经完全实用了。
只要手表不是太多,用起来肯定没有问题。
如果您遇到任何问题或不确定某事,请随时询问我。
虽然我不是Oracle专家,但我遇到过一些案例并且可以提供帮助。

sql查询数据库中有某个值的所有表

1 . 打开 SQL Server Management Studio (SSMS)。
2 . 连接到数据库服务器。
3 . 在对象资源管理器中,展开数据库。
4 . 选择要查询的数据库。
5 . 展开“表格”。
6 . 使用以下 SQL 查询所有数据库: sql
7 使用以下SQL查询当前数据库中的所有表名: sql 从 sys.tables 中选择名称,其中 xtype = 'U';
8 .使用以下 SQL 搜索特定表中的所有字段名: sql 从 sys.columns 中选择名称,其中 object_id = OBJECT_ID('TableName');
9 .使用以下 SQL 查询显示架构中的所有字段名称和字段形状: sql YourName, type_name FROM sys.columns WHERE object_id = OBJECT_ID('YourTableName');使用该SQL指定表的主键字段; sql 选择c.name FROM sys.columns c INNER JOIN sys.index i ON c.object_id = i.object_id 内连接 sys.index_columns ic ON i.object_id = ic.object_id AND i.index_id = ic.index_id 其中 i.is_primary_key = 1 AND c.object_id = OBJECT_ID('TableName');
1 1 .使用此SQL可以访问所有类型的数据库; sql SELECT name FROM sys.types;
这些步骤和问题将帮助您完成所需的任务。

怎么用Sql语句获取一个数据库中的所有表的名字

你说的这些方法其实都可以找到表名,而且各有各的用法。

上周一位客户问我如何批量重命名 SQL Server 中的表。
当时我使用 sys.tables 视图进行过滤。
编写一个简单的脚本并运行它。
您可以在几分钟内处理数百个表,这比手动更改要快得多。
但请注意,2 005 以下的版本没有此视图,所以需要提前检查环境。

sp_tables存储过程非常有趣。
感觉像是系统自带的通用工具。
我自己遇到的陷阱是,有时结果集包含视图或索引,为了精度,您需要添加类型 =“U”的 AND 条件。
正如你所说,过滤 TABLE_TYPE = 'TABLE' 实际上更准确。

information_schema.tables的这种方法更通用吗?可以使用不同的数据库系统,但查询会稍微慢一些。
当我在Oracle上使用时,每次都要等待几秒钟。

如果你想要效率,sys.tables一定是你的首选。
如果不确定环境版本或者想跨平台编写代码,information_schema 更靠谱。
我通常不使用sp_tables存储过程,但这确实是个好东西。

无论如何,这取决于您的具体需求。

怎么查询数据库中所有表名?

直接使用信息模式查找表名,快捷方便。
公告板太基础,不够灵活。

项目:一个电子商务系统,将于2 02 0年推出。

我自己也使用信息图,我不确定,但这是我的经验。

自己掂量一下。