1. 程式人生 > >mysql匯入匯出指定資料指令碼(含遠端)及弊端

mysql匯入匯出指定資料指令碼(含遠端)及弊端

有時候,需要匯出表中的指定列的資料,拼接成INSERT語句。如下:
Code(遠端匯出需要加入引數"-h+ip";本地則去掉該引數,或者將ip換為本地ip即可)

mysql -h+ip -uusername -ppassword -e "select concat('insert into tablename(id,high,link,is_enabled,platformid) values(\"',id,'\",\"',high,'\",\"',link,'\",\"',is_enabled,'\",\"',platformid,'\");') from tablename" dbname>./filename.sql

使用concat()函式拼接資料語句。
匯入語句一樣,都是執行SQL。如下(遠端匯入需要加入引數"-h+ip";本地則去掉該引數,或者將ip換為本地ip即可):

mysql -h127.0.0.1 -uroot -ppassword tableName <bak_data.sql

弊端:使用指定列的方式匯出資料,對於某些欄位值為null的,而不是’’,那麼匯出的記錄就是一條NULL。