Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $sampleCsvFile = '/tmp/import.csv';
- $octets = file_put_contents($sampleCsvFile, '1;2');
- printf("Wrote %s octets in %sn", $octets, $sampleCsvFile);
- $query = <<< 'query'
- LOAD DATA LOCAL INFILE "/tmp/import.csv" INTO TABLE T FIELDS TERMINATED BY ';' ENCLOSED BY '"' (a, b); commit;
- query;
- $dbhost = 'localhost';
- $dbuser = 'root';
- $dbpass = 'root';
- $pdo = new PDO('mysql:host='.$dbhost.';', $dbuser, $dbpass, [
- PDO::MYSQL_ATTR_READ_DEFAULT_GROUP => 'client',
- PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
- PDO::MYSQL_ATTR_LOCAL_INFILE => true,
- ]);
- printf("load data infile: %bn", $pdo->setAttribute(PDO::MYSQL_ATTR_LOCAL_INFILE, true));
- $exec = $pdo->exec('drop database if exists db; create database if not exists db; use db; create table T (a int, b int null); insert into T (a,b) values (0, 0); commit;');
- printf("create database, table and insert one tuple: %bn", $exec);
- $rows = $pdo->query('select a, b from T')->fetchAll(PDO::FETCH_OBJ);
- foreach($rows as $row)
- {
- printf("%s %sn", $row->a, $row->b);
- }
- $exec = $pdo->exec($query);
- printf("LOAD DATA INFILE exec: %bn", $exec);
- $rows = $pdo->query('select a, b from T')->fetchAll(PDO::FETCH_OBJ);
- foreach($rows as $row)
- {
- printf("%s %sn", $row->a, $row->b);
- }
- $exec = $pdo->exec('drop database if exists db;');
- printf("exec: %bn", $exec);
- $unlink = unlink($sampleCsvFile);
- printf("Unlinked %s: %bn", $sampleCsvFile, $unlink);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement