『壹』 plsql工具在oracle資料庫中使用comment語句給表加備注的時候單條執行沒問題,批量多條執行就報無效字元了
因為你寫的不是PL/SQL代碼塊而是SQL語句,比如你寫這樣的東西
select * from emp1;
select * from emp1
兩個語句執行,就會報ORA-00911: 無效字元
應該寫這樣類似的
begin
execute immediate 'comment on column emp4.job is ''emp4 job''';
execute immediate 'comment on column emp4.sal is ''emp4 sal''';
end;
寫成代碼塊,否則就只寫一條SQL不要寫多條
『貳』 sql怎麼寫注釋文檔
mysql 伺服器支持 # 到該行結束、-- 到該行結束 以及 /* 行中間或多個行 */ 的注釋方格:
mysql> SELECT 1+1; # 這個注釋直到該行結束
mysql> SELECT 1+1; -- 這個注釋直到該行結束
mysql> SELECT 1 /* 這是一個在行中間的注釋 */ + 1;
mysql> SELECT 1+
/*
這是一個
多行注釋的形式
*/
1;
注意 -- (雙長劃) 注釋風格要求在兩個長劃後至少有一個空格!
盡管伺服器理解剛才描述的注釋句法,但 MySQL 客戶端的語法分析在 /* ... */ 注釋方式上還有所限止:
單引號和雙引號被用來標志一個被引用字元串的開始,即使是在一個注釋中。如果注釋中的引號沒有另一個引號與之配對,那和語法分析程序就不會認為注釋結束。如果你以互動式運行 mysql,你會產生困惑,因為提示符從 mysql> 變為 '> 或 ">。
一個分號被用於指出當前 SQL 語句的結束並且跟隨它的任何東西表示下一行的開始。
不論你是以互動式運行 mysql 還是將命令放在一個文件中,然後以 mysql < some-file 告訴 mysql 讀取它的輸入,這個限制均存在。
『叄』 sql中創建表的時候,為什麼not null要放在comment後面呢
comment 的作用是給表創建備注 not null 意思是給欄位不允許為空 應該是一個固定的語句表示給表創建的備注不允許為空,如果改為 comment null 那意思就是可以為空了
『肆』 plsql 建表 如何添加註釋
plsql 在oracle中創建表時添加註釋使用comment欄位。例如有以下表:
CREATE TABLE t1(
id varchar2(32) primary key,
name VARCHAR2(32) ,
age VARCHAR2(32)
)
添加表注釋的命令為:
COMMENTONtable t1 IS'個人信息';
添加欄位注釋命令為:
comment on column t1.id is 'id';
comment on column t1.name is '姓名';
comment on column t1.age is '年齡';
(4)sql中的comment擴展閱讀
plsql中查看錶注釋和欄位注釋方法介紹
查看當前用戶下所有表注釋:select * from user_tab_comments
結果: user_tab_comments:table_name,table_type,comments
查看當前用戶下某表所有欄位注釋:select * from user_col_comments where TABLE_NAME='某表名稱';
結果:user_col_comments:table_name,column_name,comments
『伍』 如何在SQL Server 中添加註釋
首先,要明確一點的是注釋存在sysproperties表中而不是跟創建的表捆綁到一起的
具體使如方法如下:
一、使用SQL Server窗口創建表是會有注釋窗口;
二、使用SQL語句的comment語句,該語句放置在create table()後面,如:
comment on table table_name is 'table_mark'
comment on column table_name."Column" is 'column_mark'
三、調用系統存儲過程sp_addextendedproperty來添加註釋,如:
EXECUTE sp_addextendedproperty N'MS_Description',N'雇員信息',N'user',N'dbo',N'table',N'Employee',NULL,NULL
EXECUTE sp_addextendedproperty N'MS_Description',N'主鍵ID,自動增加',N'user',N'dbo',N'table',N'Employee',N'column',N'EmployeeID'
或者
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'角色ID' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'CharData', @level2type=N'COLUMN',@level2name=N'charid'
GO