
Oracle
下读取表/字段的备注信息
Oracle
通过COMMENT
ON
TABLE
/
COMMENT
ON
COLUMN
追加表/字段的备注。
CREATE
TABLE
"MR_DEPT"
(
"DEPT_ID"
NUMBER
NOT
NULL
,
"PARENT_ID"
NUMBER,
"DEPT_NAME"
CHAR(20)
NOT
NULL
,
"STATUS"
NUMBER
DEFAULT
1
NOT
NULL
,
PRIMARY
KEY
("DEPT_ID")
);
COMMENT
ON
TABLE
"MR_DEPT"
IS
'部门表';
COMMENT
ON
COLUMN
"MR_DEPT""DEPT_ID"
IS
'部门编号';
COMMENT
ON
COLUMN
"MR_DEPT""PARENT_ID"
IS
'上级部门编号';
COMMENT
ON
COLUMN
"MR_DEPT""DEPT_NAME"
IS
'部门名';
COMMENT
ON
COLUMN
"MR_DEPT""STATUS"
IS
'状态';
备注加好以后,如何在查询中检索呢
查询表的备注信息
SELECT
TABLE_NAME,
TABLE_TYPE,
COMMENTS
FROM
USER_TAB_COMMENTS
WHERE
TABLE_NAME
=
'MR_DEPT;
查询字段的备注信息
SELECT
TABLE_NAME,
COLUMN_NAME,
COMMENTS
FROM
USER_COL_COMMENTS
WHERE
TABLE_NAME
=
'MR_DEPT;
CREATE TABLE test_table (
id INT,
val INT
);
COMMENT ON COLUMN test_tableID IS '测试表编号';
COMMENT ON COLUMN test_tableval IS '测试表数值';
CREATE VIEW test_view
AS
SELECT FROM test_table;
COMMENT ON COLUMN test_viewID IS '测试视图编号';
COMMENT ON COLUMN test_viewval IS '测试视图数值';
COLUMN "TABLE_NAME" FORMAT A20
COLUMN "COLUMN_NAME" FORMAT A20
COLUMN "COMMENTS" FORMAT A30
SELECT
TABLE_NAME,
COLUMN_NAME,
COMMENTS
FROM
USER_COL_COMMENTS
WHERE
TABLE_NAME = 'TEST_TABLE';
TABLE_NAME COLUMN_NAME COMMENTS
-------------------- -------------------- ------------------------------
TEST_TABLE ID 测试表编号
TEST_TABLE VAL 测试表数值
SELECT
TABLE_NAME,
COLUMN_NAME,
COMMENTS
FROM
USER_COL_COMMENTS
WHERE
TABLE_NAME = 'TEST_VIEW';
TABLE_NAME COLUMN_NAME COMMENTS
-------------------- -------------------- ------------------------------
TEST_VIEW ID 测试视图编号
TEST_VIEW VAL 测试视图数值
首先,楼主需了解何为动态sql,何为静态sql,这是他们的区别:
静态 SQL:静态 SQL 语句一般用于嵌入式 SQL 应用中,在程序运行前,SQL 语句必须是确定的,例如 SQL 语句中涉及的列名和表名必须是存在的。静态 SQL 语句的编译是在应用程序运行前进行的,编译的结果会存储在数据库内部。而后程序运行时,数据库将直接执行编译好的 SQL 语句,降低运行时的开销。静态SQL在编译时已经确定了引用的表和列。 宿主变量不改变表和列信息。 可以使用主变量改变查询参数值, 但是不能用主变量代替表名或列名。
动态 SQL:动态 SQL 语句是在应用程序运行时被编译和执行的,不在编译时确定 SQL 的表和列,而是让程序在运行时提供,并将
SQL 语句文本传给 DBMS 执行。 静态 SQL 语句在编译时已经生成执行计划。 而动态 SQL 语句,只有在执行时才产生执行计划。动态 SQL 语句首先执行 PREPARE 语句要求 DBMS 分析、确认和优化语句,并为其生成执行计划。例如,使用 DB2 的交互式工具 CLP 访问数据库时,用户输入的 SQL 语句是不确定的,因此 SQL 语句只能被动态地编译。动态 SQL 的应用较多,常见的 CLI 和 JDBC 应用程序都使用动态 SQL。
下面是一个典型的在MyBatis中使用动态SQL:
<update id="update" parameterType="orgformatdynamicproxymybatisbeanUser">UPDATE users
<trim prefix="SET" prefixOverrides=",">
<if test="name != null and name != ''">
name = #{name}
</if>
<if test="age != null and age != ''">
, age = #{age}
</if>
<if test="birthday != null and birthday != ''">
, birthday = #{birthday}
</if>
</trim>
where id = ${id}</update>
一、多行注释
与C语言相同的程序注释符号,即“//”。“/”用于注释文字的开头,“/”用于注释文字的结尾,可在程序中标识多行文字为注释。
二、格式:/注释内容/。
例子:
DECLARE @myvariable DATETIME
1、The following statements retrieve the current date and time and extract the day of the week from the results
2、SELECT @myvariable=GETDATE()。
SELECT DATENAME(dw,@myvariable)。
扩展资料:
一、单行注释
1、ANSI 标准的注释符“--” 用于单行注释,格式:--注释内容。
2、例子:
use pangu-- 使用名为pangu的数据库。
declare@startdate datetime。
set@startdate=‘1/1/2000’。
select‘Start Date:’+convert(varchar(12)@startdate)。
convert()函数用于转换数据类型。
注意这里的注释'--'符号后需要一个空格,注释才生效。
参考资料来源:
百度百科-sql注释
以上就是关于如何使用sql语句,查询oracle的表注释等信息全部的内容,包括:如何使用sql语句,查询oracle的表注释等信息、求oralce获取视图字段注释 sql语句。、如何MyBatis中使用动态SQL查询与注释等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)