當前位置:首頁 » 編程語言 » sql描述

sql描述

發布時間: 2022-06-11 20:37:17

1. 如何用sql語句加描述

語法
sp_addextendedproperty
[ @name = ] { 'property_name' }
[ , [ @value = ] { 'value' }
[ , [ @level0type = ] { 'level0_object_type' }
, [ @level0name = ] { 'level0_object_name' }
[ , [ @level1type = ] { 'level1_object_type' }
, [ @level1name = ] { 'level1_object_name' }
[ , [ @level2type = ] { 'level2_object_type' }
, [ @level2name = ] { 'level2_object_name' }
]
]
]
]

參數
[ @name = ] { 'property_name' }

要添加的屬性名稱。property_name 的數據類型為 sysname,它不能是 NULL。名稱可能還包括空白或非字母數字字元串和二進制值。

[ @value = ] { 'value' }

將要與屬性相關聯的值。value 的數據類型為 sql_variant,帶有默認設置 NULL。value 的大小不能超過 7,500 位元組;否則 SQL Server 會產生錯誤。

[ @level0type = ] { 'level0_object_type' }

用戶或用戶定義類型。level0_object_type 的數據類型為 varchar(128),其默認值為 NULL。有效的輸入是 USER、TYPE 和 NULL。

[ @level0name = ] { 'level0_object_name' }

指定的 0 級對象類型的名稱。level0_object_name 的數據類型為 sysname,其默認值為 NULL。

[ @level1type = ] { 'level1_object_type' }

1 級對象的類型。level1_object_type 的數據類型為 varchar(128),其默認值為 NULL。有效的輸入是 TABLE、VIEW、PROCEDURE、FUNCTION、DEFAULT、RULE 和 NULL。

[ @level1name = ] { 'level1_object_name' }

指定的 1 級對象類型的名稱。level1_object_name 的數據類型為 sysname,其默認值為 NULL。

[ @level2type = ] { 'level2_object_type' }

2 級對象的類型。level2_object_type 的數據類型為 varchar(128),其默認值為 NULL。有效的輸入是 COLUMN、PARAMETER、INDEX、CONSTRAINT、TRIGGER 和 NULL。

[ @level2name = ] { 'level2_object_name' }

指定的 2 級對象類型的名稱。level2_object_name 的數據類型為 sysname,其默認值為 NULL。

返回代碼值
0(成功)或 1(失敗)

注釋
系統對象不允許有擴展屬性。

對象是按級別區分的,0 級為最高,2 級為最低。當用戶添加、更新或刪除擴展屬性時,必須指定所有更高級別的對象。例如,如果用戶要向 1 級對象添加擴展屬性,就必須指定所有 0 級信息。如果用戶要向 2 級對象添加擴展屬性,則必須提供關於 0 級和 1 級的所有信息。

在每個級別上,對象類型和對象名可唯一地標識對象。如果指定了一個對中的任一方,則必須指定另一方。

給定了有效 property_name 和 value,如果沒有任何對象類型和名稱,則屬性屬於當前資料庫。如果指定對象類型和名稱,則還必須指定父對象和類型。否則,SQL Server 會產生錯誤。

許可權
db_owner 和 db_ddladmin 固定資料庫角色的成員可以將擴展屬性添加到任何對象中。用戶可以為他們所擁有的對象添加擴展屬性。然而,只有 db_owner 可以將屬性添加到用戶名稱中。

示例
下面的示例將屬性 ('caption,' 'Employee ID') 添加到表"T1"的"ID"列中。

CREATE table T1 (id int , name char (20))
GO
EXEC sp_addextendedproperty 'caption', 'Employee ID', 'user', dbo, 'table', T1, 'column', id
//增加描述: DECLARE @v sql_variant SET @v = N'名稱'EXECUTE sp_addextendedproperty N'MS_Description', @v, N'user', N'dbo', N'table', N'BBSBoard', N'column', N'BBSBoardName'

2. SQL語句描述

加欄位的話太死板了,而且數據會可能會冗餘,要另外建立一個中轉表, 這樣即使中轉了很多次也可以記下來
我覺得要這樣設計:
航班信息表: 班次,起飛時間,實際起飛時間,起飛地點,降落時間,實際降落時間,降落地點。
中轉航班表: 班次(一對多外鍵), 中轉地點, 中轉降落時間,中轉起飛時間。

3. sql 為表添加描述信息

COMMENT ON TABLE table_name IS '表說明內容';COMMENT ON COLUMN column_name IS '行說明內容';

4. 什麼是SQL

SQL是一種編程語言,下面對其進行一個詳細介紹,你應該能看懂:

SQL(Structure Query Language)語言是資料庫的核心語言。
SQL的發展是從1974年開始的,其發展過程如下:
1974年-----由Boyce和Chamberlin提出,當時稱SEQUEL。
1976年-----IBM公司的Sanjase研究所在研製RDBMS SYSTEM R
時改為SQL。
1979年-----ORACLE公司發表第一個基於SQL的商業化RDBMS產品。
1982年-----IBM公司出版第一個RDBMS語言SQL/DS。
1985年-----IBM公司出版第一個RDBMS語言DB2。
1986年-----美國國家標准化組織ANSI宣布SQL作為資料庫工業標准。
SQL是一個標準的資料庫語言,是面向集合的描述性非過程化語言。
它功能強,效率高,簡單易學易維護(迄今為止,我還沒見過比它還好
學的語言)。然而SQL語言由於以上優點,同時也出現了這樣一個問題:
它是非過程性語言,即大多數語句都是獨立執行的,與上下文無關,而
絕大部分應用都是一個完整的過程,顯然用SQL完全實現這些功能是很困
難的。所以大多數資料庫公司為了解決此問題,作了如下兩方面的工作:
(1)擴充SQL,在SQL中引入過程性結構;(2)把SQL嵌入到高級語言中,
以便一起完成一個完整的應用。
二 SQL語言的分類

