Mon application lève cette exception. J'utilise Java DB comme l'arrière et je me sers JPAjava.sql.SQLException: La table/vue 'SEQUENCE' existe déjà dans le schéma 'ADMIN'
Exception interne: java.sql.SQLException: Table/Voir 'PocketMoney' existe déjà dans le schéma 'APP'. Code d'erreur: 30000 Appel: CREATE TABLE APP.POCKETMONEY (ID INTEGER NOT NULL, DATE DateofSpending, DESCRIPTION VARCHAR (255), MONTANT ENTIER, PRINCIPAL KEY (ID)) Requête: DataModifyQuery()
Exception interne : java.sql.SQLException: La table/vue 'SEQUENCE' existe déjà dans le schéma 'ADMIN'. Code d'erreur: 30000 Appel: CREATE TABLE SEQUENCE (seq_name VARCHAR (50) NOT NULL, SEQ_COUNT DECIMAL, clé primaire (seq_name)) Requête: DataModifyQuery()
Voici mon code JPA
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package mymoney;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
/**
*
* @author sugan
*/
@Entity
@Table(schema = "APP")
public class pocketMoney implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy=GenerationType.TABLE)
private int id;
@Temporal(TemporalType.DATE)
@Column(name = "DateofSpending")
private Date dos;
private String description;
private int amount;
public int getAmount() {
return amount;
}
public void setAmount(int amount) {
this.amount = amount;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public Date getDos() {
return dos;
}
public void setDos(Date dos) {
this.dos = dos;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
@Override
public int hashCode() {
int hash = 0;
hash += (int) id;
return hash;
}
@Override
public boolean equals(Object object) {
// TODO: Warning - this method won't work in the case the id fields are not set
if (!(object instanceof pocketMoney)) {
return false;
}
pocketMoney other = (pocketMoney) object;
if (this.id != other.id) {
return false;
}
return true;
}
@Override
public String toString() {
return "mymoney.pocketMoney[id=" + id + "]";
}
}
persistence.xml
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="1.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd">
<persistence-unit name="myMoneyPU" transaction-type="RESOURCE_LOCAL">
<provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>
<class>mymoney.pocketMoney</class>
<properties>
<property name="eclipselink.jdbc.password" value="adminadmin"/>
<property name="eclipselink.jdbc.user" value="admin"/>
<property name="eclipselink.jdbc.driver" value="org.apache.derby.jdbc.EmbeddedDriver"/>
<property name="eclipselink.jdbc.url" value="jdbc:derby:pocketmoney;create=true"/>
<property name="eclipselink.ddl-generation" value="drop-and-create-tables"/>
</properties>
</persistence-unit>
</persistence>
Sans voir le code, ce qui provoque l'erreur, Je peux juste traduire le message d'erreur. Il semble que votre code essaie de créer des tables, qui existent déjà dans votre base de données ... –