Questions tagged «orm»

对象关系映射(ORM)是一种用于将面向对象的系统映射到关系数据库的技术。使用其他标签指示编程语言([java],[sql],[python]),数据库系统([postgreSQL],内容管理系统([django]),框架([flask],[spring],[laravel) ]),应用程序环境([android],[node.js])和其他可用于搜索并具有观察者的标签。

3
通过引用未知目标实体属性
我在被注释的对象中建立一对多关系时遇到问题。 我有以下内容: @MappedSuperclass public abstract class MappedModel { @Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name="id",nullable=false,unique=true) private Long mId; 然后这个 @Entity @Table(name="customer") public class Customer extends MappedModel implements Serializable { /** * */ private static final long serialVersionUID = -2543425088717298236L; /** The collection of stores. */ @OneToMany(mappedBy = "customer", cascade = CascadeType.ALL, fetch = FetchType.LAZY) …

18
EntityManager已关闭
[Doctrine\ORM\ORMException] The EntityManager is closed. 在插入数据时出现DBAL异常后,EntityManager关闭并且无法重新连接。 我尝试过这种方法,但是没有连接。 $this->em->close(); $this->set('doctrine.orm.entity_manager', null); $this->set('doctrine.orm.default_entity_manager', null); $this->get('doctrine')->resetEntityManager(); $this->em = $this->get('doctrine')->getEntityManager(); 有人知道如何重新连接吗?

1
JPA中的多个唯一约束
有没有一种方法可以使用JPA指定在不同的列集上应该有多个唯一约束? @Entity @Table(name="person", uniqueConstraints=@UniqueConstraint(columnNames={"code", "uid"})) public class Person { // Unique on code and uid public String code; public String uid; // Unique on username public String username; public String name; public String email; } 我已经看到了特定于休眠的注释,但是由于我们仍在确定休眠和数据核之间的关系,因此我试图避免使用特定于供应商的解决方案。

9
各种数据库的Entity Framework提供程序列表
那里有哪些提供商,您使用它们的经验 我想知道所有可能的本机.NET Framework实体框架提供程序,以及与默认LINQ2Entities(来自MS的MS SQL)相比的限制。如果对于同一数据库有更多甚至更好。告诉我,我将使用此列表更新此帖子。 随意将其他提供程序直接添加到此帖子中或提供答案,其他人(包括我)会将其添加到列表中。 实体框架1 Microsoft SQL Server标准版/企业版/快速版 Linq 2实体-Microsoft SQL Server连接器 DataDirect ADO.NET数据提供程序 Microsoft SQL Server CE(精简版) 有提供者吗? 的MySQL MySQL连接器(从6.0版开始)-我已经阅读了有关使用时的问题Skip(),Take()并且Sort()在同一棵表达式树中-每个人都欢迎输入有关此方面的经验/知识。 注意:Visual Studio的Express Edition不支持MySQL Connector / NET Visual Studio集成,这意味着您将无法在“数据库资源管理器”窗口中查看MySQL数据库,也无法通过Visual Studio向导对话框添加MySQL数据源。一些用户可能会发现这限制了他们在Visual Studio Express中使用实体框架和MySQL的能力。 Devart dotConnect为MySQL -类似的问题MySQL的连接器,因为我已经阅读并都试图指责MS吧 [应该这些问题有待解决] SQLite的 Devart dotConnect for SQLite System.Data.SQLite PostgreSQL的 PostgreSQL的Devart dotConnect Npgsql的 甲骨文 Devart dotConnect …

3
JPA:如何将字符串保留到数据库字段中,键入MYSQL Text
要求是用户可以写一篇文章,因此我Text为contentmysql数据库中的字段选择类型。我如何转换Java String成MySQL Text 干得好 Jim Tough @Entity public class Article implements Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedValue(strategy = GenerationType.AUTO) private Long id; private Long userId; private String title; private String content; private Integer vote; //Constructors, setters, getters, equals and hashcode } 在我的MYSQL数据库中,content类型为Text。我希望会有这样的东西java.sql.Text,因为这java.sql.Blob是一个实际的类型,但可惜的是,这并不存在
80 java  mysql  orm  jpa 



3
为什么SQLAlchemy用sqlite插入比直接使用sqlite3慢25倍?
为什么这个简单的测试用例用SQLAlchemy插入100,000行比直接使用sqlite3驱动程序慢25倍?我在现实世界的应用程序中看到过类似的减速情况。难道我做错了什么? #!/usr/bin/env python # Why is SQLAlchemy with SQLite so slow? # Output from this program: # SqlAlchemy: Total time for 100000 records 10.74 secs # sqlite3: Total time for 100000 records 0.40 secs import time import sqlite3 from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import Column, Integer, String, create_engine from …

2
FLOW3动作参数和对象数组
FLOW3提供了一种方便的方法,可以通过URL中的ID传递实体,并在controller动作的参数中自动实例化它们: class PostController extends \TYPO3\FLOW3\MVC\Controller\ActionController { public function editAction(Post $post) { ... } } 但是,如果您有一个复选框,每个复选框代表一个特定的对象,该用例如何?也可以自动实例化它们: <input type="checkbox" name="tags[]" value="1" /> <input type="checkbox" name="tags[]" value="2" /> ... 有没有办法告诉FLOW3将实例自动实例$tags化为Tag对象数组?就像是: public function setTagsAction(Post $post, /** @var Model\Tag */ array $tags) { $post->setTags($tags); }

7
休眠:flush()和commit()
org.hibernate.Session.flush()单独打电话是个好习惯吗? 如org.hibernate.Session文档中所述, 在提交事务并关闭会话之前,必须在工作单元的末尾调用(取决于刷新模式,Transaction.commit()调用此方法)。 您能解释一下flush()是否org.hibernate.Transaction.commit()会明确呼叫的目的吗?
77 java  hibernate  orm 

15
亚音速vs NHibernate
什么时候使用其中一种工具不利于另一种工具的共识是什么?我发现Subsonic在快速完成工作方面非常有用,但是在大型项目中,它往往无法扩展,并且将您的域模型与数据库模型联系在一起。这就是Nhibernate出现的地方,因为它为您提供了与数据库模型无关的轻量级POCO,但是建立时间更长。


6
澄清术语-从数据库获取实体时,“水化” JPA或Hibernate实体是什么意思
在ORM /实体的延迟加载的情况下,我对术语“水合”的理解如下: “水合”描述了填充使用延迟加载获取的实体的某些或全部先前未填充的属性的过程。 例如:Author从数据库中加载类: @Entity class Author { @Id long id; List<Book> books; } 最初,books不填充集合。 据我了解,books从数据库加载集合的过程称为“水化”集合。 这个定义正确吗?我应该在此过程中使用另一个更通用的术语吗?


6
SQL Alchemy ORM返回单个列,如何避免常见的后期处理
我使用的是SQL Alchemy的ORM,发现返回单列时,结果如下: [(result,), (result_2,)] # etc... 使用这样的集合,我发现我必须经常这样做: results = [r[0] for r in results] # So that I just have a list of result values 这并不是那么“糟糕”,因为我的结果集通常很小,但是如果不是这样,则可能会增加大量开销。最大的事情是我感到源代码混乱,而错过此步骤是我遇到的一个非常常见的错误。 有什么办法可以避免这个额外的步骤? 除了一个相关的问题:在这种情况下,orm的这种行为似乎很不方便,但是在另一种情况下,我的结果集是[[id,value)],它最终像这样结束: [(result_1_id, result_1_val), (result_2_id, result_2_val)] 然后,我可以这样做: results = dict(results) # so I have a map of id to value 这具有返回结果后有意义的有用步骤的优点。 这真的是问题吗,还是我只是一个小问题,得到结果集后的后处理在两种情况下都有意义?我确定我们可以想到其他一些常见的后处理操作,以使结果集在应用程序代码中更可用。是否有一个全面的高性能和便捷的解决方案,或者后处理是不可避免的,而仅仅是不同应用程序使用所必需的? 当我的应用程序实际上可以利用SQL Alchemy的ORM返回的对象时,它似乎非常有帮助,但是在我不能或不可以的情况下,它就没有那么多了。这仅仅是ORM的普遍问题吗?在这种情况下,我最好不要使用ORM层吗? …
73 python  orm  sqlalchemy 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.