1、直接創(chuàng)建:
創(chuàng)新互聯(lián)建站2013年開創(chuàng)至今,先為珠山等服務(wù)建站,珠山等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為珠山企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
create table t(name varchar2(50 char));
2、創(chuàng)建與表A結(jié)構(gòu)相同的空表:
create table a_tmp as select * from A where 1=0;
3、復(fù)制表A全部(或部分)數(shù)據(jù):
create table a_tmp as select * from A (where a.xxx=xxx)
1.創(chuàng)建表:
創(chuàng)建表使用CREATE TABLE命令。執(zhí)行這個命令時,必須有CREATE TABLE的系統(tǒng)權(quán)限。如果想在其他用戶的方案下創(chuàng)建表,必須被賦予CREATE ANY TABLE的系統(tǒng)權(quán)限。創(chuàng)建表的語法如下:
CREATE ? TABLE [schema.]table_name(
column_name datetype [DEFAUIT expr][,...]
);
上述語法將會在方案schema下創(chuàng)建一個名為table_name的表,在表中列用column_name表示,后面跟隨的datetype表示該列的數(shù)據(jù)類型,可以通過DEFAULT子句給列指定默認(rèn)值。如下圖為在方案SCOTT下創(chuàng)建表TEST01:
2.修改表:
如果在建表后發(fā)現(xiàn)有不合適的表結(jié)構(gòu)或表名,可以使用ALTER TABLE語句修改。包括增加列、修改列定義、刪除列、修改列名和修改表名等。如下圖依次為上述情況的實(shí)例。
3.截斷表:
截斷表使用TRUNCATE TABLE語句實(shí)現(xiàn),作用是保留表結(jié)構(gòu)刪除表數(shù)據(jù),語法如下:
TRUNCATE TABLE table_name;
如下圖:
4.刪除表:
當(dāng)表不需要的時候,可以使用DROP TABLE?把表刪除。刪除表會將表的所以數(shù)據(jù)及結(jié)構(gòu)都刪除,并從數(shù)據(jù)字典中刪除表的相關(guān)信息,所以未完成的事務(wù)自動提交,和表相關(guān)的所以索引也會被刪除。語法如下:
DROP TABLE table_name [CASCADE CONSTRAINT];
如果要刪除的表有主外鍵關(guān)聯(lián)關(guān)系時必須使用CASCADE CONSTRAINT子句。
5.給表增加注釋:
在應(yīng)用程序設(shè)計時,必要的注釋是十分有必要的,可以使用COMMENT語句來實(shí)現(xiàn),給表和列增加注釋的語法如下:
COMMENT ON TABLE table_name IS 'comment_string';
和
COMMENT ONCOLUMN table_name.column_name IS 'comment_string';
這種的注釋是存儲在數(shù)據(jù)庫中的,一般在腳本文件,過程或函數(shù)中建議增加單行或多行注釋以增加可讀性,在Oracle數(shù)據(jù)庫中,單行注釋使用兩個短的中劃線“_ _”表示,多行注釋使用“/*...*/”表示。
在數(shù)據(jù)字典中查看表的信息:
和表相關(guān)的數(shù)據(jù)字典主要包括USER_TABLES和USER_OBJECTS查看表信息,以及USER_TAB_COMMENTS和USER_COL_COMMJENTS查看表和列的注釋信息。如下圖:
oracle創(chuàng)建表空間有多種方法,如下:
一、方法1:
代碼創(chuàng)建,如下:
SQL edi
已寫入 file afiedt.buf
1 create tablespace ts1
2 datafile 'F:\oracle\product\10.2.0\oradata\orcl\ts1.dbf' size 100M
3 autoextend on next 1M maxsize 1000M
4* extent management local
SQL /
表空間已創(chuàng)建。
二、方法2
用sqlplus,如下:
sqlplus / as sysdba
SQLcreate tablespace tbsname datafile '文件路徑及文件名' size 500m;
三、方法3
通過腳本創(chuàng)建,如下:
Create tablespace StartDB
datafile 'e:\database\oracle\StartDB.dbf'
size 32m
autoextend on
next 32m maxsize 1024m
extent management local。
在oracle中建表可用sql語句或圖形界面操作。
一、sql語句:
create?table?test
(id?int,
name?varchar2(10));
二、圖形界面:
以PL/SQL為例:
1、登錄到指定數(shù)據(jù)庫。
2、左側(cè)列表中找到Tables選項(xiàng),并右鍵,選擇新建。
3、在“一般”選項(xiàng)卡下,填寫表名稱,選擇所屬表空間。
4、在“列”選項(xiàng)卡下,填寫字段名稱及類型,然后點(diǎn)擊“應(yīng)用”按鈕保存即可。
從數(shù)據(jù)庫用戶角度看,數(shù)據(jù)庫中的數(shù)據(jù)是以表、視圖等方式儲存的。那么用戶自己是怎么創(chuàng)建表的呢?簡單的有兩種方式,一種是用戶可以在Oracle提供的SQL*Plus中使用CREATE TABLE語句創(chuàng)建表,也可以通過OEM圖形化工具創(chuàng)建表。
工具/材料
電腦
Oracle 10g
CREATE TABLE創(chuàng)建表 01
首先用戶必須要有CREATE TABLE系統(tǒng)權(quán)限,并且只能在自己的模式中創(chuàng)建表,圖中的例子使用CREATE TABLE語句在當(dāng)前模式中創(chuàng)建了一個共有5列的表:表的名稱為employees,包含 emp_id, name, job,age,dep_id 等5列,后面的number、 varchar2、等為數(shù)據(jù)類型,括號里面為長度。
02
如果想要在其他模式中創(chuàng)建表,則必須在表名前加上模式名,并且用戶還要有CREATE ANY TABLE系統(tǒng)權(quán)限,例如圖中語句將在SYSTEM模式中創(chuàng)建employees1表
OEM創(chuàng)建表 01
在OEM主界面中選擇【管理】選項(xiàng)卡,進(jìn)入如圖所示的數(shù)據(jù)庫管理界面;然后在“數(shù)據(jù)庫對象”中單擊【表】選項(xiàng)。
02
系統(tǒng)進(jìn)入管理表界面,在該頁面中單擊【創(chuàng)建】按鈕,進(jìn)入如圖所示的“創(chuàng)建表的組織形式”界面。在該界面中用戶可以選擇創(chuàng)建的表類型---標(biāo)準(zhǔn)表、臨時表或索引表。
03
在選擇創(chuàng)建的表類型后,單擊【繼續(xù)】按鈕,進(jìn)入如圖所示的“創(chuàng)建表”界面。在“名稱”文本框中輸入要創(chuàng)建表的名稱。系統(tǒng)在“方案”文本框中顯示當(dāng)前模式,這表示新創(chuàng)建的表將屬于該模式。
04
在“創(chuàng)建表”頁面中選擇“約束條件”選項(xiàng)卡,進(jìn)入如圖所示的“表約束條件”頁面。該頁面中用戶可以為創(chuàng)建的表定義約束條件,包括主鍵約束(PRIMARY)、唯一約束(UNIQUE)、檢查約束(CHECK)和外鍵(FOREIGN)約束。
05
設(shè)置儲存參數(shù),選擇“儲存”選項(xiàng)卡,進(jìn)入如圖所示的儲存設(shè)置界面,最后保存表格,單機(jī)【確定】按鈕,系統(tǒng)會根據(jù)用戶對表的設(shè)置,創(chuàng)建一個新表。
oracle數(shù)據(jù)庫的建表語句,具體語法如下:
語法說明:
tablename:在數(shù)據(jù)庫中需要創(chuàng)建的表的表名稱,在同一個數(shù)據(jù)庫中的表名稱是不能重復(fù)的;
column_name:創(chuàng)建的表的列名稱,列名稱在一個表中也是不能重復(fù)的;
datatype:創(chuàng)建的表的列中存放數(shù)據(jù)的數(shù)據(jù)類型;
null,not null:允許該列為空或者不為空,默認(rèn)情況下是不為空;
constraint:為表中的列設(shè)置約束,如主鍵約束,外鍵約束,唯一約束等。
擴(kuò)展資料
邏輯結(jié)構(gòu)
它由至少一個表空間和數(shù)據(jù)庫模式對象組成。這里,模式是對象的集合,而模式對象是直接引用數(shù)據(jù)庫數(shù)據(jù)的邏輯結(jié)構(gòu)。模式對象包括這樣一些結(jié)構(gòu):表、視圖、序列、存儲過程、同義詞、索引、簇和數(shù)據(jù)庫鏈等。邏輯存儲結(jié)構(gòu)包括表空間、段和范圍,用于描述怎樣使用數(shù)據(jù)庫的物理空間。
總之,邏輯結(jié)構(gòu)由邏輯存儲結(jié)構(gòu)(表空間,段,范圍,塊)和邏輯數(shù)據(jù)結(jié)構(gòu)(表、視圖、序列、存儲過程、同義詞、索引、簇和數(shù)據(jù)庫鏈等)組成,而其中的模式對象(邏輯數(shù)據(jù)結(jié)構(gòu))和關(guān)系形成了數(shù)據(jù)庫的關(guān)系設(shè)計。
段(Segment):是表空間中一個指定類型的邏輯存儲結(jié)構(gòu),它由一個或多個范圍組成,段將占用并增長存儲空間。
其中包括:
數(shù)據(jù)段:用來存放表數(shù)據(jù);
索引段:用來存放表索引;
臨時段:用來存放中間結(jié)果;
回滾段:用于出現(xiàn)異常時,恢復(fù)事務(wù)。
范圍(Extent):是數(shù)據(jù)庫存儲空間分配的邏輯單位,一個范圍由許多連續(xù)的數(shù)據(jù)塊組成,范圍是由段依次分配的,分配的第一個范圍稱為初始范圍,以后分配的范圍稱為增量范圍。
數(shù)據(jù)塊(Block):
是數(shù)據(jù)庫進(jìn)行IO操作的最小單位,它與操作系統(tǒng)的塊不是一個概念。oracle數(shù)據(jù)庫不是以操作系統(tǒng)的塊為單位來請求數(shù)據(jù),而是以多個Oracle數(shù)據(jù)庫塊為單位。
參考資料來源:百度百科-Oracle數(shù)據(jù)庫