Tutorial manual...LOG MASUK
Tutorial manual terbaru MySQL
pengarang:php.cn  masa kemas kini:2022-04-15 14:04:12

data import MySQL


Data Import MySQL

Terdapat dua cara mudah untuk mengimport data yang dieksport oleh MySQL dalam MySQL.

1. Import arahan MySQL

Gunakan arahan mysql untuk mengimport format sintaks:

nama pengguna mysql -u - p Kata laluan < Data pangkalan data yang akan diimport (demo.sql)

Contoh:

# mysql -uroot -p123456 < demo.sql

Arahan di atas akan mengimport keseluruhan demo.sql pangkalan data yang disandarkan.

2. Import arahan sumber

Arahan sumber perlu log masuk ke terminal pangkalan data terlebih dahulu:

mysql> create database abc;      # 创建数据库
mysql> use abc;                  # 使用已创建的数据库 
mysql> set names utf8;           # 设置编码
mysql> source /home/abc/abc.sql  # 导入备份数据库

3. Gunakan LOAD DATA untuk mengimport data

MySQL menyediakan pernyataan LOAD DATA INFILE untuk memasukkan data. Dalam contoh berikut, fail dump.txt akan dibaca daripada direktori semasa dan data dalam fail akan dimasukkan ke dalam jadual mytbl pangkalan data semasa.

mysql> LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl;
Jika kata kunci TEMPATAN ditentukan, ia menunjukkan bahawa fail dibaca daripada hos klien mengikut laluan. Jika tidak dinyatakan, fail dibaca mengikut laluan pada pelayan.

Anda boleh menentukan secara eksplisit pembatas nilai lajur dan penanda akhir baris dalam penyata LOAD DATA, tetapi penanda lalai ialah penentu kedudukan dan baris baharu.

Sintaks fasal FIELDS dan LINES bagi kedua-dua arahan adalah sama. Kedua-dua klausa adalah pilihan, tetapi jika kedua-duanya dinyatakan, klausa FIELDS mesti muncul sebelum klausa LINES.

Jika pengguna menentukan klausa FIELDS, klausanya (DIAMATKAN OLEH, [PILIHAN] DISERTAKAN OLEH, dan ESCAPED BY) juga adalah pilihan, bagaimanapun, pengguna mesti menentukan sekurang-kurangnya satu daripadanya.

mysql> LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl
  -> FIELDS TERMINATED BY ':'
  -> LINES TERMINATED BY '\r\n';
LOAD DATA Secara lalai, data dimasukkan dalam susunan lajur dalam fail data Jika lajur dalam fail data tidak konsisten dengan lajur dalam jadual yang dimasukkan, anda perlu menentukan susunannya. daripada lajur.

Sebagai contoh, susunan lajur dalam fail data ialah a, b, c, tetapi susunan lajur dalam jadual yang disisipkan ialah b, c, a, maka sintaks import data adalah seperti berikut:

mysql> LOAD DATA LOCAL INFILE 'dump.txt' 
    -> INTO TABLE mytbl (b, c, a);

4 Gunakan mysqlimport untuk mengimport data

Pelanggan mysqlimport menyediakan antara muka baris arahan untuk LOAD DATA. pernyataan INFILEQL. Kebanyakan pilihan mysqlimport sepadan terus dengan klausa LOAD DATA INFILE.

Untuk mengimport data daripada fail dump.txt ke dalam jadual data mytbl, anda boleh menggunakan arahan berikut:

Arahan
$ mysqlimport -u root -p --local database_name dump.txt
password *****
mysqlimport boleh menentukan pilihan untuk menetapkan format yang ditentukan format pernyataan arahan adalah seperti berikut:
Gunakan pilihan --columns dalam pernyataan
$ mysqlimport -u root -p --local --fields-terminated-by=":" \
   --lines-terminated-by="\r\n"  database_name dump.txt
password *****
mysqlimport untuk menetapkan susunan lajur:
$ mysqlimport -u root -p --local --columns=b,c,a \
    database_name dump.txt
password ****

Pengenalan kepada pilihan biasa mysqlimport

PilihanFungsi
-d atau --delete Padam semua maklumat dalam jadual data sebelum mengimport data baharu ke dalam jadual data
-f atau --forceTidak kira sama ada ralat ditemui, mysqlimport akan memaksa untuk terus memasukkan data
-i atau --ignoremysqlimport langkau atau abaikan mereka yang mempunyai unik yang sama                                                                                                                                                                                                                                                        Fail akan diabaikan.
-l atau -lock-tablesKunci jadual sebelum data dimasukkan, dengan itu menghalang, Apabila anda mengemas kini pangkalan data, pertanyaan dan kemas kini pengguna akan terjejas.
-r atau -replacePilihan ini mempunyai kesan yang bertentangan dengan pilihan -i yang akan digantikan Terdapat rekod dengan kunci unik yang sama dalam jadual.
--fields-enclosed- by= charMenentukan perkara yang perlu disertakan rekod data dalam fail teks Data disertakan dalam petikan berganda. Secara lalai, data tidak disertakan dalam aksara.
--fields-terminated- by=charMenentukan pemisah antara nilai setiap data, dalam fail yang dibatasi tempoh, Pembatas adalah titik. Anda boleh menggunakan pilihan ini untuk menentukan pembatas antara data. Pembatas lalai ialah aksara tab (Tab)
--lines-terminated- by=strPilihan ini menentukan data antara baris dalam rentetan dipisahkan fail teks               atau aksara. Secara lalai, mysqlimport menggunakan baris baharu sebagai pemisah baris.Anda boleh menggantikan satu aksara secara pilihan dengan rentetan:                       Barisan baharu atau gerabak kembali.

Pilihan yang biasa digunakan bagi arahan mysqlimport termasuk -v untuk memaparkan versi (versi), -p untuk meminta kata laluan (kata laluan), dsb.

Tutorial video yang disyorkan:

Laman web PHP Cina