常用的SQL命令及表的管理

2021-08-20 11:08:26 字數 4579 閱讀 8154

select * from user_tables
select

distinct object_type

from user_objects ;

必須以字母開頭

必須在1-30個字元之間

只能包含a-z,a-z,0-9,_、$ 和 #

不能與使用者定義其他物件重名

不能與系統保留字段重名

資料定義語言 (data definition language, ddl) 是sql語言集中負責資料結構定義與資料庫物件定義的語言,由create、alter與drop三個語法所組成。

例子1:

新建使用者表t_user結構如下:

字段型別

長度主鍵

為空id

number6是

否姓名char20否

是年齡number2否

是性別char2否

是日期date-否

是分數float-否

是 對應的sql語句:

create

table t_user

( u_id number(6) not

null,

u_name char(20),

u_age number(2),

u_*** char(2),

u_date date ,

u_score float

)

例子2:

1. 先在表結構中新增乙個u_tel欄位,長度為20,型別為number,可為空;

2. 將u_tel欄位中的字段長度修改為11;

3. 刪除u_tel欄位;

增加字段 alter table add

alter

table t_user add(

u_tel number(20)

)

修改字段 alter table modify

alter

table t_user modify(

u_tel number(11)

)

刪除欄位alter table drop

alter

table t_user drop(

u_tel

)

drop

table t_user ;

資料操作語言dml(data manipulation language),使用者通過它可以實現對資料庫的基本操作。例如,對錶中資料的查詢、插入、刪除和修改,dml操作需要呼叫commit語句之後才能生效。

例子4:

往t_user中插入資料,u_id = 100000 , u_name = 『葉清逸』 , u_age = 25 , u_*** = 『m』 , u_date = 『1992-10-24 20:47:00』 , u_score = 100.00 。

對應的sql語句:

-- 插入一條資料

insert into t_user

( u_id ,u_name ,u_age ,u_*** ,u_date ,u_score

) values (100000 , '葉清逸' , 25 , 'm' , to_date('1992-10-24 20:47:00','yyyy-mm-dd hh24:mi:ss') , 100.00);

-- 插入多條資料(方式1)

insert all

into t_user values (100000 , '葉清逸' , 25 , 'm' , to_date('1992-10-24 20:47:00','yyyy-mm-dd hh24:mi:ss') , 100.00)

into t_user values (100001 , '張三' , 21 , 'm' , to_date('1991-01-03 20:47:00','yyyy-mm-dd hh24:mi:ss') , 98.00)

into t_user values (100002 , '李四' , 20 , 'm' , to_date('1995-10-06 20:47:00','yyyy-mm-dd hh24:mi:ss') , 65.00)

into t_user values (100003 , '王五' , 18 , 'f' , to_date('1998-07-04 20:47:00','yyyy-mm-dd hh24:mi:ss') , 89.00)

into t_user values (100004 , '李華' , 29 , 'm' , to_date('1986-10-24 18:07:00','yyyy-mm-dd hh24:mi:ss') , 73.00)

into t_user values (100005 , '大傻' , 30 , 'm' , to_date('1980-01-13 20:47:00','yyyy-mm-dd hh24:mi:ss') , 36.00)

into t_user values (100006 , '二傻' , 31 , 'm' , to_date('1981-05-05 20:47:00','yyyy-mm-dd hh24:mi:ss') , 56.00)

into t_user values (100007 , '小傻' , 32 , 'm' , to_date('1982-09-16 20:47:00','yyyy-mm-dd hh24:mi:ss') , 43.00)

select

1from dual ;

-- 插入多條資料(方式2)

begin

into t_user values (100000 , '葉清逸' , 25 , 'm' , to_date('1992-10-24 20:47:00','yyyy-mm-dd hh24:mi:ss') , 100.00);

into t_user values (100001 , '張三' , 21 , 'm' , to_date('1991-01-03 20:47:00','yyyy-mm-dd hh24:mi:ss') , 98.00);

into t_user values (100002 , '李四' , 20 , 'm' , to_date('1995-10-06 20:47:00','yyyy-mm-dd hh24:mi:ss') , 65.00);

into t_user values (100003 , '王五' , 18 , 'f' , to_date('1998-07-04 20:47:00','yyyy-mm-dd hh24:mi:ss') , 89.00);

into t_user values (100004 , '李華' , 29 , 'm' , to_date('1986-10-24 18:07:00','yyyy-mm-dd hh24:mi:ss') , 73.00);

into t_user values (100005 , '大傻' , 30 , 'm' , to_date('1980-01-13 20:47:00','yyyy-mm-dd hh24:mi:ss') , 36.00);

into t_user values (100006 , '二傻' , 31 , 'm' , to_date('1981-05-05 20:47:00','yyyy-mm-dd hh24:mi:ss') , 56.00);

into t_user values (100007 , '小傻' , 32 , 'm' , to_date('1982-09-16 20:47:00','yyyy-mm-dd hh24:mi:ss') , 43.00);

end ;

--從已知表插入資料

insert into t_user (u_id , u_name , u_date)

select s_id , s_name , s_birthday

from t_student ;

--指令碼插入,手動輸入各項值

--& 指定列,放到變數值values位置

insert into t_user(u_id,u_name,u_age,u_***,u_date,u_score)

values (&u_id,'&u_name',&u_age,'&u_***','&u_date',&u_score);

例子5:刪除t_user 中的 u_name = 『張三』 的記錄。

對應的sql語句:

delete

from t_user where u_name = '張三' ;

例子6:將表t_user中的王五的成績修改為88 。

update t_user set u_score = 87.00

where u_name = '王五' ;

例子7:將表t_user中名叫王五的記錄刪除。

delete

from t_user where u_name = '王五' ;

例子8:查詢表t_user表中的所有記錄。

select * from t_user
關於select的用法還有很多將會在別的文章進行總結。

Oracle常用SQL及命令

1.啟動和關閉監聽lsnrctl start 和 lsnrctl stop 2.啟動和關閉資料庫 startup 和shutdown 3.啟動sqlplus sqlplus nolog 退出 quit 4.登陸oracle conn connect username password as sysd...

常用的SQL命令

資料型別 就四個,其他用不著,時間可以用字串時間戳的形式存 建立表 create table student id int auto increment primary key,自增長 主鍵 name varchar 20 not null,非空約束 age int not null,非空約束 ge...

SQL建立常用的客戶表及聯絡人表

參考 建立客戶表 create table cst customer cust id bigint 32 not null auto increment comment 客戶編號 主鍵 cust name varchar 32 not null comment 客戶名稱 公司名稱 cust sour...