sql >> Databasteknik >  >> RDS >> Mysql

Hur laddar man upp Excel eller CSV till MySQL-databas med PHP?

CSV
Om du först kan konvertera Excel-filen till CSV kan du använda mysqlimport för att importera CSV. Detta är förmodligen den snabbaste metoden för att få in data till MySQL.

Du kan göra detta från PHP med LOAD DATA INFILE . Detta är ett exempel på en SQL-sats för att importera 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
Om du inte kan använda CSV och behöver arbeta med råa Excel-filer, behöver du ett PHP-bibliotek som kan läsa Excel-filer.

Det finns några tillgängliga, men jag vet inte hur tillförlitliga eller hur väl underhållna de är:

Päron:Spreadsheet_Excel_Writer

PHPExcel

PHP-ExcelReader

Du kanske också vill titta på den alternativa metoden för att använda Excel API, men du behöver Excel installerat för att göra det. Det finns lite information om det här:

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

Om du använder det här tillvägagångssättet måste du skriva lite kod som läser och analyserar Excel-filen och skickar den till MySQL rad för rad. Detta kan gå mycket långsammare än en massimport av CSV.



  1. Hur man beräknar skillnaden mellan två tidsstämplar i MySQL

  2. genomsöka en HTML-sida med php?

  3. Få antalet dagar mellan två datum i Oracle, inklusive datumen

  4. T-SQL Subquery Max(Datum) och Joins