2014-10-06 130 views
0

我有一个为多个网站设置的票证系统。每个网站都有自己的数据库,每个数据库中的表格在所有网站上都是相同的,每个网站上都有一些小的变化。将查询插入多个数据库

我创建了一个CMS来管理一个网站的所有网站。

我可以查询我的数据库,并有像这样的变量设置来调用每个数据库。

  • $database_1 = 'cats';
  • $database_2 = 'dogs';

然后调用这样的数据库中查询:

SELECT `whatever` FROM {$database_1}.`support_ticket`..etc 

我的问题是如何将数据插入到数据库表?

这个工作对我来说:

$addticket = DB::getInstance()->insert('cats.`st_messages`', array(etc.. 

但我希望它是这样工作的:

$addticket = DB::getInstance()->insert('{$database_1}.`st_messages`', array(etc.. 

不知道为什么,这是行不通的..?

因此重申:

  • $database_1 = 'cats';
  • 这工作:'cats.st_messages'
  • 这不是工作,而是希望它:'{$database_1}.st_messages'

如果有人能解释我是什么通过在插入查询中使用变量做错了我将不胜感激。谢谢

+1

分别连接到每个数据库,然后在运行查询时参考该连接ID – 2014-10-06 02:06:36

+0

@JohnConde我相信这就是我想要做的。我有一个名为猫和所谓的狗等数据库。每个都分开连接。 我指的是'$ database_1 ='cats';'的连接,但是在运行我的插入行''{$ database_1} .st_messages''时,它不会将它读作'cats.st_messages'' ..... 。我在问什么是错误的:''{$ database_1} .st_messages'' ..? – echo 2014-10-06 02:34:29

回答

1

建立你的字符串时,你必须使用双引号,否则他们不会被插值。

+0

谢谢你的建议现在完美的作品。非常感谢@meda – echo 2014-10-06 03:27:14