我正在使用Play!框架2.0,我陷入了涉及数据库的烦人问题。
假设我有一个User
(延伸Model
它有几个属性)类(first_name
,last_name
,email
,password
等)。
在某个时候,我想添加一个新属性,可以说last_ip
(它到底是什么并不重要)。因此,我将属性添加到User
类中,进行编译和运行。
问题是:我收到有关数据库更改的红色警报(很明显),它要求我按 “ APPLIC CHANGES” (如果我没记错的话)。很好,但是!
所有数据库记录都被删除 !
结论:我想要一个新字段,但是我不想丢失已经添加到数据库中的所有记录。这可能吗?
首先,您需要通过删除的前2条注释行来禁用Evolution文件的自动生成conf/evolutions/default/1.sql
:
# --- Created by Ebean DDL
# To stop Ebean DDL generation, remove this comment and start using Evolutions
# --- !Ups
...
然后,您需要创建另一个文件,该文件名为conf/evolutions/default/2.sql
Ups和Downs部分,其中包含对数据库模式的更新:
# --- !Ups
ALTER TABLE USER ADD COLUMN last_ip varchar(30) DEFAULT NULL;
# --- !Downs
ALTER TABLE USER DELETE COLUMN last_ip;
数据库是整个站点的数据储藏室。用户提交的数据可以存储在数据库中,以便未来使用。Play可以通过JDBC和数据库通信。我讲介绍Play和mysql数据库的连接。 Play 2.*版本的默认操作数据库的方式是通过Ebean。Play提供Finder这一帮助类型,可以实现一些简单的数据库查询。 数据库准备 在mysql中增加数据库testing。增加用户"player",密码为"player"。为用户p
从戏剧!框架文档: Play2.0中没有内置的JPA实现;您可以选择任何可用的实现。例如,要使用Hibernate,只需将依赖项添加到项目中: 我的选择是什么而不是冬眠? 你认为什么最适合留言板网站? 我知道Hibernate有一点开销,对吗?
是一个通用数据库处理框架(可以包含MSSQL POSTGRESQL,SQLITE EXCEL MYSQL DB2 ORACLE...只要你愿意实现接口就可以).很便捷地进行常用数据库操作(增删改查).其性能是几近纯ADO.NET.对于实体的查询采用emit实 现,如果您还不满意可用此框架的代码生成器直接生成纯ADO.NET SQL形式.其主要特色就是性能和便捷的操作.
我有一个类,它扩展了 创建表主题的第一条记录可以,但无法创建另一条记录: [PersistenceException:执行DML bindLog时出错[]错误[ERROR:重复的键值违反了唯一约束“pk\U主题”\n详细信息:键(id)=(1)已存在。]] 例外情况当然发生在这一行: 这很奇怪,因为: 它以前工作没有问题 我应该怎么做才能解决这个问题? 类(当然不是全部,只是相关的):
在我的项目中,我得到了类类别(仅重要部分代码): 以及与多对多相关的另一类: 我有一个Categories控制器,我从其中调用方法delete。类声明如下所示: 这是我的控制器中的方法: 我的categoryServiceImpl声明如下: 以及没有事务的服务中的删除方法: 我在尝试访问service delete方法中的时遇到异常: 我知道这是因为这个方法中没有事务。但是当我尝试将事务强制到我的
我使用play 2.0.1来构建我的应用程序。到目前为止,我还使用Ebean作为后端层,mysql作为数据库。Java作为语言。 问题: 是否有CRUD模块(动态)或CRUD创建模块?我在网上查了一下,很难找到关于新游戏框架2的东西。十、 根据这条线索,没有。。。[play framework][2.0]积垢管理。 但有些答案是古老的。也许有什么事在酝酿中? 提前谢谢。