如何使用PHP将sqlite转换为mysql

时间:2013-04-19 02:35:09

标签: php mysql sqlite

我已将sqlite数据库转换为mysql。

所以我需要将sqlite + php代码转换为mysql + php代码。你有任何文件,其中包含将sqlite转换为mysql的方法。

感谢..

这是我的代码

<?php

try {
  //open the database
  $db = new PDO('sqlite:cars.sqlite'); //will create the file in current directory. Current directory must be writable

  //create the database if does not exist
  $db->exec("CREATE TABLE IF NOT EXISTS cars (id INTEGER PRIMARY KEY, manufacturer TEXT, year INTEGER, price INTEGER)");

  //select all data from the table
  $select = $db->prepare('SELECT * FROM cars ORDER BY id ASC LIMIT 100');
  $select->execute();

  $out = array(
    'cars' => $select->fetchAll(PDO::FETCH_ASSOC)
  );
  echo json_encode($out);

  // close the database connection
  $db = NULL;
}
catch (PDOException $e) {
  print 'Exception : ' . $e->getMessage();
}
?>

mysql表:汽车

CREATE TABLE IF NOT EXISTS `cars` (
  `id` int(11) NOT NULL DEFAULT '0',
  `manufacturer` text,
  `year` int(11) DEFAULT '0',
  `price` text,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

1 个答案:

答案 0 :(得分:3)

当您使用PDO时,只需创建Mysql PDO对象,更改此部分:

$db = new PDO('sqlite:cars.sqlite');

类似于:

$dsn = 'mysql:dbname=yourdbname;host=127.0.0.1';
$user = 'yourdbuser';
$password = 'yourdbpass';
$dbh = new PDO($dsn, $user, $password);

你已经完成了。你不需要改变其他任何东西。

PDO是可移植的连接对象,它可以与几个不同的数据库一起使用。关于PDO的更多信息:http://php.net/manual/en/pdo.construct.php