标签: cross-database

在EF中跨数据库查询

有没有办法在Entity Framework中实现跨数据库查询?让我们假设我有两个实体用户和帖子,用户实体在database1中,Post在数据库2中,这意味着这些实体在不同的数据库中.我应该如何获得实体框架中的用户帖子?

c# sql-server entity-framework cross-database

17
推荐指数
4
解决办法
1万
查看次数

MongoDB交叉数据库查询

我知道我已经在某个地方见过这个解决方案,但我现在似乎无法找到它.我正在尝试查询一个MongoDB数据库,同时连接到另一个.在运行查询之前,无需显式连接到其他数据库,这是可能的.有谁知道这样做的正确语法?

cross-database mongodb

16
推荐指数
1
解决办法
1万
查看次数

连接来自不同数据库的表的性能影响

我有一个网站,使用一个名为"site1"的数据库.我打算将另一个站点放在同一台服务器上,该站点也将使用"site1"中的一些表.

因此,我应该使用三个不同的数据库,如"site1"(对于第一个站点特定数据),"site2"(对于第二个站点特定数据)和"general"(对于常见表).其中将存在数据库general和site1和site2之间的连接语句.或者我应该将所有表放在一个数据库中?

哪种做法最好?每种情况下表现如何不同?我正在使用MySQL.那么这种情况尤其适用于MySQL呢?

提前致谢...

mysql database join cross-database

15
推荐指数
1
解决办法
8439
查看次数

EF4交叉数据库关系

我想知道EF4是否支持跨数据库关系?例如:

DB1

Author
  Id
  Name
Run Code Online (Sandbox Code Playgroud)

DB2

Posts
  Id
  Content
  db1.Author.Id
Run Code Online (Sandbox Code Playgroud)

理想情况下,我需要做什么才能在我的ef4模型中获得这种关系?

你们有什么想法吗?

谢谢

cross-database entity-framework-4

7
推荐指数
1
解决办法
4925
查看次数

EntityFramework:在两个不同的上下文中检索具有条件的数据

我在两个不同的数据库(具有相同的上下文)之间导入数据.

所以我有两个不同的背景.目标是将上下文A的一些数据导入上下文B.

从不直接编辑上下文B中的数据,它们仅从上下文A导入.在上下文B中,我将复制从中导入它的ID.

现在我正在尝试检索列表中所有不在上下文B中或具有更新版本的数据.

我在两个表中有一个ModifiedAt"字段,让我知道该字段是否已被修改.

这是我目前的代码:

//Here I get all my current data in the context B with their modification time
Dictionary<int,DateTime> currentItems = contextB.Dossiers.ToDictionary(d=>d.MatchingReferenceId, d=>d.ModifiedAt);

//And here the pain starts:
contextA.Dossiers.Where(da=> !currentItems.Keys.Contains(da.Id) || currentItems.FirstOrDefault(db=>db.Key == da.Id).Value <da.ModifiedAt)//And I'm looping on it with a foreach.
Run Code Online (Sandbox Code Playgroud)

第一部分(我检查上下文B是否包含元素)工作,第二部分,我得到了这个例外:

Unable to process the type 'System.Collections.Generic.KeyValuePair`2[]', because it has no known mapping to the value layer.
Run Code Online (Sandbox Code Playgroud)

但我不能做更简单的Id和修改时间之间的这个链接(在开始时,我从其他上下文有一个POCO类,我也试过匿名类型,相同的结果)

我错过了什么?

编辑1

