溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MySQL數(shù)據(jù)庫SQL有什么作用

發(fā)布時間:2021-12-04 14:22:22 來源:億速云 閱讀:142 作者:iii 欄目:MySQL數(shù)據(jù)庫

本篇內(nèi)容介紹了“MySQL數(shù)據(jù)庫SQL有什么作用”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

一、SQL的簡介,結(jié)構(gòu)化查詢語言(Structured Query Language),簡稱SQL。它是專門用來訪問數(shù)據(jù)庫的標準編程語言。它可以用于存儲數(shù)據(jù),查詢數(shù)據(jù),更新數(shù)據(jù)以及管理關(guān)系型數(shù)據(jù)庫等操作。同時,數(shù)據(jù)庫腳本文件的擴展名也是sql。

  SQL是高級的非過程化編程語言,允許用戶在高層數(shù)據(jù)結(jié)構(gòu)上工作。同時,SQL語句可以嵌套,因此擁有極大的靈活性和強大的功能。但是,數(shù)據(jù)庫廠商都對SQL標準語言做了某些改編和擴充,因此,不同的數(shù)據(jù)庫的SQL語言,用法、格式等不完全一致。

  SQL語言可以分成五個部分,分別為DDL,DML,TCL,DCL,DQL。

1、數(shù)據(jù)定義語言(Data Definition Language ),簡稱DDL。

用于建立,刪除,修改數(shù)據(jù)庫對象的語言。包含如下關(guān)鍵字

create:用于創(chuàng)建表或者其他對象的結(jié)構(gòu)

drop:用于刪除表或者其他對象的結(jié)構(gòu)

alter:用于修改表或者其他對象的結(jié)構(gòu)

truncate:用于清空表數(shù)據(jù),保留表結(jié)構(gòu)

2、數(shù)據(jù)操縱語言(Data Manipulation Language),簡稱DML。

用于改變數(shù)據(jù)表的數(shù)據(jù)。通常與事務(wù)控制語言一起使用,要經(jīng)過事務(wù)控制語言的提交操作,才會真正的將數(shù)據(jù)持久到數(shù)據(jù)庫中。包含如下關(guān)鍵字:

insert:將數(shù)據(jù)插入到數(shù)據(jù)表中。

update:更新數(shù)據(jù)表中已存在的數(shù)據(jù)。

delete:刪除數(shù)據(jù)表中的數(shù)據(jù)。

3、數(shù)據(jù)查詢語言(Data Query Language),簡稱DQL。

用于查詢數(shù)據(jù)表中的數(shù)據(jù)?;蛘哂糜诳茖W計算。關(guān)鍵字如下:

select:選擇要顯示的數(shù)據(jù)。

4、事務(wù)控制語言(Transaction Control Language),簡稱TCL。

用于保證數(shù)據(jù)的完整性和一致性。只有數(shù)據(jù)表正在進行DML操作時,才會涉及到事務(wù)。關(guān)鍵字如下:

commit:提交,確任。將已經(jīng)進行的DML操作的數(shù)據(jù)持久化。

rollback:回滾,回退。用于取消已經(jīng)進行的DML操作。

savepoint:保存點。可以將當前的DML操作回退到指定的保存點,便于取消部分改變。

5、數(shù)據(jù)控制語言(Data Control Language),簡稱DCL。

用于執(zhí)行關(guān)于權(quán)限的授予和撤銷操作。關(guān)鍵字如下:

grant:授權(quán)。用于給用戶或者角色授予權(quán)限.

revoke:撤銷。用于回收用戶或者角色的權(quán)限。

create user:創(chuàng)建用戶。

drop user :刪除用戶。

二、MySql的常用SQL語法

市場上流通的數(shù)據(jù)庫雖然都遵守了SQL語言的標準規(guī)范,但是用法也不完全相同。下面我將MySQL數(shù)據(jù)庫的各個部分的使用語法整理一下,方便大家記憶。PS:下面會用到"[]"中括號,表示可選。

1、關(guān)于數(shù)據(jù)庫的創(chuàng)建,刪除等操作語法

在實際開發(fā)中,任何一個項目的數(shù)據(jù)存儲與管理都對應一個數(shù)據(jù)庫(數(shù)據(jù)存儲空間),避免與其他項目的數(shù)據(jù)混在同一個數(shù)據(jù)庫中,因此,會涉及到數(shù)據(jù)庫的創(chuàng)建等操作。

(1)創(chuàng)建數(shù)據(jù)庫:create database [if not exists] dbName [default character  set  utf8] [collate utf8_general_ci | utf8_general_cs];

>解析> 此語句指定數(shù)據(jù)庫的字符集為utf8。utf8_general_ci表示字母大小寫不敏感;utf8_general_cs表示大小寫敏感

(2)查看數(shù)據(jù)庫:show databases;

(3)選擇數(shù)據(jù)庫:use dbName;

(4)刪除數(shù)據(jù)庫:drop database dbName;

(5)查看數(shù)據(jù)庫字符集:show variables like "%character%";

(6)修改數(shù)據(jù)庫字符集:alter database dbName character set cName;

(7)修改命令提示符界面顯示字符集(當前窗口有效):set name cName;

2、DDL語言的操作語法

(1)創(chuàng)建表結(jié)構(gòu):

create table tName (colName1 type1,...,colNameN typeN) [engine=innodb][default character set cName][collate utf8_general_ci]

(2)顯示表結(jié)構(gòu):desc  tName 或者 show  columns from tName;

(3)添加表字段:alter  table tName add colName Type;

(4)刪除表字段:alter table tName drop colName;

(5)修改表字段類型/表字段名稱                                                                                                                                                         

alter table tName modify colName newType;

alter table tName change colName newColName newType;

(6)修改表名:alter table oldName rename newName;

(7)清空表數(shù)據(jù),保留表結(jié)構(gòu):truncate table tName;

(8)刪除表結(jié)構(gòu):drop table tName;

(9)復制表結(jié)構(gòu):create table newName like oldName;

3、DML語言的操作語法

(1)插入數(shù)據(jù)到表中:

方法1: insert into tName (colName1,....,colNameN)values (value1,.....,valueN);     

方法2: insert into tName values ( value1,.....,valueN);    /*按照建表字段順序賦值*/

(2)修改表中數(shù)據(jù):

update tName set colName1=value1,.....colNameN=valueN  [ where 條件 ];

(3)刪除表中數(shù)據(jù):delete from tName   [ where 條件 ];

4、DQL語言的操作語法

select colName1,......,colNameN from tName [where 子句] [ group by 子句] [ having 子句] [order by子句]select有選擇的意思,即選擇哪些字段進行查詢,顯示。

“MySQL數(shù)據(jù)庫SQL有什么作用”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI