自己整理的學習資料——DB2 V8資料庫基礎(十六)
3.2 DDL資料定義語言
CREATE: 用於建立資料庫物件。
DECLARE: 除了是建立只在過程中使用的臨時表外,DECLARE語句和CREATE語句非常相似。唯一可以被宣告的物件是表。並且必須放入使用者臨時表空間。
DROP: 可以刪除任何用CREATE(資料庫物件)和DECLARE(表)建立的物件。
ALTER: 允許修改某些資料庫物件的資訊。不能修改索引。
3.2.1 資料庫(不能算DDL語言,只能算DB2 CLP命令):
建立資料庫:
CREATE DB dbname
刪除資料庫:
DROP DB dbname
3.2.2 表:
建立新表:
CREATE TABLE tabname(
col1 type1 [not null] [primary key],
col2 type2 [not null],..)
根據已有的表建立新表:
l CREATE TABLE tab_new LIKE tab_old
l CREATE TABLE tab_new AS select col1,col2… FROM tab_old DEFINITION ONLY
表的型別
永久表(基表)
臨時表(說明表)
臨時表(派生表)
修改表:
l 增加一個列:
Alter table tabname add column col type
注:列增加後將不能刪除。DB2中列加上後資料型別也不能改變,唯一能改變的是增加varchar型別的長度。
l 新增主鍵:
Alter table tabname add primary key(col)
l 刪除主鍵:
Alter table tabname drop primary key(col)
重新命名錶
RENAME 舊錶名 TO 新表名
刪除表:
DROP TABLE tabname
快速清除一個大表
ALTER TABLE 表名ACTIVATE NOT LOGGED INITIALLY WITH EMPTY TABLE
關閉表的日誌
ALTER TABLE 表名 ACTIVATE NOT LOGGED INITIALLY
列出一個使用者所有的表
SELECT * FROM SYSIBM.SYSTABLES WHERE CREATOR='USER'
要刪除表中所有行而不刪除表本身,可以用ALTER TABLE語句:
ALTER TABLE name ACTIVATE NOT LOGGED INITIALLY WITH EMPTY TABLE
3.2.3 表空間:
表空間用來儲存表,抽象物理儲存,由一個或多個容器組成,有4k,8k,16k,32k的頁面大小。預設的表空間有:SYSCATSPACE(4K,儲存系統目錄和表),TEMPSPACE1(4K,臨時表空間),USERSPACE1(4K,使用者表空間)。
表空間的型別有:REGULAR(如USERSPACE1),SYSTEM TEMPORARY(如TEMPSPACE1),LARGE(如SPS_LARGE),USER TEMPORARY四種。
表空間按管理方式分為系統管理表空間(SMS:system manage space)和資料庫管理表空間(DMS),SMS是由系統進行維護的,其容器是檔案系統的目錄,自己增長,大小的限制為檔案目錄的大小,容器的個數在建立的時候決定,不能修改,不能劃分為INDEX和LOB表空間。DMS是資料庫維護的,其容器是file或raw devices ,其容器們可以增加,修改,或改變大小,DMS可以把INDEX,TABLE和LOB資料放到幾個表空間中。
建立表空間:
create tablespace tbsname pagesize 4k managed by database using (file ‘file’ size)
表空間加入容器:
alter tablespace tablespace_name add(file 'filename' size)
注:該操作是不可逆的,加入容器後將不能將其刪除,因此在加入的時候注意。
刪除表空間:
drop tablespace tbsname
OLTP聯機事務處理的時候一般用smaller page size
OLAP聯機分析處理或DSS資料倉儲系統的時候一般用larger page size
DMS比SMS快10%到15%的速度
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9524210/viewspace-471541/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 自己整理的學習資料——DB2 V8資料庫基礎(二十六)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(六)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(七)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(八)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(十一)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(十二)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(十三)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(十七)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(十八)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(十九)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(二十)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(一)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(四)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(五)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(二十一)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(二十二)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(二十四)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(二十七)DB2資料庫
- 自己整理的學習資料——DB2 V8資料庫基礎(二十八)DB2資料庫
- mysql資料庫學習基礎知識整理MySql資料庫
- 資料庫基礎知識整理與複習總結資料庫
- 【java基礎資料整理】Java
- 零基礎學習MySQL資料庫—3MySql資料庫
- 學習資料庫的基礎知識的書籍資料庫
- 突擊學習之資料庫基礎彙總資料庫
- 資料庫學習筆記 - MySQL基礎知識資料庫筆記MySql
- MySQL資料庫基礎學習筆記(整理自蘇勇老師的MySQL基礎課程視訊)MySql資料庫筆記
- Go 學習資料整理Go
- iOS 學習資料整理iOS
- swift學習資料整理Swift
- 資料庫 基礎資料庫
- 資料庫基礎資料庫
- 資料庫資料整理資料庫
- 語料庫基礎學習
- 整理最全的“大資料”學習資源大資料
- 大資料學習方法,學大資料需要的基礎和路線大資料
- SLAM(一)----學習資料整理SLAM
- STF,docker學習資料整理Docker