我错误地将我的应用程序设计为每个用户都有一个数据库.每个用户有3个类似的表.我现在想要一个数据库和3个表;我将在旧数据库中使用数据库名称作为新系统中的参考.旧数据库中存在另一个名为“users”的数据库,用于存储数据库名称.我已经完成了新数据库的模式设计,现在离开了迁移.
这里的诀窍是我有3个数据库连接.我首先连接到users数据库和userinfo表,在循环中获取database_name,使用它连接每个旧数据库并进一步连接到个人,帐户和游戏表.
拿起表后,我想用新数据库(DATA_ONE)和表格填充/加入它,而我将旧的database_name附加到新表.对此有任何帮助或有更好的方法吗?非常感谢
$dbhost = "localhost";
$dbname = "users";
$dbuser = "root";
$dbpass = "*****";
$conn1 = mysql_connect($dbhost, $dbuser, $dbpass, TRUE) or die("MySQL Error: " . mysql_error());
$conn2 = mysql_connect($dbhost, $dbuser, $dbpass, TRUE) or die("MySQL Error: " . mysql_error());
$conn3 = mysql_connect($dbhost, $dbuser, $dbpass, TRUE) or die("MySQL Error: " . mysql_error());
mysql_select_db($dbname,$conn1) or die("MySQL Error: " . mysql_error());
$query = "SELECT database_name FROM userinfo";
$result1 = mysql_query($query,$conn1);
while($row = mysql_fetch_array($result1, MYSQL_ASSOC))
{
$database_name =$row['database_name'];
$conn2 = mysql_connect($dbhost, $dbuser, $dbpass) or die("MySQL Error: " . mysql_error());
$db = mysql_select_db($database_name ,$conn2) ;
// now, pick personal, accounts, games tables of user and populate new database and tables.
// this is where i need help.
}
?>