首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从属于数据库"A“的表更新/插入数据到属于数据库"B”的表?

如何从属于数据库"A“的表更新/插入数据到属于数据库"B”的表?
EN

Stack Overflow用户
提问于 2013-08-29 19:36:36
回答 2查看 111关注 0票数 4

如何从属于数据库"A“的表更新/插入数据到属于数据库"B”的表?

例如,我有一个名为ips的表,如下所示,属于数据库"A":

代码语言:javascript
复制
CREATE TABLE `ips` (
 `id` int(10) unsigned NOT NULL DEFAULT '0',
 `begin_ip_num` int(11) unsigned DEFAULT NULL,
 `end_ip_num` int(11) unsigned DEFAULT NULL,
 `iso` varchar(3) DEFAULT NULL,
 `country` varchar(150) DEFAULT NULL
) ENGINE=InnoDB

假设我有第二个表country属于数据库"B":

代码语言:javascript
复制
CREATE TABLE `country` (
 `countryid` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
 `name` varchar(50) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
 `ordering` smallint(5) unsigned NOT NULL DEFAULT '0',
 `iso` char(2) NOT NULL,
 PRIMARY KEY (`countryid`)
) ENGINE=InnoDB

注意:这两个数据库在同一台服务器上

EN

回答 2

Stack Overflow用户

发布于 2013-08-29 19:38:58

您必须在表名前面加上DB/模式名。大概是这样的:

代码语言:javascript
复制
INSERT INTO `database B`.`country` (columns) 
    SELECT columns FROM `database A`.`ips`;

当然,您必须根据需要将columns替换为所需的列名和/或表达式。

票数 2
EN

Stack Overflow用户

发布于 2013-08-29 19:38:44

在SQLServer中是这样的;

insert x select * from otherdatabase.owner.table

其可以被扩展以选择列等。

在Oracle中,您可能需要在它们之间建立数据库链接。THat对我来说已经是很久以前的事了;-)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18509902

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档