Questions tagged «orm»

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





11
使用JPA指定索引(非唯一键)
如何定义一个字段,例如email使用JPA批注进行索引。我们需要一个非唯一的键,email因为每天在该字段上有数百万个查询,而没有键的话,它有点慢。 @Entity @Table(name="person", uniqueConstraints=@UniqueConstraint(columnNames={"code", "uid"})) public class Person { // Unique on code and uid public String code; public String uid; public String username; public String name; public String email; } 我已经看到了特定于休眠的注释,但是由于我们仍在决定休眠和数据核之间的关系,因此我试图避免使用特定于供应商的解决方案。 更新: 从JPA 2.1开始,您可以执行此操作。请参阅:此位置不允许使用注释@Index

9
org.hibernate.MappingException:无法确定类型:java.util.List,在表:College,用于列:[org.hibernate.mapping.Column(students)]
我正在将Hibernate用于项目中的所有CRUD操作。它不适用于一对多和多对一关系。它给了我下面的错误。 org.hibernate.MappingException: Could not determine type for: java.util.List, at table: College, for columns: [org.hibernate.mapping.Column(students)] 然后我又看了这个视频教程。一开始对我来说很简单。但是,我不能使其工作。现在也说 org.hibernate.MappingException: Could not determine type for: java.util.List, at table: College, for columns: [org.hibernate.mapping.Column(students)] 我在互联网上进行了一些搜索,有人告诉它Hibernate中的错误,有人说,通过添加@GenereatedValue可以清除此错误,但对我不起作用。 College.java @Entity public class College { @Id @GeneratedValue(strategy=GenerationType.AUTO) private int collegeId; private String collegeName; private List<Student> students; @OneToMany(targetEntity=Student.class, mappedBy="college", fetch=FetchType.EAGER) public …
96 java  hibernate  orm 

8
按属性筛选
是否可以通过模型属性过滤Django查询集? 我的模型中有一个方法: @property def myproperty(self): [..] 现在我想按此属性进行过滤,例如: MyModel.objects.filter(myproperty=[..]) 这有可能吗?
95 python  django  orm 


2
使用sqlalchemy的声明性ORM扩展时的多列索引
根据文档和sqlalchemy.Column该类中的注释,我们应该使用该类sqlalchemy.schema.Index来指定包含多个列的索引。 但是,该示例显示了如何通过直接使用Table对象来实现此目的,如下所示: meta = MetaData() mytable = Table('mytable', meta, # an indexed column, with index "ix_mytable_col1" Column('col1', Integer, index=True), # a uniquely indexed column with index "ix_mytable_col2" Column('col2', Integer, index=True, unique=True), Column('col3', Integer), Column('col4', Integer), Column('col5', Integer), Column('col6', Integer), ) # place an index on col3, col4 Index('idx_col34', mytable.c.col3, mytable.c.col4) …


13
实体框架太慢。我有什么选择?[关闭]
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow 的主题。 3年前关闭。 改善这个问题 我遵循了“不要过早优化”的口头禅,并使用实体框架对WCF服务进行了编码。 但是,我分析了性能,并且实体框架太慢了。(我的应用程序在大约1.2秒内处理了2条消息,而我正在重写的(旧版)应用程序同时执行5-6条消息。(旧版应用程序为其数据库访问调用了sprocs。) 我的分析指向Entity Framework,它占用了每条消息的大部分时间。 那么,我有什么选择? 有更好的ORM吗? (仅支持正常读取和写入对象并快速完成的操作。) 有没有办法使实体框架更快? (注意:当我说更快时,我的意思是从长远来看,而不是第一次通话。的消息。) 某些神秘的第三种选择,将帮助我提高服务速度。 注意:我的大多数数据库交互都是“创建和更新”。我很少选择和删除。

7
如何在JPA中映射名称为保留字的实体字段
@Column(name="open") 在休眠状态下使用sqlserver方言。 [SchemaUpdate] Unsuccessful: create table auth_session (id numeric(19,0) identity not null, active tinyint null, creation_date datetime not null, last_modified datetime not null, maxidle int null, maxlive int null, open tinyint null, sessionid varchar(255) not null, user_id numeric(19,0) not null, primary key (id), unique (sessionid)) [SchemaUpdate] Incorrect syntax near the …

10
如何在JPA中删除具有ManyToMany关系的实体(以及相应的联接表行)?
假设我有两个实体:“组”和“用户”。每个用户可以是多个组的成员,每个组可以有多个用户。 @Entity public class User { @ManyToMany Set<Group> groups; //... } @Entity public class Group { @ManyToMany(mappedBy="groups") Set<User> users; //... } 现在,我要删除一个组(假设它有很多成员)。 问题是,当我在某个组上调用EntityManager.remove()时,JPA提供程序(在我的情况下为Hibernate)不会从联接表中删除行,并且由于外键约束,删除操作也会失败。在User上调用remove()可以正常工作(我想这与拥有关系的一方有关)。 那么在这种情况下如何删除组? 我想出的唯一方法是加载组中的所有用户,然后为每个用户从其组中删除当前组并更新用户。但是,对于该组中的每个用户调用update()只是为了能够删除该组,这似乎很荒谬。
91 java  hibernate  jpa  orm 

3
是否可以从数据库生成Django模型?
我在家里一直在使用Django和Django ORM,我不得不说,就易用性而言,它是目前最好的之一。 但是,我想知道是否可以在“反向”中使用它。 基本上,我想做的是从现有的数据库模式(从不使用django且相当老的项目中)生成Django模型。 这可能吗? 更新:有问题的数据库是Oracle
90 database  django  oracle  orm 

3
为什么Django的prefetch_related()仅适用于all()而不适用于filter()?
假设我有这个模型: class PhotoAlbum(models.Model): title = models.CharField(max_length=128) author = models.CharField(max_length=128) class Photo(models.Model): album = models.ForeignKey('PhotoAlbum') format = models.IntegerField() 现在,如果我想高效地查看相册的子集中的照片子集。我这样做是这样的: someAlbums = PhotoAlbum.objects.filter(author="Davey Jones").prefetch_related("photo_set") for a in someAlbums: somePhotos = a.photo_set.all() 这只会执行两个查询,这正是我所期望的(一个查询获取相册,然后一个查询,例如“ SELECT * IN photos WHERE photoalbum_id IN()”。 一切都很棒。 但是,如果我这样做: someAlbums = PhotoAlbum.objects.filter(author="Davey Jones").prefetch_related("photo_set") for a in someAlbums: somePhotos = a.photo_set.filter(format=1) …
89 django  orm  filter  prefetch 

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.