Saya mencoba melakukan dump mysql dari beberapa baris di database saya. Saya kemudian dapat menggunakan dump untuk mengunggah beberapa baris tersebut ke database lain. Kode yang saya miliki berfungsi, tetapi membuang semuanya. Bagaimana cara membuat mysqldump hanya membuang baris tertentu dari tabel?
Ini kode saya:
mysqldump --opt --user=username --password=password lmhprogram myResumes --where=date_pulled='2011-05-23' > test.sql
--where="id IN(1,2,6,10)"
. Dimana id adalah kolom pada tabel. Ref --where--no-create-info
bersama dengan klausa where Anda, dump baru akan membuat ulang tabel dan menghapus data yang sudah ditransfer! Mungkin sudah jelas, tapi sekarang saya tertangkap basah dua kali.date_pulled='2011-05-23'
. Itu berarti Anda perlu mengutip atau menyela karakter kutip tunggal, sehingga mereka disertakan dalam string daripada diinterpretasikan sebagai tanda kutip dalam sintaks shell. Menambahkan tanda kutip ganda di sekitar semuanya melakukan itu, tetapi begitu juga--where=date_pulled="'2011-05-23'"
(atau--where=date_pulled=\'2011-05-23\'
, atau bahkan--where=date_pulled"'"2011-05-23"'"
).Anda perlu mengutip klausa "di mana".
Mencoba
sumber
Gunakan kode ini untuk baris tabel tertentu, menggunakan kondisi LIKE.
sumber