今天主要復(fù)習(xí)了MySQL的一些簡(jiǎn)單語(yǔ)句,可總結(jié):
成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括印江網(wǎng)站建設(shè)、印江網(wǎng)站制作、印江網(wǎng)頁(yè)制作以及印江網(wǎng)絡(luò)營(yíng)銷策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,印江網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到印江省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
mysql 統(tǒng)計(jì) 表的數(shù)量:SELECT COUNT(1) FROM information_schema.TABLES WHERE TABLE_SCHEMA = '你的數(shù)據(jù)庫(kù)';
有時(shí)候需要查詢MySQL數(shù)據(jù)庫(kù)中各個(gè)表大小,該如何操作呢?
MySQL中有一個(gè)名為 information_schema 的數(shù)據(jù)庫(kù),在該庫(kù)中有一個(gè) TABLES 表,這個(gè)表主要字段分別是:
TABLE_SCHEMA : 數(shù)據(jù)庫(kù)名
TABLE_NAME:表名
ENGINE:所使用的存儲(chǔ)引擎
TABLES_ROWS:記錄數(shù)
DATA_LENGTH:數(shù)據(jù)大小
INDEX_LENGTH:索引大小
use information_schema;
SELECT
TABLE_NAME,
(DATA_LENGTH/1024/1024) as DataM ,
(INDEX_LENGTH/1024/1024) as IndexM,
((DATA_LENGTH+INDEX_LENGTH)/1024/1024) as AllM,
TABLE_ROWS
FROM
TABLES
WHERE
TABLE_SCHEMA = '你的數(shù)據(jù)庫(kù)';
MySQL的一些基礎(chǔ)語(yǔ)句:
行是記錄 列是字段
創(chuàng)建庫(kù)
CREATE DATABASE [IF NOT EXISTS] 數(shù)據(jù)庫(kù)名 [參數(shù)[ 參數(shù)] [ 參數(shù)]...];
參數(shù):
CHARACTER SET 碼表名
COLLATE 校對(duì)規(guī)則名, 詳見文檔10.10.1
顯示庫(kù)
SHOW DATABASES;
顯示數(shù)據(jù)庫(kù)創(chuàng)建語(yǔ)句
SHOW CREATE DATABASE 數(shù)據(jù)庫(kù)名;
修改庫(kù)
ALTER DATABASE 數(shù)據(jù)庫(kù)名[ 參數(shù)[ 參數(shù)][ 參數(shù)]...];
注意: 不能改數(shù)據(jù)庫(kù)的名字
刪除庫(kù)
DROP DATABASE [IF EXISTS] 數(shù)據(jù)庫(kù)名;
操作表之前使用需要先確定使用哪個(gè)數(shù)據(jù)庫(kù)
USE 數(shù)據(jù)庫(kù)名
創(chuàng)建表
CREATE TABLE 表名(列名 類型[,列名 類型][,列名 類型]...);
查看所有表
SHOW TABLES;
查看表的創(chuàng)建語(yǔ)句
SHOW CREATE TABLE 表名;
顯示表結(jié)構(gòu)
DESC 表名;
修改表名
RENAME TABLE 原表名 TO 新表名;
修改字符集
ALTER TABLE 表名 CHARACTER SET 字符集名;
刪除表
DROP TABLE 表名;
追加列
ALTER TABLE 表名 ADD 列名 類型[,列名 類型][,列名 類型]...;
修改列類型
ALTER TABLE 表名 MODIFY 列名 類型[,列名 類型][,列名 類型]...;
修改列
ALTER TABLE 表名 CHANGE COLUMN 原列名 新列名 類型;
刪除列
ALTER TABLE 表名 DROP 列名;
插入語(yǔ)法:
INSERT INTO 表名[(列名[,列名]...)] VALUES(值[,值]...);
注意事項(xiàng):
插入值類型必須與對(duì)應(yīng)列的數(shù)據(jù)類型一致
數(shù)據(jù)不能超出長(zhǎng)度
插入值得為之必須與列名順序一致
字符和日期數(shù)據(jù)要放在單引號(hào)中
插入空值使用null
如果不指定插入哪一列, 就是插入所有列
中文數(shù)據(jù)
由于默認(rèn)碼表是utf8, 而cmd.exe的碼表是gbk, 在插入中文數(shù)據(jù)的時(shí)候會(huì)報(bào)錯(cuò), 所以我們需要修改客戶端碼表
先查看系統(tǒng)變量: SHOW VARIABLES LIKE 'character%';
修改客戶端碼表: SET character_set_client=gbk;
修改輸出數(shù)據(jù)的碼表: SET character_set_results=gbk;
修改語(yǔ)法
UPDATE 表名 SET 列名=值[,列名=值]...[WHERE 條件語(yǔ)句];
注意事項(xiàng)
WHERE子句選擇滿足條件的行進(jìn)行更新, 如果不寫, 則更新所有行
刪除語(yǔ)法
DELETE FROM 表名 [where 條件語(yǔ)句]
注意事項(xiàng)
如果不加where子句, 將刪除表中所有記錄
delete只能用作刪除行, 不能刪除某一列的值, 需要用update
在delete和update的時(shí)候需要注意表與表之間的關(guān)聯(lián)關(guān)系
刪除表中所有數(shù)據(jù)可以使用: TRANCATE 表名, 這種方式會(huì)刪除舊表重新創(chuàng)建, 在數(shù)據(jù)較多的時(shí)候使用
備份數(shù)據(jù)庫(kù)
輸入quit退出mysql, 在cmd.exe中輸入:
mysqldump –u用戶名 –p密碼 數(shù)據(jù)庫(kù)名 文件名
恢復(fù)數(shù)據(jù)庫(kù)
進(jìn)入mysql.exe之后, 使用數(shù)據(jù)庫(kù)之后
source 文件名
操作數(shù)據(jù)(查詢)
DISTINCT語(yǔ)法
SELECT [DISTINCT] 列名[, 列名]... FROM 表名
注意事項(xiàng)
*可以替代列名, 表示所有列, 但是通常我們?yōu)榱颂岣叽a的可讀性, 不使用*
DISTINCT為過(guò)濾重復(fù)記錄
如果DISTINCT后面跟多列, 是過(guò)濾掉多列合并之后的重復(fù)
列名表達(dá)式——語(yǔ)法
SELECT 列名|表達(dá)式[,列名|表達(dá)式]... FROM 表名
注意事項(xiàng)
表達(dá)式只是顯示時(shí)起作用, 不會(huì)改變數(shù)據(jù)庫(kù)中的值
AS——
SELECT 列名 AS 別名 FROM 表名
注意事項(xiàng)
起別名時(shí)AS可以省略
不會(huì)改變數(shù)據(jù)庫(kù)中的值
WHERE——
語(yǔ)法
SELECT 列名 FROM 表名 [WHERE 條件語(yǔ)句]
WHERE子句中的運(yùn)算符
比較運(yùn)算符
, , =, =, =,
注意不等于和Java中不同, 是
BETWEEN ... AND ...
某一區(qū)間內(nèi)的值, 從 ... 到 ...
IN(列表)
在列表之中, 例: in(1,2,3) 代表1或2或3
LIKE(表達(dá)式)
模糊查詢, %代表多個(gè)字符, _代表單個(gè)字符
IS NULL
判斷是否為NULL
邏輯運(yùn)算符
AND
與, 兩邊都為TRUE結(jié)果為TRUE
OR ||
或, 一邊為TRUE結(jié)果就為TRUE
NOT !
非, 將表達(dá)式結(jié)果取反
ORDER BY——
語(yǔ)法
SELECT 列名 FROM 表名 ORDER BY 列名 ASC|DESC;
注意事項(xiàng)
ORDER BY 指定排序的列名可以是表中的列名, 也可以是SELECT語(yǔ)句后面起的別名
ASC為升序, DESC為降序
ORDER BY應(yīng)在查詢語(yǔ)句的結(jié)尾
COUNT函數(shù)——
語(yǔ)法
SELECT COUNT(*)|COUNT(列名) from 表名 [WHERE 條件語(yǔ)句]
注意事項(xiàng)
COUNT(列名)的方式是統(tǒng)計(jì)指定列中有多少條記錄, 不包括值為NULL的
COUNT(*)則是統(tǒng)計(jì)表中有多少條數(shù)據(jù)
COUNT(DISTINCT 列名) 統(tǒng)計(jì)不重復(fù)的記錄數(shù)
如果加上WHERE子句, 則是統(tǒng)計(jì)滿足條件的記錄
有考過(guò)全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)MySQL的嗎?
二級(jí)MySQL數(shù)據(jù)庫(kù)程序設(shè)計(jì)是全國(guó)計(jì)算機(jī)等級(jí)考試的一個(gè)二級(jí)考試項(xiàng)目。
考試大綱 (2013年版):
1.掌握數(shù)據(jù)庫(kù)技術(shù)的基本概念和方法。
2.熟練掌握MySQL的安裝與配置。
3.熟練掌握MySQL平臺(tái)下使用SQL語(yǔ)言實(shí)現(xiàn)數(shù)據(jù)庫(kù)的交互操作。
4.熟練掌握MySQL的數(shù)據(jù)庫(kù)編程。
5.熟悉PHP應(yīng)用開發(fā)語(yǔ)言,初步具備利用該語(yǔ)言進(jìn)行簡(jiǎn)單應(yīng)用系統(tǒng)開發(fā)的能力。
6.掌握MySQL數(shù)據(jù)庫(kù)的管理與維護(hù)技術(shù)。
考試內(nèi)容:
一、基本概念與方法
1.?dāng)?shù)據(jù)庫(kù)的基本概念和特點(diǎn)
2.?dāng)?shù)據(jù)庫(kù)系統(tǒng)的結(jié)構(gòu)
3.?dāng)?shù)據(jù)模型
4.?dāng)?shù)據(jù)庫(kù)設(shè)計(jì)方法
二、MySQL平臺(tái)下的SQL交互操作
1.?dāng)?shù)據(jù)庫(kù)、表、索引和視圖的相關(guān)概念
2.?dāng)?shù)據(jù)庫(kù)、表、索引和視圖的創(chuàng)建及維護(hù)方法
3.?dāng)?shù)據(jù)完整性約束的概念、定義及使用方法
4.表和視圖的查詢及數(shù)據(jù)更新操作
三、MySQL的數(shù)據(jù)庫(kù)編程
1.觸發(fā)器、事件、存儲(chǔ)過(guò)程和存儲(chǔ)函數(shù)的概念及作用
2.觸發(fā)器的創(chuàng)建及使用
3.事件的創(chuàng)建及使用
4.存儲(chǔ)過(guò)程和存儲(chǔ)函數(shù)的創(chuàng)建及使用
四、MySQL的管理與維護(hù)
1.MySQL的安裝與配置
2.MySQL用戶賬號(hào)管理的作用及方法
3.MySQL賬戶權(quán)限管理的作用及方法
4.MySQL數(shù)據(jù)庫(kù)備份與恢復(fù)的概念及方法
5.二進(jìn)制日志文件的使用
五、MySQL的應(yīng)用編程
1.PHP語(yǔ)言的基本使用方法
2.MySQL平臺(tái)下編制PHP簡(jiǎn)單應(yīng)用程序
考試方式:
上機(jī)考試,考試時(shí)長(zhǎng)120分鐘,滿分100分。
1.題型及分值
單項(xiàng)選擇題?40分(含公共基礎(chǔ)知識(shí)部分10分)
操作題 60分(包括基本操作題、簡(jiǎn)單應(yīng)用題及綜合應(yīng)用題)
2.考試環(huán)境
開發(fā)環(huán)境:WAMP 5.0及以上
數(shù)據(jù)庫(kù)管理系統(tǒng):MySQL 5.5
編程語(yǔ)言:PHP
方法只適用于有一點(diǎn)office基礎(chǔ)的同學(xué),如果你完全沒碰過(guò),可能就不行。
1.了解題型。一天速成的大家,默認(rèn)你們都像我一樣連題型都不知道。分選擇題和操作題兩個(gè)部分。其中選擇題20道占20分分值,操作題3部分(Word30分,Excel30分,PPT20分)。共100分,目標(biāo)是60分及格。
2.買最新題庫(kù)。上淘寶搜非常多,我買的是虎賁的,會(huì)賣家會(huì)指導(dǎo)你下載學(xué)習(xí)軟件(軟件有電腦版和手機(jī)選擇題庫(kù),都下載好)。
3.開始復(fù)習(xí)。我首先選擇復(fù)習(xí)選擇題,因?yàn)橄啾炔僮黝},它復(fù)習(xí)更快,遇到原題的幾率也更高?;①S手機(jī)版選擇題庫(kù)中共有1040道原題,大概瀏覽之后我發(fā)現(xiàn)除了第一章[數(shù)據(jù)結(jié)構(gòu)與算法]是完全不懂的,其他都是能夠理解的畫風(fēng)。因此直接放棄看第一章,留到最后還有時(shí)間的話去背答案。
其他736題,一上午可以背完,再做一兩套選擇模擬就差不多了。此時(shí)做選擇模擬正確率在15-18個(gè)。最終考試我遇到未看過(guò)的題只有4題,因此估計(jì)我的選擇在16分以上。
4.下午開始操作題。我先把Word Excel PPT的答案視頻各看了2套(我的建議是先自己看一遍題目,再看答案視頻,效果更好)。看這兩套的目的是給操作題考試定個(gè)基調(diào),好選擇最合理的復(fù)習(xí)順序。
以下是我看完2套的即時(shí)感受:PPT最簡(jiǎn)單基本沒有什么特別的操作。EXCEL題量不大,但前后題目關(guān)聯(lián)很大,前面做錯(cuò)會(huì)直接導(dǎo)致后面即使步驟對(duì)了答案也是錯(cuò)誤的,同時(shí)我發(fā)現(xiàn)有些函數(shù)我沒見過(guò)。WORD考很細(xì),題量大,有很多基礎(chǔ)操作是很容易得分的。
因此,我根據(jù)這些開始有針對(duì)性地復(fù)習(xí)。大家不必跟我一模一樣,最好是完成上述步驟后根據(jù)你自己的感受去定復(fù)習(xí)方案。
我的方案十分簡(jiǎn)單粗暴——為節(jié)省時(shí)間PPT不復(fù)習(xí);優(yōu)先復(fù)習(xí)EXCEL,搜到所有會(huì)考的函數(shù)整合(很多其他問(wèn)題下的回答以及微信公眾號(hào)里都有),先寫下來(lái),并百度每一個(gè)的含義和用法。
接下來(lái)的時(shí)間就看EXCEL和WORD答案視頻,還是按之前的方法看,有不會(huì)的都馬上搞懂。能看多少就是多少,最后留出2個(gè)小時(shí)做模擬題自測(cè)摸底(PPT也做哦,做一整套),批改并弄懂錯(cuò)誤原因,最重要是熟悉操作。
做完模擬后我制訂了我的考試策略——完成選擇題后按PPT EXCEL WORD順序做(PPT簡(jiǎn)單基本可以滿分但是如果按原順序WORD做完后會(huì)很匆忙,面臨會(huì)做卻時(shí)間不夠的窘境,WORD放最后如果沒時(shí)間就let it go 反正題量大 一題的分值也低)。
5.最后還有時(shí)間,記得剛才放棄了的第一章選擇題嗎,背!用快速記憶把它們記下來(lái),背得快忘得也快,但你明天就考了不礙事。
6.完成這些,已經(jīng)有很充實(shí)的一天啦,好好睡一覺,給你的腦子足夠的休息和整理時(shí)間。
備考全國(guó)計(jì)算機(jī)二級(jí)MySQL考試的小伙伴們,復(fù)習(xí)的都怎么樣了呢?環(huán)球青藤小編發(fā)布了2020年計(jì)算機(jī)二級(jí)MySQL考試每日一練供大家參考復(fù)習(xí),小伙伴們快來(lái)做一做,測(cè)試一下自己吧!了解更多全國(guó)計(jì)算機(jī)二級(jí)MySQL備考資料敬請(qǐng)關(guān)注環(huán)球青藤計(jì)算機(jī)二級(jí)頻道。
2020年計(jì)算機(jī)二級(jí)MySQL考試每日一練(6月28日)
1.當(dāng)c的值不為0時(shí),在下列選項(xiàng)中不能正確將c的值賦給變量a、b的是( )。
A.c=b=a;
B.(a=c)||(b=c);
C.(a=c)(b=c);
D.a=c=b;
答案:C
2.以下程序的輸出結(jié)果是( )。
main()
{ int a=3:
printf("%dn",(a+a-=a*a));
}
A.-6
B.12
C.0
D.-12
答案:D
3.以下能正確定義一維數(shù)組的選項(xiàng)是( )。
A.int a[5]=(0,1,2,3,4,5);
B.char a[]={0,1,2,3,4,5);
C.char a={'A ','B','C'};
D.int a[5]="0123";
答案:B
4.有以下程序段:
int x=3;
do
{printf("%d",x-=2);)
while(!(--x));
其輸出結(jié)果是( )。
A.1
B.3 0
C.1 -2
D.死循環(huán)
答案:C
5.下列程序的輸出結(jié)果是( )。
void fun(int*X,int y)
{ printf("%d%d",*x,*y);*x=3;*y=1;}
main()
{ int x=1,y=2;
fun(y,x);
printf("%d%d",x,y);
}
A.2 1 4 3
B.1 2 1 2
C.1 2 3 4
D.2 1 1 2
答案:C
更多2020年計(jì)算機(jī)二級(jí)MySQL考試每日一練試題,請(qǐng)繼續(xù)關(guān)注環(huán)球青藤計(jì)算機(jī)二級(jí)頻道。需要及時(shí)了解考試動(dòng)態(tài)的小伙伴可“ 免費(fèi)預(yù)約短信提醒”屆時(shí)環(huán)球青藤會(huì)及時(shí)為大家推送2020年計(jì)算機(jī)二級(jí)考試相關(guān)信息提醒。環(huán)球青藤友情提示:對(duì)于想要參加計(jì)算機(jī)二級(jí)考試的小伙伴們,環(huán)球青藤特地為您準(zhǔn)備了計(jì)算機(jī)二級(jí)考試資料,如有需要請(qǐng)點(diǎn)擊文章下方“免費(fèi)下載計(jì)算機(jī)二級(jí)考試資料”下載學(xué)習(xí)。
create database test_db;use test_db;create table student(id int auto_increment not null,name varchar(20),class varchar(20),primary key(id)); create table course(id int auto_increment not null,name varchar(20),primary key(id)); create table takes(id int auto_increment not null,takes_student int,takes_course int,score int(2),primary key(id));alter table takes add constraint fk_takes_student foreign key (takes_student) references student (id) on delete set null on update cascade;alter table takes add constraint fk_takes_course foreign key (takes_course) references course (id) on delete set null on update cascade;