當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]SQL即結(jié)構(gòu)化查詢語言(Structured Query Language),是一種特殊目的的編程語言,是一種數(shù)據(jù)庫查詢和程序設(shè)計語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng);同時也是數(shù)據(jù)庫腳本文件的擴展名。

SQL即結(jié)構(gòu)化查詢語言(Structured Query Language),是一種特殊目的的編程語言,是一種數(shù)據(jù)庫查詢和程序設(shè)計語言,用于存取數(shù)據(jù)以及查詢、更新和管理關(guān)系數(shù)據(jù)庫系統(tǒng);同時也是數(shù)據(jù)庫腳本文件的擴展名。

1、SQL分類

SQL語句主要可以劃分以下3個類別:

1)DDL語句:數(shù)據(jù)定義語句,這些語句定義了不同的數(shù)據(jù)段、數(shù)據(jù)庫、表、列、索引等數(shù)據(jù)庫對象。常用的關(guān)鍵字主要包括creat、drop、alter等。

2)DML語句:數(shù)據(jù)操縱語句,用于添加、刪除、更新和查詢數(shù)據(jù)庫記錄,并檢查數(shù)據(jù)完整性。常用的語句關(guān)鍵字主要包括 inster、delete、update 和 select等。

3)DCL語句:數(shù)據(jù)控制語句,用于控制不同數(shù)據(jù)段直接的許可和訪問級別的語句。這些語句定義了數(shù)據(jù)庫、表、字段、用戶的訪問權(quán)限和安全級別。主要的語句關(guān)鍵字包括 grant、revoke等。

2、DDL語句

DDL是數(shù)據(jù)定義語句的縮寫。是對數(shù)據(jù)庫內(nèi)部的對象進(jìn)行創(chuàng)建、刪除、修改等操作的語言。它和DML語句的最大區(qū)別是DML只是對表內(nèi)部數(shù)據(jù)操作,而不涉及表的定義、結(jié)構(gòu)的修改,更不會涉及其他對象。DDL語句更多地由數(shù)據(jù)庫管理員(DBA)使用,開發(fā)人員一般很少使用。

1)創(chuàng)建數(shù)據(jù)庫

CREATE DATABASE dbname

例如,創(chuàng)建數(shù)據(jù)庫test1,命令執(zhí)行如下:

create database test1 ;

如果需要查詢系統(tǒng)中都存在哪些數(shù)據(jù)庫,可以使用以下命令查看:

show databases ;

在系統(tǒng)中會存在4個由MySQL系統(tǒng)自動創(chuàng)建的數(shù)據(jù)庫,分別為:

information_schema : 主要存儲系統(tǒng)中的一些數(shù)據(jù)庫對象信息,比如用戶表信息、列信息、權(quán)限信息、字符集信息、分區(qū)信息等。

cluster : 存儲系統(tǒng)的集群信息。

mysql : 存儲系統(tǒng)的用戶權(quán)限信息。

test : 系統(tǒng)自動創(chuàng)建的測試數(shù)據(jù)庫,任何用戶都可以使用。

選擇要操作的數(shù)據(jù)庫:

USE dbname

例如,選擇數(shù)據(jù)庫test1 :

use test1 ;

查看test1數(shù)據(jù)庫中創(chuàng)建的所有數(shù)據(jù)表 :

show tables ;

2)刪除數(shù)據(jù)庫

刪除數(shù)據(jù)庫的語法,如下:

drop database dbname ;

例如,要刪除test1數(shù)據(jù)庫:

drop database test1 ;

3)創(chuàng)建表

在數(shù)據(jù)庫中創(chuàng)建一張表的基本語法如下:

CREATE TABLE tablename (

column_name_1 column_type_1 constraints ,

column_name_2 column_type_2 constraints ,

. . .

column_name_n column_type_n constraints )

其中 , column_name 是列的名字;column_type 是列的數(shù)據(jù)類型; constraints 是這個列的約束條件。

例如,創(chuàng)建一個名稱為emp的表。表中包括ename(姓名)、hiredate(雇傭日期)和sal(薪水)三個字段,字段類型分別為varchar(10)、date、int(2)

create table emp ( ename varchar(10) ,

hiredate date ,

sal decimal (10, 2) ,

deptno int(2) ) ;

表創(chuàng)建完畢后,如果需要查看一下表的定義,可以使用如下命令:

