【发布时间】:2021-08-09 08:11:47
【问题描述】:
我有 3 个数据库,我想从 2 个数据库中获取数据并插入另一个 1,但我在执行此操作时遇到了一些问题。
Database1 'first':表'items':
| id | name | price |
|---|---|---|
| 1 | Crystal | 30 |
| 2 | Ruby | 20 |
数据库 2“秒”:表“商店”:
| id | name | items_id | state |
|---|---|---|---|
| 1 | KK shop | 1 | NY |
| 2 | ABC Supermarket | 2 | AL |
我需要从表 Items 中获取数据,然后使用表 Items 中的“id”在表 Shop 中搜索“name”。 然后我想将数据插入到表Details中。
这是它显示的样子,从空到这个:
数据库 3“第三”:表“详细信息”:
| id | items.id | items.name | shop.name |
|---|---|---|---|
| 1 | 1 | Crystal | KK shop |
| 2 | 2 | Ruby | ABC Supermarket |
我的问题:
1) 既然我有 3 个数据库,我应该如何同时连接到所有这些数据库?我应该创建 3 个 php 文件来连接它们中的每一个,然后将其中的 3 个包含在同一个文件中吗?
2)如果我想将一个表中的所有列复制到另一个表中,我可以这样做吗?这会将所有列从“first.items”复制到“third.details”吗?
SELECT * from first.items
INSERT INTO third.details;
3)我的 SQL 查询,
SELECT * FROM first.items,
SELECT name FROM second.shop
WHERE first.items.id = 1,
INSERT INTO third.details (id,items.id,items.name,shop.name)
VALUES (1,first.items.id,first.items.name,second.shop.name);
执行查询后,我的表Details无法获取任何数据,这是什么问题?谢谢。
【问题讨论】:
-
为什么要这样做?您似乎只是在生成冗余数据。
-
您尝试过什么解决问题的方法?你被困在哪里了? “无法获取任何数据”是什么意思?