Du kan bruge Mysql LOAD DATA LOCAL INFILE syntaks
LOAD DATA LOCAL INFILE '/path/to/file.txt'
INTO TABLE 'table1'
LINES TERMINATED BY '\n'
For dette skal du sørge for Mysql
har adgang til /path/to/file.txt
. Også den bruger, der udfører forespørgslen, skal have FILE privilegium.
Med Pure PHP er det nemt. Læs filen, byg forespørgslen, udfør den. Du skal bygge forespørgslen, så du ikke ender med at sløjfe forespørgslen, som er langsom.
$data = file("/path/to/file.txt", FILE_SKIP_EMPTY_LINES);
// make sure you have valid database connection prior to this point.
// otherwise mysql_real_escape_string won't work
$values = "('". implode("'), ('", array_map('mysql_real_escape_string', $data)). "')";
$query = "INSERT INTO `TABLE1` (`COLUMN1`) VALUES $values";
// Now just execute the query once.
mysql_query($query);