DESC tablename

例如,查看emp表:

desc emp ;

如果需要查看創(chuàng)建表的SQL語句,可以使用如下命令:

show create table emp \G ;

注:\G 選項的含義是使得記錄能夠按照字段豎向排列,以便更好地顯示內(nèi)容較長的記錄。

4)刪除表

表的刪除命令如下:

DROP TABLE tablename

例如,要刪除數(shù)據(jù)表emp:

drop table emp ;

5)修改表

修改表類型 ,語法如下:

ALTER TABLE tablename MODIFY [COLUMN] column_definition [FIRST|AFTER col_name]

例如,修改表emp的ename字段定義,將 varchar(10)改為varchar(20):

alter tabke emp modify ename varchar(20);

增加表字段,語法如下:

ALTER TABLE tablename ADD[COLUMN] column_definition [FIRST|AFTER col_name]

例如,在表emp中新增加字段 age ,類型為 int(3):

alter table emp add column age int(3);

刪除表字段,語法如下:

ALTER TABLE tablename DROP [COLUMN] col_name

例如,將字段age刪除:

alter table emp drop column age ;

字段改名,語法如下:

ALTER TABLE tablename CHANGE [COLUMN] old_col_name column_definition [FIRST|AFTER col_name]

例如,將age改名為age1,同時修改字段類型為 int(4):

alter table emp change age age1 int(4) ;

修改字段排列順序:

前面介紹的字段增加和修改語句(ADD/CHANG/MODIFY)中,都有一個可選項 first | after column_name ,這個選項可以用來修改字段在表中的位置,ADD增減的新字段默認(rèn)是加載表的最后位置,而CHANGE/MODIFY默認(rèn)都不會改變字段的位置。

例如, 將新增的字段 birth date 加在 ename之后:

alter table emp add birth date after ename ;

修改 age 字段,將它放在最前面:

alter table emp modify age int(3) first ;

注意:CHANGE/FIRST|AFTER COLUMN 都屬于MySQL在標(biāo)準(zhǔn)SQL上的擴展,在其他數(shù)據(jù)庫上不一定適用。

更改表名,語法如下:

ALTER TABLE tablename RENAME [TO] new_tablename

例如,將表 emp 改名為 emp1:

alter table emp rename emp1 ;

3、DML語句

DML操作是指對數(shù)據(jù)庫中表記錄的操作,主要包括表記錄的插入(insert)、更新(update)、刪除(delete)和查詢(select),是開發(fā)人員日常使用最多的操作。

1)插入記錄

向表中插入記錄的基本語法如下:

INSERT INTO tablename (field1 , field2 ,. . . ,fieldn) VALUES(value1 , value2 , . . . ,valuen);

例如,向表 emp 中插入記錄:

insert into emp (ename, hiredate, sal, deptno) values ('zzx1', '2000-01-01', '2000', 1);

也可以不指定字段名稱,但是 values 后面的順序應(yīng)該和字段的排列順序一致:

insert into emp values('lisa', '2001-01-02', '3000', 2);

含可空字段、非空但是含有默認(rèn)值的字段、自增字段,可以不用再insert后的字段列表中出現(xiàn),values后面只寫對應(yīng)字段名稱的 value 。這些沒寫的字段可以自動設(shè)置為NULL、默認(rèn)值、自增的下一個數(shù)字。

例如:只對表中的ename和sal顯示插入值:

insert into emp (ename, sal) values('dony', '1000') ;

在MySQL中,insert語句可以一次性插入多條記錄。

2)更新記錄

表里的記錄值可以通過update命令進(jìn)行更改,語法如下:

UPDATE tablename SET field1 = value1,field2 = value2,. . .,fieldn = valuen [WHERE CONDITION]

例如,將表emp中ename為 "lisa"的sal從3000更改為4000:

update emp set sal=4000 whereename='lisa' ;

3) 刪除記錄

使用delete刪除記錄,語法如下:

DELETE FROM tablename [WHERE CONDITION]

例如,在emp中將ename為dony的記錄全部刪除:

delete from emp where ename='dony' ;

注意:不加where條件將會把表的所有記錄刪除,所以操作時一定小心。

4)查詢記錄

基本語法如下:

SELECT * FROM tablename [WHERE CONDITION]

例如,將表emp中的記錄全部查詢出來:

select * form emp ;

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