您好,登錄后才能下訂單哦!
?一 . 初識(shí)SQL語(yǔ)言
SQL (Structured ?Quqry ?Language) : 結(jié)構(gòu)化查詢(xún)語(yǔ)言 , 主要用于存取數(shù)據(jù) , 查詢(xún)數(shù)據(jù) , 更新數(shù)據(jù)和管理關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)
SQL語(yǔ)言分為3種類(lèi)型 , 分別為 :
1 . DDL語(yǔ)句 數(shù)據(jù)庫(kù)定義語(yǔ)言(Data ?Definition ?Language) 一般為創(chuàng)建數(shù)據(jù)庫(kù) , 表 , 視圖 , 索引 , 存儲(chǔ)過(guò)程等
2 .?DML語(yǔ)句 數(shù)據(jù)庫(kù)操縱語(yǔ)言(Data Manipulation Language): 插入數(shù)據(jù)INSERT、刪除數(shù)據(jù)DELETE、更新數(shù)據(jù)UPDATE、查詢(xún)數(shù)據(jù)SELECT
3 .?DCL語(yǔ)句 數(shù)據(jù)庫(kù)控制語(yǔ)言(Data Control Language): 例如控制用戶(hù)的訪問(wèn)權(quán)限GRANT(授予權(quán)限)、REVOKE(收回權(quán)限)
問(wèn) :mysql的庫(kù)文件、表文件默認(rèn)的保存路徑是?分別是以什么類(lèi)型的文件存儲(chǔ)在硬盤(pán)上?
答 :保存路徑/var/lib/mysql
庫(kù)文件類(lèi)型:以目錄的形式存儲(chǔ)在/var/lib/mysql目錄中
表文件:以普通文件的形式存儲(chǔ)字庫(kù)的目錄中
? ?
? ? ? ? ?
?二 . 庫(kù)的基本操作
數(shù)據(jù)庫(kù)的庫(kù)表操作大致分為增刪改查四個(gè)操作 , 即插入數(shù)據(jù)INSERT、刪除數(shù)據(jù)DELETE、更新數(shù)據(jù)UPDATE、查詢(xún)數(shù)據(jù)SELECT
1 . 創(chuàng)建數(shù)據(jù)庫(kù)
語(yǔ)法 : create ?database ?數(shù)據(jù)庫(kù)名 ;
命名規(guī)則 : 區(qū)分大小寫(xiě) , 具有唯一性 , 不能使用 create ?select 等關(guān)鍵字來(lái)命名 , 不能單獨(dú)使用數(shù)字
例 : 創(chuàng)建一個(gè)名為db1的數(shù)據(jù)庫(kù)
? ? ? ? ??
2 . 查看數(shù)據(jù)庫(kù) 和 使用數(shù)據(jù)庫(kù)
查看數(shù)據(jù)庫(kù) : show databases;
使用數(shù)據(jù)庫(kù) : use ?數(shù)據(jù)庫(kù)名
elect ?database(); ? #返回當(dāng)前數(shù)據(jù)庫(kù)的名字
? ? ? ? ?
從上圖可以看到 , 列出的數(shù)據(jù)庫(kù)有剛創(chuàng)建的db1數(shù)據(jù)庫(kù) , 使用數(shù)據(jù)庫(kù)可以看到提示 : Database ?changed 數(shù)據(jù)庫(kù)發(fā)生改變
? ? ? ? ??
3 . 刪除數(shù)據(jù)庫(kù)
語(yǔ)法 : Drop ?database ?數(shù)據(jù)庫(kù)名;
例 : 刪除創(chuàng)建的db1庫(kù) , 并查看db1庫(kù)是否存在
三 . 表的操作
1.創(chuàng)建表
語(yǔ)法 : create ?table ?表名(字段名稱(chēng) ?類(lèi)型(值的范圍))[存儲(chǔ)引擎 字符集];
注 : 在同一張表中 , 字段名是不能相同的 , 并且創(chuàng)建表必須定義字段和類(lèi)型
例 : 在test庫(kù)中創(chuàng)建名為tb1的表
desc ?tb1 ; ? ? ?#查看tb1表的結(jié)構(gòu)
?
2 . 在表中插入數(shù)據(jù)
語(yǔ)法 : insert ?into ?表名[字段名] ?values(需要插入的數(shù)據(jù)) ? ?//插入的數(shù)據(jù)要與表的字段相匹配
例: 在tb1表中插入3條數(shù)據(jù)
(向指定的字段插入值 --- 例 :只插入編號(hào)和名字 ?insert ?into ?tb1(id , name) ?values(8 , 'qwer'))
?3 . 查看表中的數(shù)據(jù)
語(yǔ)法 : select [表中的字段] ?from ?表名 ?where ?[查詢(xún)條件]
例 : 查看tb1表 ? (* 表示查詢(xún)所有)
? ? ? ? ? ?
4 . 表的修改操作(alter)
在表中最后新增指定的列字段 : alter ?table ?表名 ?add ?字段名 ?數(shù)據(jù)類(lèi)型 ;
在表中第一列或字段名A列之后新增指定的列字段 : alter ?table ?表名 ?add ?字段名 ?數(shù)據(jù)類(lèi)型 [first|after 字段名A];
刪除表中的某列字段 : alter ?table ?表名 ?drop ?字段名 ;
修改某列的屬性[即字段名和數(shù)據(jù)類(lèi)型] :
修改某列的數(shù)據(jù)類(lèi)型 : alter ?table ?表名 ?modify ?字段名 ?新數(shù)據(jù)類(lèi)型 [first|after ?字段A];
修改某列的字段名和數(shù)據(jù)類(lèi)型 : alter ?table ?表名 ?change ?舊字段名 新字段名 ?新數(shù)據(jù)類(lèi)型 [first|after 字段名];
例 : 在name列的后面增加一個(gè)sex字段 , 指定類(lèi)型為enum('m','f') ,增加后查看表的結(jié)構(gòu) ? ? ? ?//enum('m','f') 表示在sex字段中插入值只能為m或f , 不是這兩個(gè)字母 , 插入數(shù)據(jù)時(shí)就會(huì)報(bào)錯(cuò)
5?. 表的刪除操作
?格式 : drop ?table ?[庫(kù)名].表名
?例 : 刪除test庫(kù)中的tb1這張表
刪除tb1表并查看 , 可以看出tb1表已經(jīng)刪除 (如果不再test數(shù)據(jù)中就要使用 drop ?table ?test.tb1 來(lái)刪除 , 記得看數(shù)據(jù)庫(kù)當(dāng)前路徑是什么)
? ? ? ? ??
? ? ? ? ??
? ? ? ? ??
? ? ? ? ??
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。