MySQL執(zhí)行外部sql腳本文件的命令
sql腳本是包含一到多個(gè)sql命令的sql語(yǔ)句,我們可以將這些sql腳本放在一個(gè)文本文件中(我們稱之為“sql腳本文件”),然后通過(guò)相關(guān)的命令執(zhí)行這個(gè)sql腳本文件。
1.創(chuàng)建包含sql命令的sql腳本文件
在D盤(pán)根目錄下新建一個(gè)文本文檔,并改名為day01.sql(名字自己取,最好不要有中文,特殊符號(hào),以.sql結(jié)尾)
?
day01.sql文件中包含一些列的sql語(yǔ)句,每條語(yǔ)句最后以;結(jié)尾,文件內(nèi)容示例如下:
create table emps ( empno int(8) primary key, ename varchar(20), job varchar(20), mgr int(8), hiredate date, sal double(11,2), comm double(11,2), deptno int(8) ); insert into emps values(1,'張三','領(lǐng)導(dǎo)',0,sysdate(),18000.0,3000.0,1); insert into emps values(2,'李四','銷售',1,sysdate(),7000.0,5000.0,1); insert into emps values(3,'王五','銷售',1,sysdate(),8000.0,2000.0,1); insert into emps values(4,'馬六','市場(chǎng)',1,sysdate(),6000.0,0,1); insert into emps values(5,'周七','市場(chǎng)',1,sysdate(),5000.0,0,1); insert into emps values(6,'馮八','市場(chǎng)',1,sysdate(),4000.0,0,1); commit;

需要注意的是,mysql里不能直接創(chuàng)建序列CREATE?SEQUENCE,需要?jiǎng)?chuàng)建一張儲(chǔ)存sequence的表,然后手動(dòng)插入一條數(shù)據(jù) ,最后自定義一個(gè)函數(shù)來(lái)處理要增長(zhǎng)的值。
以上SQL語(yǔ)句中包含中文,所以,在執(zhí)行sql腳本文件前,需要檢查一下你現(xiàn)在使用的MySQL使用的是什么字符集。 MySQL中默認(rèn)字符集的設(shè)置有四級(jí):服務(wù)器級(jí),數(shù)據(jù)庫(kù)級(jí),表級(jí) 。最終是字段級(jí) 的字符集設(shè)置。注意前三種均為默認(rèn)設(shè)置,并不代碼你的字段最終會(huì)使用這個(gè)字符集設(shè)置。所以我們建議要用show create table tableName ; 或show full fields from tableName; 來(lái)檢查當(dāng)前表中字段的字符集設(shè)置。
MySQL中關(guān)于連接環(huán)境的字符集設(shè)置有 Client端,connection, results ,通過(guò)這些參數(shù),MySQL就知道你的客戶端工具用的是什么字符集,結(jié)果集應(yīng)該是什么字符集。這樣MySQL就會(huì)做必要的翻譯,一旦這些參數(shù)有誤,自然會(huì)導(dǎo)致字符串在轉(zhuǎn)輸過(guò)程中的轉(zhuǎn)換錯(cuò)誤?;旧?9%的亂碼由些造成。
當(dāng)前聯(lián)接系統(tǒng)參數(shù)??show variables like 'char%';

退出mysql,使用net stop mysql命令,停止mysql服務(wù)
找到你的mysql安裝目錄下,找到my.ini文件,用記事本打開(kāi)

?
重新打開(kāi)CMD控制臺(tái),輸入net start mysql回車,啟動(dòng)mysql服務(wù),啟動(dòng)成功后,進(jìn)入mysql,并使用jsd170101數(shù)據(jù)庫(kù)

2.執(zhí)行sql腳本文件(介紹三種方式)
方法一:
C:\Users\Administrator>mysql -uroot -p123456 -Djsd170101<D:\day01.sql
//mysql -u賬號(hào) -p密碼 -D數(shù)據(jù)庫(kù)名 < sql文件絕對(duì)路徑
?
?
方法二:
mysql> source D:\day01.sql???
//mysql控制臺(tái)下執(zhí)行source D:\day01.sql

方法三:
mysql> \. D:\day01.sql?
// \. D:\day01.sql

到此這篇關(guān)于MySQL執(zhí)行外部sql腳本文件的命令的文章就介紹到這了,更多相關(guān)MySQL執(zhí)行外部sql內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
關(guān)注官方微信