MySQL執(zhí)行外部sql腳本文件的命令
sql腳本是包含一到多個sql命令的sql語句,我們可以將這些sql腳本放在一個文本文件中(我們稱之為“sql腳本文件”),然后通過相關(guān)的命令執(zhí)行這個sql腳本文件。
1.創(chuàng)建包含sql命令的sql腳本文件
在D盤根目錄下新建一個文本文檔,并改名為day01.sql(名字自己取,最好不要有中文,特殊符號,以.sql結(jié)尾)
?
day01.sql文件中包含一些列的sql語句,每條語句最后以;結(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,'馬六','市場',1,sysdate(),6000.0,0,1); insert into emps values(5,'周七','市場',1,sysdate(),5000.0,0,1); insert into emps values(6,'馮八','市場',1,sysdate(),4000.0,0,1); commit;
需要注意的是,mysql里不能直接創(chuàng)建序列CREATE?SEQUENCE,需要創(chuàng)建一張儲存sequence的表,然后手動插入一條數(shù)據(jù) ,最后自定義一個函數(shù)來處理要增長的值。
以上SQL語句中包含中文,所以,在執(zhí)行sql腳本文件前,需要檢查一下你現(xiàn)在使用的MySQL使用的是什么字符集。 MySQL中默認(rèn)字符集的設(shè)置有四級:服務(wù)器級,數(shù)據(jù)庫級,表級 。最終是字段級 的字符集設(shè)置。注意前三種均為默認(rèn)設(shè)置,并不代碼你的字段最終會使用這個字符集設(shè)置。所以我們建議要用show create table tableName ;
或show full fields from tableName;
來檢查當(dāng)前表中字段的字符集設(shè)置。
MySQL中關(guān)于連接環(huán)境的字符集設(shè)置有 Client端,connection, results ,通過這些參數(shù),MySQL就知道你的客戶端工具用的是什么字符集,結(jié)果集應(yīng)該是什么字符集。這樣MySQL就會做必要的翻譯,一旦這些參數(shù)有誤,自然會導(dǎo)致字符串在轉(zhuǎn)輸過程中的轉(zhuǎn)換錯誤?;旧?9%的亂碼由些造成。
當(dāng)前聯(lián)接系統(tǒng)參數(shù)??show variables like 'char%';
退出mysql,使用net stop mysql命令,停止mysql服務(wù)
找到你的mysql安裝目錄下,找到my.ini文件,用記事本打開
?
重新打開CMD控制臺,輸入net start mysql回車,啟動mysql服務(wù),啟動成功后,進(jìn)入mysql,并使用jsd170101數(shù)據(jù)庫
2.執(zhí)行sql腳本文件(介紹三種方式)
方法一:
C:\Users\Administrator>mysql -uroot -p123456 -Djsd170101<D:\day01.sql
//mysql -u賬號 -p密碼 -D數(shù)據(jù)庫名 < sql文件絕對路徑
?
?
方法二:
mysql> source D:\day01.sql???
//mysql控制臺下執(zhí)行source D:\day01.sql
方法三:
mysql> \. D:\day01.sql?
// \. D:\day01.sql
到此這篇關(guān)于MySQL執(zhí)行外部sql腳本文件的命令的文章就介紹到這了,更多相關(guān)MySQL執(zhí)行外部sql內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
mysql時間戳轉(zhuǎn)成常用可讀時間格式的兩種方法
mysql時間戳轉(zhuǎn)成常用可讀時間格式的兩種方法,需要的朋友可以參考下。2010-09-09阿里云ECS centos6.8下安裝配置MySql5.7的教程
阿里云默認(rèn)yum命令下的MySQL是5.17****,安裝mysql5.7之前先卸載以前的版本。下面通過本文給大家介紹阿里云ECS centos6.8下安裝配置MySql5.7的教程,需要的的朋友參考下吧2017-07-07MySQL中安裝樣本數(shù)據(jù)庫Sakila過程分享
這篇文章主要介紹了MySQL中安裝樣本數(shù)據(jù)庫Sakila過程分享,Sakila數(shù)據(jù)庫主要用來做一些基本的操作以及壓力測試等,需要的朋友可以參考下2014-10-10