一及刻、認(rèn)識表: 行(記錄) 列(域或者字段)
數(shù)據(jù)類型: 字符型 數(shù)值型 日期型 其它類型
字符型 : CHAR(n) 是定長的,比如n=10 我字符長度只有3暑劝,那么輸出的結(jié)果要補(bǔ)充7個空格,比較浪費空間颗搂,最大長度2000。但是對于VARCHAR2(n)來說傅联,它是變長的卖丸,字符長度是3就給3不用給空格,稍浆,最大長度4000。
數(shù)值型:number(p,s) number(5,2)有效數(shù)字是5位嫁艇,保留2位小數(shù)弦撩。
float(n) 保存二進(jìn)制數(shù)據(jù)的
日期型:DATE 精確到秒
TIMESTAMP精確到小數(shù)秒
其它類型:BLOB,CLOB 存放4GB字節(jié)數(shù)據(jù)
二、創(chuàng)建表
CREATE TABLE table_name
( column_name datatype,...)
小練習(xí)猾漫,創(chuàng)建用戶信息表:
編號感凤,用戶名,密碼陪竿,郵箱,注冊時間闰挡,這個時候要思考所需字段,字段類型是什么溪北?
用戶編號,整數(shù)刻盐。用戶名劳翰,密碼佳簸,郵箱字符型颖变,注冊時間用日期型來表示。
create table userinfo(
id number(6,0),username varchar2(20),userpwd varchar2(20),email varchar(30),regdate date);
三马胧、
1.在表里添加字段:
alter table table _name add column_name datatype;
alter table userinfo(表名字) add remarks varchar2(500);
2.更改字段的數(shù)據(jù)類型:
ALTER TABLE table_name MODIFY(更改原有的內(nèi)容) column_name datatype;
(1)練習(xí)1:remarks的長度變?yōu)?00
alter table userinfo modify remarks varchar2(400);
(2)練習(xí)2:用戶密碼改成number類型
alter table userinfo modify userpwd number(6,0);
3.刪除字段:
alter table table_name drop column column_name(刪除的字段名);
4.修改字段名
alter table table_name rename colunm column_name to new_column_name;
5.修改表名
rename table_name to new_table_name;
四衔峰、刪除表
TRUNCATE TABLE table_name 刪除表里面的全部數(shù)據(jù),而不是刪除表威彰,也叫截斷表
DROP TABLE table_name 刪除表結(jié)構(gòu)穴肘,整個都沒有了。
五评抚、操作表中的數(shù)據(jù)
1.添加數(shù)據(jù)
INSERT語句
INSERT INTO table_name (column1,column2,...) VALUES(value1,value2,...)
實例:
a.向表中所有字段添加值
insert into userinfo values(1,'xxx','123','xxx@126.com',sysdate);(sysdate是指的獲取當(dāng)前的時間信息。
b.向表中添加默認(rèn)值
create table userinfo1 (id number(6,0), regdate date default sysdate); defaule代表默認(rèn)值
insert into userfol(id) values(1) 要值和字段一一對應(yīng)
2.復(fù)制表數(shù)據(jù)
在建表時復(fù)制邢笙,在添加時復(fù)制鱼响;
(1)在建表時復(fù)制
CREATE TABLE table_new AS SELECT (后面這個是需要復(fù)制的字段名字,多個字段用逗號隔開,所有的字段就用星號隔開)column1,...|FROM table_old 债鸡;
create table userinfo_new as select * from userinfo; 復(fù)制全部的內(nèi)容
create table userinfo_new as select id from userinfo; 復(fù)制id 的內(nèi)容
(2)在添加時復(fù)制
INSERT INTO table_new [(column1,...)] SELECT column1,...| FROM table_old
insert into userinfo_new(id,username) select id,username from userinfo;
3.修改數(shù)據(jù)
UPDATE語句
UPDATE table_name SET (為字段設(shè)置新的值铛纬,數(shù)據(jù)類型必須相匹配)column1=value1,...[WHERE conditions](修改的條件,不會修改全部的數(shù)據(jù))
1.無條件的更新
update userinfo set userpwd='111111'
2.有條件的更新
update userinfo set userpwd='123456' where username='xxx';
4.刪除數(shù)據(jù)
DELETE語句
where conditions 根據(jù)條件改棺弊,有條件的刪除
5.約束
外鍵約束擒悬,唯一約束,檢查約束
約束的作用:(1)定義規(guī)則(2)確保完整性
非空約束
1.創(chuàng)建表時設(shè)置非空約束
create table table_name(column_name字段名 datatype數(shù)據(jù)類型 not null,...);數(shù)據(jù)類型后面加上not null即可;
2.修改表時添加非空約束
alter table table_name modify column_name datatype not null;