資料定義語言(DDL)
模式的定義與刪除
定義模式
模式定義語句如下:
create schema <模式名> authorization <使用者名稱>;
如果沒有指定<模式名>,那麼<模式名>隱含為<使用者名稱>
注意: 在使用該語句時,你必須是管理員許可權,或者獲得了資料庫管理員授予的create schema的許可權。
當然你也可以在建立模式的同時在這個模式定義中進一步建立基本表、檢視、定義授權。
格式如下:
create schema <模式名> authorization <使用者名稱>
[表定義子句]
[檢視定義子句]
[授權定義子句];
例:給使用者demo 建立一個模式 test,並定義一個基本表 TAB
create schema test authorization demo
create table TAB
(
sname varchar(20),
sage int
);
刪除模式
drop schema <模式名> <cascade | restrict>;
cascade(級聯) 和 restrict(限制)兩者必選其一。
cascade表示在刪除模式的同時把該模式中所有的資料庫物件全部刪除。
restrict 表示如果該模式中已經定義了下屬的資料庫物件(如:表、檢視等),則拒絕該刪除語句的執行。
基本表的定義、刪除和修改
詳細文章,點下方跳轉。
基本表的定義、刪除和修改
索引的建立與刪除
當表的資料量較大時,查詢操作會比較耗時。
建立索引是加快查詢速度的有效手段。
建立索引
格式如下:
create [unique] [cluster] index <索引名>
on <表名>(<列名> [<列序>] [,<列名>[<次序>]]......);
索引可以建立在該表的一列或多列上。
unique 表明此索引的每一個索引值只對應唯一的資料記錄。
cluster表示要建立的索引是聚簇索引。
例:給student表按sname建立唯一索引。
create unique index Stusname on student(sname);
檢視索引
格式如下:
show index from 表名;
或
show keys from 表名;
修改索引
格式如下:
alter index <舊索引名> rename to <新索引名>;
例:將Student表的Stusname索引名改為Stusn。
alter index Stusname rename to Stusn;
【alter更改索引名】‘rename’ 附近有語法錯誤。
原因:
alter不能改變索引名,如若改變索引名就需要呼叫儲存過程。
解決辦法:
錯誤程式碼如下
alter index stusno rename to stusno3;
呼叫儲存過程程式碼如下:
EXEC sp_rename @objname = 'student.stusno1', @newname = 'stusno2', @objtype = 'index'
/*或者如下*/
EXEC sp_rename '表名.舊索引名', '新索引名', 'index'
呼叫儲存過程時會出現:
注意: 更改物件名的任一部分都可能會破壞指令碼和儲存過程。
這時命令已經成功執行了。
轉載於:https://www.cnblogs.com/Neavotre/p/11463366.html
刪除索引
格式如下:
drop INDEX <索引名> on <表名>;
sql語句版本一直在更新,語法也一直在變化。
例:刪除student表的Stusn索引。
drop index Stusname on student;
相關文章
- MySQL之資料定義語言(DDL)MySql
- MySQL中的DDL(Data Definition Language,資料定義語言)MySql
- MySQL全面瓦解4:資料定義-DDLMySql
- Hive(一)資料型別以及DDL資料定義Hive資料型別
- hive從入門到放棄(二)——DDL資料定義Hive
- 資料庫操作語言DDL資料庫
- ClickHouse資料庫資料定義手記之資料型別資料庫資料型別
- MYSQL中的DDL(用來操縱資料庫物件的語言)1MySql資料庫物件
- c語言的定義與宣告C語言
- 三句義的程式語言
- ABAP 程式語言裡的 Reference Semantic - 引用語義
- MySQL學習筆記之資料定義表約束,分頁方法總結MySql筆記
- oracle檢視物件DDL語句Oracle物件
- SQL語言基礎(資料控制語言)SQL
- C語言筆記——自定義型別C語言筆記型別
- 語義理解和研究資源是自然語言處理的兩大難題自然語言處理
- postgresql資料定時轉存mongodb方案SQLMongoDB
- DBeave如何檢視資料庫表的DDL建立語句資料庫
- MySQL的DDL和DML操作語法MySql
- 第四節 go 語言變數定義Go變數
- c語言函式指標的定義C語言函式指標
- Go語言自定義自己的SSH-ServerGoServer
- 淺談Dotnet的資料定位和匹配
- 6.3. 基本SQL語句——6.3.1. DDLSQL
- MySQL入門---(一)SQL的DDL語句MySql
- SQL學習___02:DDL+DCL語法SQL
- 微控制器-C語言-定義和申明C語言
- 分享一個自然語言漢語時間語義識別的工具類
- C語言:發工資C語言
- shell向pg寫入資料定時任務
- Linux大資料定製篇 Shell程式設計Linux大資料程式設計
- 自然語言處理功能的全鏈條式集合,NLPIR大資料語義智慧分析平臺自然語言處理大資料
- 通過計算機語言自定義保留小數計算機
- 大型語言模型將如何重新定義製造業?模型
- Golang試用阿里通義千問大語言模型Golang阿里模型
- 使用PHP實現詞法分析與自定義語言PHP詞法分析
- NLP需要回歸語言本質,走向語義和計算的融合
- FAIR & NYU開發XNLI語料庫:15種語言(含低資源語言)AI