1.直接輸入sql執行
MySQL> select now();
+---------------------+
| now() |
+---------------------+
| 2013-09-18 13:55:45 |
+---------------------+
1 row in set (0.00 sec)
2.執行編寫好的sql腳本
mysql> source H:/1.sql
+---------------------+
| now() |
+---------------------+
| 2013-09-18 13:54:04 |
+---------------------+
1 row in set (0.00 sec)
3.select ...into outfile 方式執行sql
mysql> select now() into outfile 'h:/data/2.sql';
Query OK, 1 row affected (0.00 sec)
4.使用mysql命令執行
H:\>mysql -uaHmin -p -e "select now()"
Enter passworH: ****
+---------------------+
| now() |
+---------------------+
| 2013-09-18 13:57:09 |
+---------------------+
5.mysql命令執行sql,並將查詢結果保存到文本中
a)執行簡單sql
mysql -uaHmin -proot test -e "select now()" -N >H:/work/target1.txt
如果sql很長,這種方式就不是很適合了。
b)執行復雜sql
可以將復雜的sql事先編輯好,存放到文本中在執行。
H:\> mysql -uroot -pmypwH -h127.0.0.1 -p3306 test < H:/work/source.sql > H:/work/target.txt
將最後一種執行方式加上操作系統的定時任務,就可以在mysql中實現定時執行sql,並保存執行結果的目的了。
參考:官方文檔中的 3.5. Using mysql in Batch Mode
http://dev.mysql.com/doc/refman/5.6/en/batch-mode.html
以上就是小編為大家帶來的mysql命令行中執行sql的幾種方式總結全部內容了,希望大家多多支持幫客之家~