J'ai démarré un projet avec Play Framework 2.4 incluant Ebean ORM et utilisant MySql Server 5.5.Jouer les évolutions du framework en utilisant une syntaxe non supportée pour MySQL
Comme le décrit le document Play, il est possible de générer la base de données à partir d'objets et il fonctionne comme prévu. Mais quand j'ai essayé d'insérer un horodatage, j'ai eu un problème parce que Play utilise une syntaxe mysql plus récente qui n'est pas supportée par mon serveur.
Voici mon modèle:
@ManyToOne
@Column(name = "user_send_id")
private User userSendReq;
@ManyToOne
@Column(name = "user_request_id")
private User userGetReq;
@CreatedTimestamp
@Column(name = "date_request")
private Timestamp whenRequest;
@UpdatedTimestamp
@Column(name = "date_friends")
private Timestamp whenFriends;
private boolean request;
Et cela est le code MySQL Lecture génère pour moi:
create table friends (
user_send_req_id bigint,
user_get_req_id bigint,
request tinyint(1) default 0,
date_request datetime(6) not null,
date_friends datetime(6) not null)
;
Lorsque je tente d'appliquer l'évolution au serveur que je suis l'erreur ci-dessous:
Code d'erreur: 1064. Vous avez une erreur dans votre syntaxe SQL; vérifier le manuel qui correspond à votre version du serveur MySQL pour la bonne syntaxe à utiliser à proximité « (6) non nul, date_friends datetime (6) non nul) » à la ligne 5
est-il un moyen de dire Jouer à générer les fichiers SQL Evolution seulement avec datetime()
et non avec datetime(6)
?