常用資料庫語句
--建表語句
create table userInfo(
id number(6,0),
username varchar2(20),
userpwd varchar2(20),
email varchar2(30),
regdate date
)
//向表裡新增欄位
--alter table userInfo add remard varchar2(500)
//刪除欄位(注意關鍵字drop column)
--alter table userInfo drop column sex
//修改表中欄位的資料型別
--alter table userInfo modify userpwd number (6,0)
//修改表字段名
--alter table userInfo rename column remard to remarks
//修改表名
--rename userInfo to usersinfo
//查詢表資訊
--select * from usersInfo
//刪除表中的全部資料(速度較drop來說快)
--truncate table usersInfo
//刪除整個表
--drop table usersInfo
/*******************************新增、複製、修改、刪除表資料*********************************************/
//新增表中資料(所以欄位)
--insert into usersInfo values(1,'Mery','123456','[email protected]',sysdate)
//給表中指定欄位新增值
--insert into USERSINFO(id,USERNAME,USERPWD) values(2,'panada','a')
//為表中欄位新增預設值
/* create table userInfo(
id number(6,0),
regdate date default sysdate --將系統日期作為預設日期
)
insert into userinfo(id)values(1) --必須指定列新增
select * from USERINFO
*/
//修改表中欄位為其新增預設值
--alter table usersinfo modify userpwd default '000000'
--insert into usersinfo(id)values(3) --必須指定列新增
/*在建表時複製資料
語法:create table table_newname
as
select column1,column2,...|* from table_oldname
*/
--create table userinfo_new as (select * from usersinfo)
--create table userinfo_new1 as (select id,USERNAME from usersinfo)
--select * from userinfo_new
/*在新增時複製舊錶資料(注:insert into table_newname【必須是存在的】)
insert into table_newname [(column1,column2,column3,...)]
select column1,column2,...|* from table_oldname
注:新增欄位與查詢欄位必須一一對應
*/
--insert into userinfo_new select * from usersinfo
/*更新表資料語法:
update tablename set column1=value1,...[where conditions]
注:當where條件子句不存在時表示更新表中所有行指定欄位資料
*/
--update usersinfo set REGDATE=sysdate --不指定條件,更新所有資料
--update usersinfo set EMAIL='[email protected]' where id=3 --有條件更新
--select * from usersinfo
/* 刪除表資料語法:
delete from table_name [where conditions]
注:當無where條件刪除時等同於truncate語句,只是效率相較低,因為truncate是資料庫定義級操作
*/
--delete from usersinfo where id=1
/**********************************Oracle約束*********************************************/
//非空約束
/* 1、在建立表時設定非空約束
create table tablename(
column_name datatype not null,...
)
2、在修改表時建立非空約束
alter table tablename modify column_name datatype not null
注:執行此語句前必須確保表中該欄位無空值
3、在修改表時去除非空約束
alter table tablename modify column_name datatype null
*/
--alter table usersinfo modify userpwd varchar2(20) not null
//主鍵約束
/*作用:確保表中每一行資料的唯一性,一張表只能有一個主鍵約束,主鍵約束可以由多個欄位構成(複合主鍵或聯合主鍵)
1、建立表時設定主鍵約束
第一種方法: create table tablename(
column_name datatype primary key,...
)
第二種方法:constraint constrain_name primary key(column1,column2,...) --聯合主鍵約束設定
2、在修改表時新增主鍵約束
語法:alter table tablename add constraint constrain_name primary key(column_name1,...);
*/
/* create table userinfo_p1(
id number(6,0) primary key,
username varchar2(20)
) */
/* create table userinfo_p2( --聯合主鍵約束的建立
id number(6,0),
username varchar2(20),
userpwd varchar2(20),
constraint pk_id_username primary key(id,username)
) */
--alter table userinfo add constraint pk_id primary key(id) --修改時建立主鍵約束
//更改約束的名稱
--alter table userinfo rename constraint pk_id to pk_sid
//刪除主鍵(外來鍵、唯一,檢查)約束
/* 不永久刪除僅禁用
alter table tablename disable|enable constraint constraint_name
*/
--alter table userinfo disable constraint pk_sid --disable禁用 ,enable啟用
//查詢約束的狀態資訊【user_constraints是約束的資料字典】
--select constraint_name,status from user_constraints
/* 永久性刪除主鍵(外來鍵,唯一,檢查適用第一種方法)約束
第一種方法:alter table tablename drop constraint constraint_name
第二種方法:alter table tablename drop primary key[cascade] --cascade用於級聯刪除
*/
//外來鍵約束
/*
1、在建立表時設定外來鍵約束(table1表示從表,table2表示主表)
第一種方法: create table table1(
column_name datatype references table2(column_name),...
);
注:設定外來鍵約束時,主表中的欄位必須是主鍵,主從表中相應的欄位必須是相同的資料型別
從表中外來鍵欄位的值必須來自主表中相應欄位的值,或者為null值
第二種方法:constraint constraint_name foreign key(column_name
references table_name(column_name)[on delete cascade]
2、在修改表時新增外來鍵語法:(tablename從表名,tablename_column從表中的外來鍵欄位,tablePKname主表名)
alter table tablename
add constraint fk_name foreign key(tablename_column) references tablePKname(tablePKname_column)
*/
/* create table typeinfo(
typeid varchar2(10) primary key,
typename varchar2(20)
)
create table userinfo_f(
id varchar2(10)primary key,
username varchar2(20),
typeid varchar2(10) references typeinfo(typeid) ----在建立表時設定外來鍵約束第1種方法
) */
--insert into typeinfo values(1,'it')
--select * from typeinfo
--insert into userinfo_f values(1,'a',1)
--insert into userinfo_f values(2,'a',null)
--select * from userinfo_f
/* create table userinfo_f1( --在建立表時設定外來鍵約束第二種方法
id varchar2(10)primary key,
username varchar2(20),
typeid varchar2(10)
constraint fk_typeid foreign key(typeid)
references typeinfo(typeid)
) */
//在修改表時新增外來鍵語法
/* alter table userinfo_f2
add constraint fk_name foreign key(typeid) references typeinfo(typeid) */
//唯一性約束
/*唯一約束和主鍵約束的區別:
主鍵欄位值必須是非空的,唯一約束允許有一個空值
主鍵約束在一張表中只能有一個,唯一約束可不止一個
1、在建立表時設定唯一約束語法:
第一種方法(列級設定): create table tablename(
column_name datatype unique,...
)
第二種方法(表級設定):create table tablename(
column_name datatype,
constraint un_username unique(username)
)
2、在修改時新增唯一約束
alter table tablename add constraint unique_name unique(column_name)
3、刪除唯一約束(同上刪除主鍵,外來鍵約束)
*/
/* create table userinfo_u( --列級設定唯一約束
id varchar2(10)primary key,
username varchar2(20) unique,
userpwd varchar2(20)
) */
/* create table userinfo_u1( --表級設定唯一約束
id varchar2(10)primary key,
username varchar2(20),
constraint un_name unique(username)
) */
//檢查約束(使資料庫資料具有實際意義)
/*
1、在建立表的時候設定檢查約束(可有多個)
第一種方法(列級):create table tablename(
column_name datatype check(expressions),...
)
第二種方法(表級):create table tablename(
column_name datatype,...
constraint constraint_name check(expressions)
2、在修改表時新增檢查約束
alter table tablename add constraint constraint_name check(expressions);
3、刪除檢查約束(同上)
*/
/* create table userinfo_c( --列級設定檢查約束
id varchar2(10)primary key,
username varchar2(20) unique,
userpwd varchar2(20),
salary number(5,0) check(salary>0)
) */
/* create table userinfo_c1( --表級設定檢查約束
id varchar2(10)primary key,
username varchar2(20) unique,
salary number(5,0),
constraint ck_salary check(salary>0)
) */
--insert into userinfo_c1 values(1,'a',-10) --ERROR:ORA-02290: 違反檢查約束條件 (SCOTT.SYS_C0011068)
/**********************************ORACLE基本查詢語句**************************************************/
//基本查詢語句【distinct表示去掉重複行】
--select [distinct]column1,column2,...from table_name [where conditions]
//邏輯運算子的優先順序:按not 、and 、or的順序依次遞減
//查詢工資使用者名稱為a,工資在2000到5000之間
--select * from userinfo_c where username='a' or salary>2000 and salary<=5000
//模糊查詢【like 萬用字元%,_表示任意一個字元】
--select * from usersinfo where username like '%a%'
//範圍查詢
/*
between ...and...
in / not in (,,,...)相當於or
*/
//對查詢結果進行排序語法:select ...from ...where ... order by column1 deac/asc(降序/升序)
/*
case ...when 語句的使用 :第一種方法:case column_name when value1 then result1,...[else result] end
第二種方法:case when column_name=value1 then result1,...[else result] end
*/
--select * from usersinfo
--update usersinfo set username='aaa' where id=3
/* select username,case username when 'panada' then '計算機部門'
when 'aaa' then '銷售部門' else '其他部門' end as 部門 from usersinfo */
/* select username,case when username='panada' then '計算機部門'
when username='aaa' then '銷售部門' else '其他部門' end as 部門 from usersinfo */
//decode函式的作用和case ...when ... 相同
--select id,username ,decode(username,'aaa','銷售部','panada','計算機部門')as 部門 from usersinfo
//*注:Case函式只返回第一個符合條件的值,剩下的Case部分將會被自動忽略。
select id,username ,case when id in(2,3) then '第一類'
when id in(2) then '第二類' end as 類別 from usersinfo 2
/*結果顯示: panada 第一類
aaa 第一類 */
相關推薦
常用資料庫語句
--建表語句 create table userInfo( id number(6,0), username varchar2(20), userpwd varchar2(20), email varchar2(30),
常用的MySQL資料庫語句
零、使用者管理: 1、新建使用者: >CREATE USER name IDENTIFIED BY 'ssapdrow'; 2、更改密碼: >SET PASSWORD FOR name=PASSWORD('fdddfd'); 3
資料庫——常用SQL語句總結
資料庫是個好東西,最好是系統地學習一下相關的知識,當然,如果實在沒有時間,那就學習一下如何操作資料庫好了。這裡就根據網上的各類總結文章,總結一下常用的SQL語句,給學習SQL的胖友,更是給健忘的自己。 一、基礎操作 1、使用sql對資料庫操作 連線資料庫命令: mysql -u r
MySQL使用者管理,常用SQL語句,MySQL資料庫備份與恢復
[toc] MySQL使用者管理,常用SQL語句,MySQL資料庫備份與恢復 擴充套件 SQL語句教程 http://www.runoob.com/sql/sql-tutorial.html 什麼是事務?事務的特性有哪些? http://blog.csdn.net/yenange/article/deta
常用資料庫檢索語句
create database DBMonth1 use DBMonth1 create table Student ( SID int primary key identity, Sname varchaR(50), Sag
oracle常用資料庫sql語句
Oracle常用資料庫操作 使用者操作 –建立表空間 create bigfile tablespace 表空間名稱 datafile ‘表空間路徑’ size 100m autoextend on e
MySQL使用者管理,常用MySQL語句、MySQL資料庫備份恢復
12月6日任務 13.4 mysql使用者管理 13.5 常用sql語句 13.6 mysql資料庫備份恢復 13.4 mysql使用者管理 grant all on *.* to 'user1' identified by 'passw
設定更改root密碼、連線mysql、mysql常用命令、mysql使用者管理、常用sql語句、mysql資料庫備份恢復
一、設定更改root密碼 首次直接使用mysql會提示‘該命令不存在’,原因是還沒有將該命令加入環境變數,如果要使用該命令,需要使用其絕對路徑:/usr/local/mysql/bin/mysql,為了方便,先將其加入系統環境變數: [[email p
Oracle 資料庫常用SQL語句(1)
一、資料定義語句 CREATE:建立表或其它物件 create database test; //建立test資料庫 create table student(name char(20),sex char ,age int ,info varchar(100)); //建立表 ALTER:修改表或其
oracle資料庫常用SQL語句以及角色傳遞
一、本地oracle11g資料庫以下使用者密碼統一修改為:sysorcl; 本地使用DBA許可權遠端連線ORACLE資料庫 以sys使用者登陸oracle,執行select * from V_$PW
資料庫常用查詢語句(多表查詢,面試必問)
支付寶程式設計師隱藏福利,使用支付寶搜尋下方數字可領取現金,每天都可以使用下方號碼領取,已經領了二百多: 568076896 –1.學生表 Student(S#,Sname,Sage,Ssex) – –2.課程表 Course(C#,Cname,T#) –
mysql資料庫常用sql語句
資料庫可以用圖形化工具來實現一系列操作,這裡涉及一些cmd命令列 首先要配置好環境變數可以全域性操作命令,不然只能在mysql的安裝目錄下進行操作,這裡不再敘述 1. 進入資料庫: mysql -u root -p (預設使用者名稱為root,這個與mysql安裝時的設
MyBatis常用sql語句編寫(基於MySQL資料庫)
建立一張表t_user用於作示例: CREATE TABLE `t_user` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主鍵ID', `
資料庫常用sql語句總結
檢視時右側可以開啟CSDN自帶的目錄,方便檢視 目錄 一、基礎 1.SELECT 語句 2.SELECT DISTINCT 語句 3.WHERE 子句 4.AND 和 OR 運算子 5.ORDER BY 語句 6.INSERT INTO 語句 7.Update 語
常用資料庫查詢語句--個人總結
本人有時候經常使用封裝好的增刪改查,以至於有時候簡單的增刪改查都忘記怎麼寫,所以在此記錄,以便之後查閱 由於mysq與selserver不同,所以在使用的時候,有區別,最簡單的是表名稱(sqlserver 裡 [表名稱])mysql裡 `表名稱` 查 select
資料庫(一)-- 常用查詢語句
很多查詢都可以用經典的學生-課程-成績案例來表示,下面是一些我在筆試或面試中遇到的經典題型。這些題目沒有涉及到索引,函式,儲存過程等高階功能,都是一些基本的查詢語句,但難度卻不小。 表結構 學生表student(id,name)學生課程表student_course(sid
MySql資料庫常用DDL語句 | 黃喬國PHP
在MySQL中我們有DDL、DML、DCL三種語句,我們看看MySQL的資料定義語言:DDL 一、資料庫相關 ①建立資料庫 create database [IF NOT EXISTS] db_name [character set utf8];②刪除資料庫 drop da
【greenplum】greenplum 常用資料庫管理語句,sql工具
作者:lianghc 在greenplum 使用過程中積累的一些常用查詢語句,整理出來備忘。歡迎各位留言補充。都是SQL命令以及資料字典的使用。熟悉資料字典非常重要。三個重要的schema:pg_catalog,pg_toolkit,information_
常用資料庫validationQuery檢查語句
validationQuery是用來驗證資料庫連線的查詢語句,這個查詢語句必須是至少返回一條結果的SELECT語句。每種資料庫都有各自的驗證語句,下表中從網上收集了幾種常見資料庫的validationQuery。 資料庫 validationQu
mysql資料庫常用sql語句集
=================================資料庫===========================1、資料庫建立 CREATE DATABASE test2、檢視所有資料庫 SHOW databases 3、檢視當前MyS