ORACLE之注释COMMENT

本文介绍如何使用SQL命令为Oracle数据库中的表及其字段添加注释,并提供了查询这些注释的方法。包括给表加注释、给字段加注释以及如何查询表和字段的注释详情。
1、给表加注释
COMMENT ON TABLE TABLENAME IS '用户表';

2、查看表的COMMENT
SELECT * FROM USER_TAB_COMMENTS WHERE TABLE_NAME='TABLENAME';

3、给字段加注释
COMMENT ON COLUMN TABLENAME.COLNAME IS 'OOXX';

4、查看字段的COMMENT
SELECT * FROM USER_COL_COMMENTS WHERE TABLE_NAME='TABLENAME';

5、查看字段的详细信息
SELECT
T.TABLE_NAME 表名,
T.COLUMN_NAME 字段名,
T.DATA_TYPE 数据类型,
T.DATA_LENGTH 长度,
T.DATA_PRECISION 整数位,
T.DATA_SCALE 小数位,
T.NULLABLE 允许空值,
T.DATA_DEFAULT 缺省值,
C.COMMENTS 备注
FROM USER_TAB_COLUMNS T,
USER_COL_COMMENTS C
WHERE A.TABLE_NAME = B.TABLE_NAME
AND A.TABLE_NAME = 'TABLENAME';
Oracle 数据库中,可以使用 `COMMENT ON` 语句为表、列、视图等数据库对象添加注释(说明),便于团队协作和文档维护。 --- ### 添加注释的语法 ```sql COMMENT ON { TABLE | COLUMN | VIEW } object_name IS 'comment_text'; ``` --- ### 示例 #### 1. 为表添加注释 ```sql COMMENT ON TABLE employees IS '员工基本信息表,包含员工编号、姓名、入职日期等'; ``` #### 2. 为列添加注释 ```sql COMMENT ON COLUMN employees.employee_id IS '员工唯一标识,主键'; COMMENT ON COLUMN employees.email IS '员工邮箱,用于系统登录和通知'; COMMENT ON COLUMN employees.hire_date IS '入职日期,默认为系统当前日期'; ``` #### 3. 为视图添加注释 ```sql COMMENT ON VIEW emp_view IS '员工视图,仅包含活跃员工'; ``` --- ### 验证注释是否添加成功 #### 查询表注释: ```sql SELECT * FROM user_tab_comments WHERE table_name = 'EMPLOYEES'; ``` #### 查询列注释: ```sql SELECT column_name, comments FROM user_col_comments WHERE table_name = 'EMPLOYEES'; ``` > 🔍 注意:表名需大写,除非创建时使用了双引号定义为小写。 --- ### 解释代码 - `COMMENT ON TABLE employees`: 表示要为 `employees` 表添加注释。 - `IS '...'`: 指定具体的注释内容,支持中文。 - 注释存储在数据字典视图中: - `user_tab_comments`: 存储表(或视图)的注释。 - `user_col_comments`: 存储列的注释。 - 这些注释可用于生成文档、被开发工具(如 PL/SQL Developer、Toad、DataGrip)读取显示。 --- ### 注意事项 1. **权限要求**:需要对表有 `COMMENT ANY TABLE` 权限或拥有该表。 2. **修改注释**:重复执行 `COMMENT ON` 会**覆盖**原有注释,不会追加。 3. **删除注释**:使用 `IS NULL` 即可清除注释: ```sql COMMENT ON TABLE employees IS NULL; COMMENT ON COLUMN employees.email IS NULL; ``` 4. **大小写敏感性**:如果表名/列名使用双引号创建的小写名称,查询时也需用大写匹配(因为 `user_tab_columns` 等视图中存储的是大写)。 --- ### 实际应用场景 ```sql -- 添加列 ALTER TABLE employees ADD (status VARCHAR2(10) DEFAULT 'ACTIVE'); -- 立即添加注释 COMMENT ON COLUMN employees.status IS '员工状态:ACTIVE / INACTIVE'; ``` 这样可以确保数据库结构清晰,提升可维护性。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值