如何从其他数据库获取数据并将其保存到另一个数据库

时间:2013-12-26 04:01:07

标签: php mysql database

我不知道我的这个问题是否可行。是吗?我有一个图书馆系统。我在目录数据库中添加和编辑新书。换句话说,目录数据库仅用于添加/编辑书籍。我有借书的另一个数据库(不是表格)。我想将这些通过目录数据库查看的书籍存储到借用数据库。

我有一个从Catalog DB

获取数据的代码段
error_reporting(0);
$con = mysql_connect("localhost","root","");
mysql_select_db("catalog", $con);

$acc_number=$_GET["acc_number"];

$query="select * from branch where acc_number = '$acc_number'";
$result=mysql_query($query);

while ($row = mysql_fetch_array($result)) {
  //echo $row[1];
}
<textarea name="title" disabled><?php echo $row[1];?></textarea>

提交按钮(存储到借用数据库)。如果单击按钮,则表明我的问题出现了。提交后我只是得到一个空白页面。这是我的process.php:

$con = mysql_connect("localhost","root","");
mysql_select_db("catalog", $con);

$acc_number = $_POST['acc_number'];
$title = $_POST['title'];

$sql = mysql_query("select * from books where acc_number='$acc_number'");

while($row=mysql_fetch_array($sql)){
  $con = mysql_connect("localhost","root","");
  mysql_select_db("borrowing", $con);

  $query="INSERT INTO borrowers (title) VALUES ('$title')";
  mysql_query($query);
  if($query){
    header("Location:../librarysystem/books.php");
  }
}

3 个答案:

答案 0 :(得分:2)

您需要创建两个sql连接,每个数据库一个。然后只需从一个DB获取数据(执行操作,如果需要)并写入第二个DB。

答案 1 :(得分:1)

您有两种方法:

  1. 创建两个单独的数据库连接并在那里操作数据。传递$conn作为与MySQL查询的连接将起作用。
  2. 使用不同的数据库前缀使用相同的数据库。比方说,对于第一个DB,它应该是
  3. mb_(管理图书)

    bb_(借书)

    如果我在你的位置,我会更喜欢第二种方法。

答案 2 :(得分:1)

首先,我建议您使用MYSQLI或DO,因为不推荐使用MYSQL。 这些建议不是解决办法。

只使用一个连接功能,你不需要其中两个只使用相同的变量$ con。

在那里添加一些错误检查以确保正确连接

$sql = mysql_query("select * from books where acc_number='$acc_number'") or die ("error message here");

对于此

$query="INSERT INTO borrowers (title) VALUES ('$title')";
mysql_query($query);
if($query){
    header("Location:../librarysystem/books.php");
    }

尝试

$query=mysql_query("INSERT INTO borrowers (title) VALUES ('$title')") or die("Could not insert...");
    if($query){
        header("Location:../librarysystem/books.php");
        }