Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak wgrać Excel lub CSV do bazy danych MySQL za pomocą PHP?

CSV
Jeśli możesz najpierw przekonwertować plik Excel do CSV, możesz użyć mysqlimport aby zaimportować plik CSV. Jest to prawdopodobnie najszybsza metoda na wprowadzenie danych do MySQL.

Możesz to zrobić z PHP używając LOAD DATA INFILE . To jest przykładowa instrukcja SQL do zaimportowania pliku data.csv :

LOAD DATA INFILE 'data.csv' INTO TABLE phonenumber_list
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES;

Excel
Jeśli nie możesz używać CSV i musisz pracować z nieprzetworzonymi plikami Excela, będziesz potrzebować biblioteki PHP, która jest w stanie odczytywać pliki Excela.

Dostępnych jest kilka, ale nie wiem, na ile są niezawodne i jak dobrze utrzymane:

Gruszka:Spreadsheet_Excel_Writer

PHPExcel

PHP-ExcelReader

Możesz także przyjrzeć się alternatywnemu podejściu do korzystania z interfejsu API programu Excel, ale do tego potrzebny jest program Excel. Tu jest trochę informacji na ten temat:

http://www.sydphp.org/presentations/010606-excel.html

Jeśli użyjesz tego podejścia, będziesz musiał napisać kod, który odczytuje i analizuje plik Excela i wysyła go do MySQL wiersz po wierszu. Może to działać znacznie wolniej niż masowy import CSV.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Skumulowana suma w zbiorze wierszy w mysql

  2. Używanie unii i kolejności według klauzuli w mysql

  3. INSERT IGNORE używając Laravel's Fluent

  4. Sqlite czy MySql? Jak zdecydować?

  5. Problemy z odczytem/zapisem danych UTF-8 w MySQL z Javy przy użyciu złącza JDBC 5.1