欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      Oracle05表操作和約束(范文模版)

      時間:2019-05-12 08:12:22下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關的《Oracle05表操作和約束(范文模版)》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《Oracle05表操作和約束(范文模版)》。

      第一篇:Oracle05表操作和約束(范文模版)

      一、DDL數(shù)據(jù)定義語言 1.創(chuàng)建表:create table 表名要求:

      1.必須以字母開頭

      2.必須在1-30個字符之間

      3.必須只能包含A-Z,a-z,0-9,$,_,# 4.必須不能和用戶定義的其他對象重名 5.必須不能是Oracle的保留字 例如: 方式一:

      create table student(stu_no number(11), name varchar(32), gender char(5), age number(3)default 19//為字段設置默認值);Create table test1(ID char(11), Name carchar2(24), Age number(3)default 19);方式二:子查詢建表

      Create table user_info As

      select first_name,salary,dept_id From s_emp;2.刪除表:drop table 例如,drop table studentzxf;3.修改表:alter table Create table tal(Stu_no number(11), Name varchar2(32));1.增加一列

      Alter table tal add age number(3);2.增加多列

      Alter table tal add(address varchar2(32),birthday date);3.刪除一列

      Alter table tal drop column address(列名);4.刪除多列

      Alter table tal drop(age,birthday);5.邏輯刪除列

      Alter table tal set unused column name;Alter talbe tal drop unused columns;//在數(shù)據(jù)庫不繁忙的時候用 Oracle在設計的時候,沒有考慮可逆性 6.修改一列

      Alter table tal modify stu_no number(20);//將原來的長度為11 修改為長度為20 修改列時注意:

      考慮現(xiàn)有數(shù)據(jù)的安全性(包括數(shù)據(jù)的類型,長度),修改長度是 只能往大改 如果表中有數(shù)據(jù),不可以修改類型,只有當表中沒數(shù)據(jù)了才能修改類型 修改多列

      Alter tabale tal modify(stu_no number(11)not null,name char(20));7.重命名列

      Alter table tal rename column stu_no to s_no;8.更改約束

      Alter table tal add constraint tal_pk primary key(s_no);9.刪掉約束

      Alter table test4 drop constraint tal_pk;10.重命名表名

      Rename tal to 新表名 11.添加外鍵約束

      ALTER TABLE tal ADD CONSTRAINT STUDENT_FK FOREIGN KEY(dept_no)REFERENCES dept(dept_no);

      二、DML數(shù)據(jù)操縱語言

      1.插入數(shù)據(jù):insert 例如: insert into Student values(1,’Jack’);//按表中的自然順序逐個插入數(shù)據(jù)

      insert into student(stu_no,name)values(1,’Jack’);//指定字段插入值 2.刪除數(shù)據(jù):delete from[tablename]where… 例如: delete from testdefault where age = 19;3.修改數(shù)據(jù):update[tablename]set a = exp1 where b = exp2 如果沒有限定條件,則會修改整張表中的數(shù)據(jù),即修改整列。例如: update Student set age = 24 where name = ‘jack’;也可一次性寫入多條insert語句一次執(zhí)行完畢。也可加載腳本(.sql文件)命令@+路徑/...sql 4.truncate截斷表

      delete刪除時會產(chǎn)生日志信息的。

      truncate刪除數(shù)據(jù)時不生成日志信息,所以效率快,但也不可逆。truncate截斷后會釋放表空間,而delete并不釋放表空間。

      三、約束

      考慮數(shù)據(jù)庫的完整性約束 三方面:1.實體完整性

      2.參照完整性

      3.用戶自定義完整性 5種約束:

      Not null 非空約束

      (nk)例:Create table stu_info(S_no char(11)not null, S_name varchar2(24)not null, S_age number(3));Unique 唯一約束(uk)(只保證唯一,不保證不為空,多條記錄的值都可以為空,因為Null和null是不相等的,不會提示違反了唯一性)方式一:(列級約束)例:Create table stu_info(S_no char(11)unique not null, S_name varchar2(24)not null, S_age number(3));方式二:(表級約束)例:Create table stu_info(S_no char(11)not null, S_name varchar2(24)not null, S_age number(3), Constraint stu_info_uk unique(S_no,S_name));//約束名為stu_info_uk Primary key 主鍵約束(pk)唯一且非空 方式一:(列級約束)例:create table test2(C1 number(3)constraint test2_pk primary key, C2 number(3));方式二:(表級約束)例:create table test2(C1 number(3), C2 number(3), Primary key(c1,c2));c1 , c2 組合起來是唯一的,c1,c2單獨看不一定是唯一的 Atler table tablename add constraint 主鍵名稱primay key

      表級約束可以約束很多列,可以定義聯(lián)合主鍵,而列級約束是做不到的。

      Foreign key 外鍵約束(fk)

      要求引用另一張表中已存在的值(主鍵、唯一鍵)

      例:create table parent(C1 number(3)primary key, C2 number(3));Create table child(C1 number(3)primary key, C2 number(3)references parent(c1));先建父表再建子表。

      不能隨便刪除,刪除時只能先刪子表記錄再刪父表;刪除表時同理。插入數(shù)據(jù)時先給父表插,再給子表插。

      Drop table parent cascade cinstraint;//刪除表時,如果想先刪除父表,子表不變 例:create table parent(C1 number(3)primary key, C2 number(3));Create table child(C1 number(3)primary key, C2 number(3)references parent(c1)on delete cascade);//刪除記錄時切斷關系,刪除了子表中的記錄再刪除父表

      級聯(lián)刪除:世紀是先刪除子表的記錄,再刪除父表的記錄。表都存在。學生表:學號 姓名 性別

      成績表:成績編號 學號 成績 課程編號 課程表:課程編號 課程名稱

      外鍵:

      成績表里面學號應該是學生表

      成績表里面的課程編號應該是課程表里面的課程編號

      Create table student(sno number primary key, name varchar2(10),sex varchar2(2))Create table score(scno number primary key,sno number not null,sco number(5,2),cno number not null references course(cno))Create table course(cno number primary key,name varchar2(20));Alter table score add constrain fk_stuandscore foreign key(sno)references student(sno);Check 檢查約束(ck)方式一:(列級約束)

      例:create table test3(C1 number(3)check(c1<150), C2 number(3)check(c2 is not null));方式二:(表級約束)

      例:Create table test3(C1 number(3), C2 number(3), Check(c1 = c2));

      第二篇:oracle表空間管理及操作實用案例

      Oracle

      表空間管理及操作詳解(附帶案例)

      一:表空間概述

      表空間是數(shù)據(jù)庫的邏輯組成部分,從物理上講,數(shù)據(jù)庫數(shù)據(jù)存放在數(shù)據(jù)文件中;數(shù)據(jù)庫邏輯上講是由一個或者多個表空間組成,數(shù)據(jù)文件則是存放在表空間中,表空間有一個或者多個數(shù)據(jù)文件組成即表空間有數(shù)據(jù)文件構成的。

      數(shù)據(jù)庫,表空間,段,區(qū),塊,按大小排列依次是:數(shù)據(jù)庫---》表空間-----》段-----》區(qū)----》塊。

      1.建立表空間的作用:

      (1.)控制數(shù)據(jù)庫占用的磁盤空間。(2).dba可以將不同的數(shù)據(jù)類型部署到不同的位置,這樣有利于提高i/o性能,同時有利與備份和恢復等管理操作。

      二:管理表空間和數(shù)據(jù)文件。

      (1)建立表空間create tablespace;一般情況下建立表空間是特權用戶或者dba來執(zhí)行的,如果其他用戶來創(chuàng)建表空間,則用戶建必須要具有create tablespace的系統(tǒng)權限。(2)建立數(shù)據(jù)表空間

      在建立數(shù)據(jù)庫后,為便于管理表,最好建立自己的表空間。

      create tablespace sp02 datafile 'd:testsp02.dbf' size 20m uniform size 128k 說明:執(zhí)行完上述命令后,會建立名稱為sp02的表空間,并為該表空間建立名稱為sp02.dbf的數(shù)據(jù)文件,區(qū)的大小為128k。(3.)在表空間建表

      create table tablesp02(ID number(5),name varchar2(20))tablespace sp02(4)顯示當前用戶擁有哪些表。

      select * from tab;

      (5).知道表空間名,顯示該表空間包括的所有表。

      select * from all_tables where tablespace_name='表空間名'。

      注:擁有權限不同的用戶在進行以上操作得到的結果可能不同。System可以查看得到某空間的所擁有表。(比如users表空間)(6)知道表名,查看該表屬于那個表空間。

      select TABLESPACE_NAME, TABLE_NAME from user_tables where TABLE_NAME='EMP';(7)知道表名,查看該表屬于那個表空間,屬于哪個用戶。

      select owner,TABLESPACE_NAME, TABLE_NAME from all_tables where TABLE_NAME='EMP';(8)改變表空間的狀態(tài) 使表空間可讀寫

      alter tablespace 表空間名 read write;

      刪除表空間,一般情況下由特權用戶或者dba來操作。具有drop tablespace系統(tǒng)權限。

      drop tablespace ‘表空間’includeing contens and datafiles;

      說明:includeing contens表示刪除表空間時,刪除該空間的所有數(shù)據(jù)庫對象而datafiles表示將數(shù)據(jù)庫文件也刪除。(9)改變表空間的狀態(tài)(1)使用空間脫機

      alter tablespace 表空間名 offline(2)使用空間聯(lián)機

      alter tablespace表空間名online(3)只讀表空間

      建立表空間時,表空間可以讀寫,如果不希望在表空間上執(zhí)行update,delete,insert操作。那么可以將表空間修改為只讀。alter talbespace sp01 read only;

      三:移動數(shù)據(jù)文件:

      (1)確定數(shù)據(jù)文件所在的表空間(知道表屬于哪個表空間)Select tablespace_name from dba_data_files where file_name='D:TEST