SQL語言共分為四大類:數據查詢語言DQL,數據操縱語言DML,
數據定義語言DDL,數據控制語言DCL。

1 數據查詢語言DQL
數據查詢語言DQL基本結構是由SELECT子句,FROM子句,WHERE
子句組成的查詢塊:
SELECT <欄位名表>
FROM <表或視圖名>
WHERE <查詢條件>

2 數據操縱語言
數據操縱語言DML主要有三種形式:
1) 插入:INSERT
2) 更新:UPDATE
3) 刪除:DELETE

3 數據定義語言DDL
數據定義語言DDL用來創建資料庫中的各種對象-----表、視圖、
索引、同義詞、聚簇等如:
CREATE TABLE/VIEW/INDEX/SYN/CLUSTER
| | | | |
表 視圖 索引 同義詞 簇

4 數據控制語言DCL
數據控制語言DCL用來授予或回收訪問資料庫的某種特權,並控制
資料庫操縱事務發生的時間及效果,對資料庫實行監視等。如:
1) GRANT:授權。
2) ROLLBACK [WORK] TO [SAVEPOINT]:回退到某一點。
回滾---ROLLBACK
回滾命令使資料庫狀態回到上次最後提交的狀態。其格式為:
SQL>ROLLBACK;
3) COMMIT [WORK]:提交。
在資料庫的插入、刪除和修改操作時,只有當事務在提交到數據
庫時才算完成。在事務提交前,只有操作資料庫的這個人才能有權看
到所做的事情,別人只有在最後提交完成後才可以看到。
提交數據有三種類型:顯式提交、隱式提交及自動提交。下面分
別說明這三種類型。
(1) 顯式提交
用COMMIT命令直接完成的提交為顯式提交。其格式為:
SQL>COMMIT;
(2) 隱式提交
用SQL命令間接完成的提交為隱式提交。這些命令是:
ALTER,AUDIT,COMMENT,CONNECT,CREATE,DISCONNECT,DROP,
EXIT,GRANT,NOAUDIT,QUIT,REVOKE,RENAME。
(3) 自動提交
若把AUTOCOMMIT設置為ON,則在插入、修改、刪除語句執行後,
系統將自動進行提交,這就是自動提交。其格式為:
SQL>SET AUTOCOMMIT ON;

5. sql函數和過程的正確描述是什麼

區別如下:

  1. 存儲過程可以返回多個變數,函數只能返回一個,函數是可以嵌入在sql語句中使用的,而存儲過程不可以。

  2. 對於函數來書可以返回值或者表對象,而存儲過程來說可以返回參數。

  3. 函數可以通過return 語句返回函數值,而存儲過程不能。

  4. 當存儲過程和函數被執行的時候,SQL Manager會到procere cache中去取相應的查詢語句,如果在procere cache里沒有相應的查詢語句,SQL Manager就會對存儲過程和函數進行編譯

sql示例:

  1. 創建函數、查找函數:

(5)sql描述擴展閱讀

存儲過程在大型資料庫系統中,一組為了完成特定功能的SQL 語句集,它存儲在資料庫中,一次編譯後永久有效,用戶通過指定存儲過程的名字並給出參數(如果該存儲過程帶有參數)來執行它。存儲過程是資料庫中的一個重要對象。

在 SQL 中,基本的函數類型和種類有若干種。函數的基本類型是: Aggregate 函數 Scalar 函數

6. SQL的函數和過程正確的描述是

SQL允許定義函數、過程和方法。定義可通過SQL的有關過程的組件,也可以通過外部的程序設計語言,如Java,C或C++。SQL標准所定義的語法,與大多數資料庫實現的自身的非標准版本的語法不同。函數和過程允許「業務邏輯」作為存儲過程記錄在資料庫中,並在資料庫中執行。

業務邏輯能夠被寫成程序設計語言過程並完全存儲在資料庫之外,但把它們定義成資料庫中的存儲過程有幾個優點:

1 允許多個應用訪問這些過程。

2.允許當業務規則發生改變時進行單個點的改變,而不變改變應用系統的其他部分。

3.應用代碼可以調用存儲過程,而不是直接更新資料庫關系。

具體操作如下:

1. 聲明方式。

在begin……end之間的語句可以執行signal out_of_classrome_seats來引發異常。這個句柄說明如果條件發生,將會採取動作終止begin end中的語句。另一個可選的動作是continue,它繼續從引發異常的語句的下一條語句開始執行。

    熱點內容
    scratch少兒編程課程 發布:2025-04-16 17:11:44 瀏覽:626
    榮耀x10從哪裡設置密碼 發布:2025-04-16 17:11:43 瀏覽:356
    java從入門到精通視頻 發布:2025-04-16 17:11:43 瀏覽:71
    php微信介面教程 發布:2025-04-16 17:07:30 瀏覽:296
    android實現陰影 發布:2025-04-16 16:50:08 瀏覽:787
    粉筆直播課緩存 發布:2025-04-16 16:31:21 瀏覽:337
    機頂盒都有什麼配置 發布:2025-04-16 16:24:37 瀏覽:202
    編寫手游反編譯都需要學習什麼 發布:2025-04-16 16:19:36 瀏覽:798
    proteus編譯文件位置 發布:2025-04-16 16:18:44 瀏覽:355
    土壓縮的本質 發布:2025-04-16 16:13:21 瀏覽:582