錛戙佸緩琛ㄦ牸錛?br />
create table table_name(
column1 datatype [not null] [not null primary key],
column2 datatype [not null],
...錛?br />
璇存槑錛氥
datatype --鏄祫鏂欑殑鏍煎紡錛岃瑙佽〃銆?br />
nut null --鍙笉鍙互鍏佽璧勬枡鏈夌┖鐨勶紙灝氭湭鏈夎祫鏂欏~鍏ワ級銆?br />
primary key --鏄湰琛ㄧ殑涓婚敭銆?/p>
錛掋佹洿鏀硅〃鏍箋
alter table table_name
add column column_name datatype
璇存槑錛氬鍔犱竴涓爮浣嶏紙娌℃湁鍒犻櫎鏌愪釜鏍忎綅鐨勮娉曘?br />
alter table table_name
add primary key (column_name)
璇存槑錛氭洿鏀硅〃寰楃殑瀹氫箟鎶婃煇涓爮浣嶈涓轟富閿?br />
alter table table_name
drop primary key (column_name)
璇存槑錛氭妸涓婚敭鐨勫畾涔夊垹闄ゃ?/p>
錛撱佸緩绔嬬儲寮曘
create index index_name on table_name (column_name)
璇存槑錛氬鏌愪釜琛ㄦ牸鐨勬爮浣嶅緩绔嬬儲寮曚互澧炲姞鏌ヨ鏃剁殑閫熷害銆?/p>
錛斻佸垹闄ゃ
drop table_name
drop index_name
浜屻佺殑璧勬枡褰㈡?datatypes
smallint
16 浣嶅厓鐨勬暣鏁般?br />
interger
32 浣嶅厓鐨勬暣鏁般?br />
decimal(p,s)
p 綺劇‘鍊煎拰 s 澶у皬鐨勫崄榪涗綅鏁存暟錛岀簿紜紁鏄寚鍏ㄩ儴鏈夊嚑涓暟(digits)澶у皬鍊鹼紝s鏄寚灝忔暟
鐐瑰緦鏈夊嚑浣嶆暟銆傚鏋滄病鏈夌壒鍒寚瀹氾紝鍒欑郴緇熶細璁句負 p=5; s=0 銆?
float
32浣嶅厓鐨勫疄鏁般?br />
double
64浣嶅厓鐨勫疄鏁般?br />
char(n)
n 闀垮害鐨勫瓧涓詫紝n涓嶈兘瓚呰繃 254銆?br />
varchar(n)
闀垮害涓嶅浐瀹氫笖鍏舵渶澶ч暱搴︿負 n 鐨勫瓧涓詫紝n涓嶈兘瓚呰繃 4000銆?br />
graphic(n)
鍜?char(n) 涓鏍鳳紝涓嶈繃鍏跺崟浣嶆槸涓や釜瀛楀厓 double-bytes錛?n涓嶈兘瓚呰繃127銆傝繖涓艦鎬佹槸涓?br />
浜嗘敮鎻翠袱涓瓧鍏冮暱搴︾殑瀛椾綋錛屼緥濡備腑鏂囧瓧銆?br />
vargraphic(n)
鍙彉闀垮害涓斿叾鏈澶ч暱搴︿負 n 鐨勫弻瀛楀厓瀛椾覆錛宯涓嶈兘瓚呰繃 2000銆?br />
date
鍖呭惈浜?騫翠喚銆佹湀浠姐佹棩鏈熴?br />
time
鍖呭惈浜?灝忔椂銆佸垎閽熴佺銆?br />
timestamp
鍖呭惈浜?騫淬佹湀銆佹棩銆佹椂銆佸垎銆佺銆佸崈鍒嗕箣涓縐掋?/p>
涓夈佽祫鏂欐搷浣?锝勶綅锝?錛坉ata manipulation language)
璧勬枡瀹氫箟濂戒箣寰屾帴涓嬫潵鐨勫氨鏄祫鏂欑殑鎿嶄綔銆傝祫鏂欑殑鎿嶄綔涓嶅涔庡鍔犺祫鏂欙紙insert)銆佹煡璇㈣祫鏂欙紙query錛夈佹洿鏀硅祫鏂欙紙update) 銆佸垹闄よ祫鏂欙紙delete錛夊洓縐嶆ā寮忥紝浠ヤ笅鍒?鍒粙緇嶄粬浠殑璇硶錛?/p>
錛戙佸鍔犺祫鏂欙細
insert into table_name (column1,column2,...)
values ( value1,value2, ...)
璇存槑錛?br />
1.鑻ユ病鏈夋寚瀹歝olumn 緋葷粺鍒欎細鎸夎〃鏍煎唴鐨勬爮浣嶉『搴忓~鍏ヨ祫鏂欍?br />
2.鏍忎綅鐨勮祫鏂欏艦鎬佸拰鎵濉叆鐨勮祫鏂欏繀欏誨惢鍚堛?br />
3.table_name 涔熷彲浠ユ槸鏅 view_name銆?/p>
insert into table_name (column1,column2,...)
select columnx,columny,... from another_table
璇存槑錛氫篃鍙互緇忚繃涓涓瓙鏌ヨ錛坰ubquery錛夋妸鍒殑琛ㄦ牸鐨勮祫鏂欏~鍏ャ?/p>
錛掋佹煡璇㈣祫鏂欙細
鍩烘湰鏌ヨ
select column1,columns2,...
from table_name
璇存槑錛氭妸table_name 鐨勭壒瀹氭爮浣嶈祫鏂欏叏閮ㄥ垪鍑烘潵
select *
from table_name
where column1 = ***
[and column2 > yyy] [or column3 <> zzz]
璇存槑錛?br />
1.'*'琛ㄧず鍏ㄩ儴鐨勬爮浣嶉兘鍒楀嚭鏉ャ?br />
2.where 涔嬪緦鏄帴鏉′歡寮忥紝鎶婄鍚堟潯浠剁殑璧勬枡鍒楀嚭鏉ャ?/p>
select column1,column2
from table_name
order by column2 [desc]
璇存槑錛歰rder by 鏄寚瀹氫互鏌愪釜鏍忎綅鍋氭帓搴忥紝[desc]鏄寚浠庡ぇ鍒板皬鎺掑垪錛岃嫢娌℃湁鎸囨槑錛屽垯鏄粠灝忓埌澶?br />
鎺掑垪
緇勫悎鏌ヨ
緇勫悎鏌ヨ鏄寚鎵鏌ヨ寰楄祫鏂欐潵婧愬茍涓嶅彧鏈夊崟涓鐨勮〃鏍鹼紝鑰屾槸鑱斿悎涓涓互涓婄殑
琛ㄦ牸鎵嶈兘澶熷緱鍒扮粨鏋滅殑銆?br />
select *
from table1,table2
where table1.colum1=table2.column1
璇存槑錛?br />
1.鏌ヨ涓や釜琛ㄦ牸涓叾涓?column1 鍊肩浉鍚岀殑璧勬枡銆?br />
2.褰撶劧涓や釜琛ㄦ牸鐩鎬簰姣旇緝鐨勬爮浣嶏紝鍏惰祫鏂欏艦鎬佸繀欏葷浉鍚屻?br />
3.涓涓鏉傜殑鏌ヨ鍏跺姩鐢ㄥ埌鐨勮〃鏍煎彲鑳戒細寰堝涓?/p>
鏁村悎鎬х殑鏌ヨ錛?br />
select count (*)
from table_name
where column_name = ***
璇存槑錛?br />
鏌ヨ絎﹀悎鏉′歡鐨勮祫鏂欏叡鏈夊嚑絎斻?br />
select sum(column1)
from table_name
璇存槑錛?br />
1.璁$畻鍑烘誨拰錛屾墍閫夌殑鏍忎綅蹇呴』鏄彲鏁扮殑鏁板瓧褰㈡併?br />
2.闄ゆ浠ュ榪樻湁 avg() 鏄綆楀鉤鍧囥乵ax()銆乵in()璁$畻鏈澶ф渶灝忓肩殑鏁村悎鎬ф煡璇€?br />
select column1,avg(column2)
from table_name
group by column1
having avg(column2) > ***
璇存槑錛?br />
1.group by: 浠olumn1 涓轟竴緇勮綆?column2 鐨勫鉤鍧囧煎繀欏誨拰 avg銆乻um絳夋暣鍚堟ф煡璇㈢殑鍏抽敭瀛?br />
涓璧蜂嬌鐢ㄣ?
2.having : 蹇呴』鍜?group by 涓璧蜂嬌鐢ㄤ綔涓烘暣鍚堟х殑闄愬埗銆?/p>
澶嶅悎鎬х殑鏌ヨ
select *
from table_name1
where exists (
select *<BR>from table_name2
where conditions )
璇存槑錛?br />
1.where 鐨?conditions 鍙互鏄彟澶栦竴涓殑 query銆?br />
2.exists 鍦ㄦ鏄寚瀛樺湪涓庡惁銆?br />
select *
from table_name1
where column1 in (
select column1
from table_name2
where conditions )
璇存槑錛氥
1. in 寰岄潰鎺ョ殑鏄竴涓泦鍚堬紝琛ㄧずcolumn1 瀛樺湪闆嗗悎閲岄潰銆?br />
2. select 鍑烘潵鐨勮祫鏂欏艦鎬佸繀欏葷鍚?column1銆?
鍏朵粬鏌ヨ
select *
from table_name1
where column1 like 'x%'
璇存槑錛歭ike 蹇呴』鍜屽緦闈㈢殑'x%' 鐩稿懠搴旇〃紺轟互 x涓哄紑澶寸殑瀛椾覆銆?br />
select *
from table_name1
where column1 in ('***','yyy',..)
璇存槑錛歩n 寰岄潰鎺ョ殑鏄竴涓泦鍚堬紝琛ㄧずcolumn1 瀛樺湪闆嗗悎閲岄潰銆?br />
select *
from table_name1
where column1 between xx and yy
璇存槑錛歜etween 琛ㄧず column1 鐨勫間粙鏂?xx 鍜?yy 涔嬮棿銆?
錛撱佹洿鏀硅祫鏂欙細
update table_name
set column1='***'
where conditoins
璇存槑錛?br />
1.鏇存敼鏌愪釜鏍忎綅璁懼畾鍏跺間負'***'銆?br />
2.conditions 鏄墍瑕佺鍚堢殑鏉′歡銆佽嫢娌℃湁 where 鍒欐暣涓?table 鐨勯偅涓爮浣嶉兘浼氬叏閮ㄨ鏇存敼銆?/p>
錛斻佸垹闄よ祫鏂欙細
delete from table_name
where conditions
璇存槑錛氬垹闄ょ鍚堟潯浠剁殑璧勬枡銆?/p>
璇存槑錛氬叧浜巜here鏉′歡鍚庨潰濡傛灉鍖呭惈鏈夋棩鏈熺殑姣旇緝錛屼笉鍚屾暟鎹簱鏈変笉鍚岀殑琛ㄨ揪寮忋傚叿浣撳涓嬶細
(1)濡傛灉鏄痑ccess鏁版嵁搴擄紝鍒欎負錛歸here mydate>#2000-01-01#
(2)濡傛灉鏄痮racle鏁版嵁搴擄紝鍒欎負錛歸here mydate>cast('2000-01-01' as date)
鎴栵細where mydate>to_date('2000-01-01','yyyy-mm-dd')
鍦╠elphi涓啓鎴愶細
thedate='2000-01-01';
query1.sql.add('select * from abc where mydate>cast('+''''+thedate+''''+' as date)');
濡傛灉姣旇緝鏃ユ湡鏃墮棿鍨嬶紝鍒欎負錛?br /> where mydatetime>to_date('2000-01-01 10:00:01','yyyy-mm-dd hh24:mi:ss')