我也用完全相同的结果尝试了这个:contextA.Dossiers.Where(da =>!currentItems.Keys.Contains(da.Id)|| currentItems.Any(db => db.Key == da.Id && db.值

编辑2

我试过lambda,但在这里它不喜欢同时使用两个上下文:

var myList = (from …
Run Code Online (Sandbox Code Playgroud)

sql linq datacontext entity-framework cross-database

7
推荐指数
1
解决办法
1万
查看次数

Mysql跨数据库外键

我正在尝试创建一个跨数据库外键.当我在同一个数据库上运行以下代码时

CREATE TABLE `t1` (
  `id` int(11) NOT NULL AUTO_INCREMENT,  
  `int_id` varchar(128) COLLATE utf8_unicode_ci NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `int_id` (`int_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

CREATE TABLE `t2` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `ext_id` varchar(128) COLLATE utf8_unicode_ci NOT NULL,
  PRIMARY KEY (`id`),
  KEY `ext_id` (`ext_id`),
  CONSTRAINT `t2_ibfk_1` FOREIGN KEY (`ext_id`) REFERENCES `t1` (`int_id`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
Run Code Online (Sandbox Code Playgroud)

但是,当在一个数据库(d1)上创建t1然后在第二个数据库(d2)上运行以下代码时,我收到一般错误:#1005 - 无法创建表'userdata.t2'(错误号:150)

CREATE TABLE `t2` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `ext_id` varchar(128) …
Run Code Online (Sandbox Code Playgroud)

mysql foreign-keys cross-database

7
推荐指数
1
解决办法
5982
查看次数

PostgreSQL将数据从一个数据库复制/传输到另一个数据库

我需要将数据从一个表复制到另一个表.这两个表具有几乎相同的结构,但是在不同的数据库中.

我试过了

INSERT INTO db1.public.table2(
  id,
  name,
  adress,
  lat,
  lng
)
SELECT
  id,
  name,
  adress,
  lat
  lng
FROM db2.public.table2;
Run Code Online (Sandbox Code Playgroud)

我尝试这个,我得到错误交叉数据库...没有实现

sql postgresql copy cross-database

7
推荐指数
3
解决办法
2万
查看次数

JPA 中的跨数据库连接

是否可以在 JPA 中进行跨数据库表连接?

users在一个数据库中有一个表,它有organizations一个单独数据库中表的外键。两个数据库都在同一台物理机器上。现在 MySQL 允许我编写跨越多个数据库的查询,但我不确定如何使用 JPA 来做到这一点。

@Entity对Java POJO的注解,也没有办法,以纪念跨DB关系不采取数据库的名称。

这种情况有解决方法吗?也许使用本机查询来加载加入的实体?

mysql database jpa cross-database jpa-2.0

5
推荐指数
3
解决办法
7795
查看次数

在Postgres中使用dblink有什么捷径吗?

在Postgres中,您可以使用链接到其他数据库dblink,但语法非常详细.例如,您可以这样做:

SELECT *
FROM dblink (
    'dbname=name port=1234 host=host user=user password=password',
    'select * from table'
) AS users([insert each column name and its type here]);
Run Code Online (Sandbox Code Playgroud)

有没有办法更快地做到这一点?也许预先定义连接?

我注意到Postgres有一个create foreign table连接MySQL数据库的新功能.它的语法比dblink.我能用吗?

postgresql syntax dblink cross-database

5
推荐指数
1
解决办法
1万
查看次数

使用 SQLalchemy ORM 和 SQLite 构建具有跨数据库连接的查询

我有两个 SQLite 数据库,其中包含需要使用 SQLalchemy 加入的表。由于某些原因,我无法将所有表合并到一个 SQLite 数据库中。我正在使用 SQLalchemy ORM。我无法在网上找到任何符合我的具体情况的解决方案。

我的问题原则上与SQLAlchemy error query join across database 相同,但原始海报的问题是使用与我的用例不匹配的不同解决方案解决的。

我对 Stackoverflow 的聪明人的问题:

我想模拟以下 SQL 查询:

SELECT DISTINCT g.gene_symbol, o.orthofinder_id FROM eukarya.genes AS g JOIN annotations.orthofinder AS o ON g.gene_id=o.gene_id;
Run Code Online (Sandbox Code Playgroud)

此查询使用附加了两个数据库文件的 SQliteStudio 可以正常工作。

我目前用来描述元数据的代码:

eukarya_engine = create_engine('sqlite:///eukarya_db.sqlite3')
annotations_engine = create_engine('sqlite:///eukarya_annotations_db.sqlite3')

meta = MetaData()  # This allows me to define cross database foreign keys

Eukarya = declarative_base(bind=eukarya_engine, metadata=meta)
Annotations = declarative_base(bind=annotations_engine, metadata=meta)
# I did the above in the hopes that by binding …
Run Code Online (Sandbox Code Playgroud)

python sqlite sqlalchemy cross-database

5
推荐指数
1
解决办法
1370
查看次数