黄色电影一区二区,韩国少妇自慰A片免费看,精品人妻少妇一级毛片免费蜜桃AV按摩师 ,超碰 香蕉

DB2表

db2表

表是由數(shù)據(jù)庫(kù)管理器維護(hù)的邏輯結(jié)構(gòu)。在表中,每個(gè)垂直塊稱(chēng)為列(元組),每個(gè)水平塊稱(chēng)為行(實(shí)體)。存儲(chǔ)在列和行的形式數(shù)據(jù)的集合稱(chēng)為一個(gè)表。在表中,每一列具有不同的數(shù)據(jù)類(lèi)型。表被用來(lái)存儲(chǔ)持久數(shù)據(jù)。

 

表類(lèi)型

  • 基本表:持有持久性數(shù)據(jù)。有不同種類(lèi)的基表,其中包括:
  • 常規(guī)表:通用表,帶有索引常見(jiàn)表是通用表。
  • 多維聚類(lèi)表(mdc):這種類(lèi)型的表中的物理聚集在一個(gè)以上的鍵,它用來(lái)保持大量數(shù)據(jù)庫(kù)環(huán)境。未在db2 purescale的支持這些類(lèi)型的表。
  • 插入時(shí)間集群表(itc):類(lèi)似于mdc表,行是由它們插入到表的時(shí)間聚集。它們可以被分區(qū)表。他們不支持purescale環(huán)境。
  • 系列集群表表(rct):這種類(lèi)型的表提供數(shù)據(jù)的快速和直接訪(fǎng)問(wèn)。這些被實(shí)現(xiàn)為連續(xù)簇。表中的每個(gè)記錄有一個(gè)記錄id。這些類(lèi)型的表的使用,其中的數(shù)據(jù)被緊密地與在表中的一個(gè)或多個(gè)列群集。這種類(lèi)型的表也不會(huì)在db2 purescale的支持。
  • 分區(qū)表:這些類(lèi)型的表中使用的數(shù)據(jù)組織模式,在這種表中的數(shù)據(jù)被劃分成多個(gè)存儲(chǔ)對(duì)象。數(shù)據(jù)分區(qū)可以被添加到,附著和脫離一個(gè)分區(qū)表??梢詮谋碇幸粋€(gè)表中存儲(chǔ)多個(gè)數(shù)據(jù)分區(qū)。
  • 時(shí)態(tài)表:在數(shù)據(jù)庫(kù)中的表的歷史被存儲(chǔ)在表中的時(shí)間,如先前所做的修改的細(xì)節(jié)。
  • 臨時(shí)表: 對(duì)于不同的數(shù)據(jù)庫(kù)操作的臨時(shí)工作,需要使用臨時(shí)表。臨時(shí)表(dgtts)不會(huì)出現(xiàn)在系統(tǒng)目錄中,xml列不能在創(chuàng)建臨時(shí)表使用。
  • 實(shí)體化查詢(xún)表: mqt可用于提高查詢(xún)性能。這些類(lèi)型的表是由一個(gè)查詢(xún),它被用于確定表中的數(shù)據(jù)來(lái)定義。
  •  

    創(chuàng)建表

    以下是創(chuàng)建表的語(yǔ)法:

    語(yǔ)法:[創(chuàng)建一個(gè)新表]

    db2 create table <schema_name>.<table_name>
    (column_name column_type....) in <tablespace_name>
    

    比如:我們創(chuàng)建一個(gè)表來(lái)存儲(chǔ)“employee”的詳細(xì)信息在“professional”的模式。此表有“id, name, jobrole, joindate, salary”字段和本表數(shù)據(jù)將被存儲(chǔ)在表空間“ts1”。

    db2 create table professional.employee(id int, name
    varchar(50),jobrole varchar(30),joindate date,
    salary double) in ts1
    

    輸出:

    db20000i the sql command completed successfully.
    

     

    表詳細(xì)信息列表

    以下用于列出表的詳細(xì)信息的語(yǔ)法:

    語(yǔ)法:[查看含有模式創(chuàng)建的表的列表]

    db2 select tabname, tabschema, tbspace from syscat.tables
    

    例如:[查看當(dāng)前數(shù)據(jù)庫(kù)表的列表]

    db2 select tabname, tabschema, tbspace from syscat.tables
    

    輸出:

    tabname      tabschema     tbspace
    ------------ ------------- --------
    employee     professional    ts1  
    
    
     1 record(s) selected.
    

     

    表中的列的列表

    以下列出一個(gè)表中的列的語(yǔ)法:

    語(yǔ)法:[查看表的列和數(shù)據(jù)類(lèi)型]

    db2 describe table <table_name>
    

    例如:[查看表'employee'的數(shù)據(jù)類(lèi)型和列]

    db2 describe table professional.employee
    

    輸出

    data type                   column
    column name  schema    data type name    length    scale nulls
    ------ ----- --------- ----------------- --------- ----- ------
    id           sysibm    integer             4         0     yes
    name         sysibm    varchar             50        0     yes
    jobrole      sysibm    varchar             30        0     yes
    joindate     sysibm    date                4         0     yes
    salary       sysibm    double              8         0     yes  
    
      5 record(s) selected.
    

    隱藏列

    可以隱藏表的整個(gè)列。如果使用“select * from”查詢(xún),隱藏的列不在結(jié)果表中返回。當(dāng)將數(shù)據(jù)插入一個(gè)表格,一個(gè)“insert”沒(méi)有列列表語(yǔ)句,不指示值的任何隱式隱藏列。這些類(lèi)型的列在物化查詢(xún)表高度引用。這些類(lèi)型的列不支持創(chuàng)建臨時(shí)表。

     

    隱藏列創(chuàng)建表

    下面是使用隱藏列創(chuàng)建表的語(yǔ)法:

    語(yǔ)法:[創(chuàng)建具有隱藏列的表]

    db2 create table <tab_name> (col1 datatype,col2 datatype
    implicitly hidden)
    

    例如:要?jiǎng)?chuàng)建一個(gè)“customer”表中隱藏列“phone”]

    db2 create table professional.customer(custid integer not
    null, fullname varchar(100), phone char(10)
    implicitly hidden)
    

     

    插入數(shù)據(jù)值到表中

    以下插入到表中的值的語(yǔ)法:

    語(yǔ)法:[插入值到一個(gè)表]

    db2 insert into <tab_name>(col1,col2,...)
     values(val1,val2,..)
    

    例如:[在“customer”表中插入值]

    db2 insert into professional.customer(custid, fullname, phone)
    values(100,'ravi','9898989')
    
    
    db2 insert into professional.customer(custid, fullname, phone)
    values(101,'krathi','87996659')
    
    
    db2 insert into professional.customer(custid, fullname, phone)
    values(102,'gopal','768678687')
    

    輸出

    db20000i  the sql command completed successfully.
    

     

    從表中檢索值

    以下從表中檢索值的語(yǔ)法:

    語(yǔ)法:[從表中檢索值]

    db2 select * from <tab_name>
    

    例如:[檢索“customer”表中的值]

    db2 select * from professional.customer
    

    輸出

    custid      fullname
    ----------- ------------------------
            100 ravi
    
            101 krathi
    
            102 gopal  
    
      3 record(s) selected.
    

    從包括隱藏列的表中檢索值

    以下從選定列檢索值的語(yǔ)法:

    語(yǔ)法:[從表中檢索選擇隱藏的列的值]

    db2 select col1,col2,col3 from <tab_name>
    

    例如:[從表中檢索所選列的值的結(jié)果]

    db2 select custid,fullname,phone from professional.customer
    

    輸出:

    custid  fullname    phone
    ------- ---------   ------------
    100     ravi        9898989
    
    101     krathi      87996659
    
    102     gopal       768678687
    
      3 record(s) selected.
    

    如果想看到隱藏的列中的數(shù)據(jù),需要執(zhí)行“describe”命令。

    語(yǔ)法:

    db2 describe table <table_name> show detail
    

    示例:

    db2 describe table professional.customer show detail
    

    輸出:

    column name     data type schema     data type name  column
               column    partitionkey  code
                                           length   scale    nulls     
    number     sequence      page     hidden      default
    --------------- -------------------- --------------- -------- ----
    ---- -------- ---------- ------------- -------- ----------- ------
    ---  
    custid          sysibm               integer         4        0
    no       0          0         0        no
    fullname        sysibm               varchar         100      0
    yes      1          0        1208     no     
    
    phone           sysibm               character       10       0     
    yes      2          0             1208     implicitly  
    
    3 record(s) selected.
    

     

    改變表列的類(lèi)型

    可以使用“alter”命令,如下所示修改表結(jié)構(gòu):

    語(yǔ)法

    db2 alter table <tab_name> alter column <col_name> set data type <data_type>
    

    示例:?jiǎn)T工表列“id”從“int”修改到“bigint”的數(shù)據(jù)類(lèi)型]

    db2 alter table professional.employee alter column id set data type bigint
    

    輸出:

    db20000i the sql command completed successfully.
    

     

    變更列名

    可以更改列名,如下所示:

    語(yǔ)法:[修改表的列名從舊名稱(chēng)到新名稱(chēng)]

    db2 alter table <tab_name> rename column <old_name> to <new_name>
    

    示例:為了“customers”表列名從“fullname”修改為“custname”]

    db2 alter table professional.customer rename column fullname to custname
    

     

    刪除表

    要?jiǎng)h除任何表,則需要使用“drop”命令,如下所示:

    語(yǔ)法

    db2 drop table <tab_name>
    

    示例:[從數(shù)據(jù)庫(kù)中刪除customer表]

    db2 drop table professional.customers
    

    要?jiǎng)h除表(包括觸發(fā)器和關(guān)系),需要使用“drop table hierarchy”命令刪除整個(gè)層次。

    語(yǔ)法:

    db2 drop table hierarchy <tab_name>
    

    示例:[要?jiǎng)h除表'customer'的整個(gè)層次]

    db2 drop table hierarchy professional.customers
    

    下一節(jié):db2 別名

    db2 教程

    相關(guān)文章