DML語句 insert 向表中插入新的記錄 --三種插入方式 --(1)不寫欄位的名字,直接按照欄位的順序把值逐個往裡插 insert into dept2 values(50,'DANAME','BEIJING'); --(2)指定某些欄位往裡插,其他不插的欄位預設都是空值 insert int... ...
DML語句
insert
向表中插入新的記錄
--三種插入方式
--(1)不寫欄位的名字,直接按照欄位的順序把值逐個往裡插
insert into dept2 values(50,'DANAME','BEIJING');
--(2)指定某些欄位往裡插,其他不插的欄位預設都是空值
insert into dept2(deptno,dname) values(60,'DNAME2');
--(3)將子查詢的結果插入到表中
insert into dept2 select * from dept;
update
修改記錄。
--對部門號為10的員工的工資加2 倍
update emp2 set sal = sal*2 , ename='2'||ename where deptno =10;
--將編號為7369的員工的經理改為編號為7698 的經理
update emp2 set mgr = 7698 where empno = 7369;
delete
刪除員工名為2MILLER的員工
delete from emp2 where ename = ‘2MILLER’;
DDL語句
create
創建新的表,創建表時可以指定欄位的約束條件。約束條件通常有:預設約束,非空約束,唯一約束,主鍵約束,外鍵約束,check 。約束有可以分為列級約束、表級約束。
無約束創建表
create table stu
(
id number(10),
name varchar2(20),
sdate date,
class number(10),
grade number(2) ,
email varchar2(50)
);
非空約束&check約束&預設約束&唯一約束
可以對某些欄位進行非空約束和唯一約束。
--name非空,emali唯一
create table stu
(
id number(10) check(id>1000),
name varchar2(20) not null,
sdate date,
class number(10),
grade number(2) default 1,
email varchar2(50) unique
);
--使用constraint給約束條件取名字,如果不給約束條件起名字,系統會預設的給約束條件起一個名字
create table stu
(
id number(10),
name varchar2(20) constraint stu_name_nn not null,
sdate date,
class number(10),
grade number(2) default 1,
email varchar2(50) constraint stu_email_un unique
);
主鍵約束&外鍵約束
主鍵的一些特性:
(1)可以唯一標識整條記錄
(2)非空且唯一
(3)用類型的數值的欄位做主鍵比字元類型的欄位更合適
(4)可以用多個欄位作為聯合主鍵
外鍵的一些特性:
(1)建立於一張表的兩個欄位,或者兩張表的兩個欄位,一個欄位去參考另一個欄位的值
(2)如果被參考欄位沒有這個值,不能把參考欄位的值設置成為其他的值(如,被參考欄位為空,而將參考欄位設置為一個非空值是不能的)
(3)被參考的欄位必須是主鍵
(4)被參考的欄位不能作為刪除條件
--name非空,emali唯一
create table stu