diff --git a/pom.xml b/pom.xml
index 3d87a7c..6c197a1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
org.jminiorm
jminiorm
- 0.0.24
+ 0.0.26
UTF-8
diff --git a/src/main/java/org/jminiorm/dialect/GenericSQLDialect.java b/src/main/java/org/jminiorm/dialect/GenericSQLDialect.java
index 85b5b98..3bc604b 100644
--- a/src/main/java/org/jminiorm/dialect/GenericSQLDialect.java
+++ b/src/main/java/org/jminiorm/dialect/GenericSQLDialect.java
@@ -80,10 +80,9 @@ protected String sqlForSelectIdEscaped(String schema, List columns, Stri
(orderBy == null ? "" : ("ORDER BY " + orderBy + "\n"));
}
-
@Override
public String sqlForCreateSchema(String schema) {
- return "CREATE SCHEMA IF NOT EXISTS " + identifier(schema, true);
+ return "CREATE SCHEMA IF NOT EXISTS " + identifier(schema, false);
}
@Override
diff --git a/src/main/java/org/jminiorm/dialect/SybaseASASQLDialect.java b/src/main/java/org/jminiorm/dialect/SybaseASASQLDialect.java
index 72e1ef4..d699b49 100644
--- a/src/main/java/org/jminiorm/dialect/SybaseASASQLDialect.java
+++ b/src/main/java/org/jminiorm/dialect/SybaseASASQLDialect.java
@@ -11,6 +11,23 @@ protected String sqlForAutoIncrement() {
return "DEFAULT AUTOINCREMENT";
}
+ @Override
+ public String sqlForCreateSchema(String schema) {
+ // SybaseASA does not support the common concept of schema, however a schema is auto-created par user, with an identical name
+ // the user created is never used for login so the password has not to be known
+ // as no IF NOT EXISTS is available, it is better not to use it for the moment
+ // return "CREATE USER " + identifier(schema, false) + " IDENTIFIED BY " + quoteIdentifier(UUID.randomUUID().toString());
+ return null;
+ }
+
+ @Override
+ protected String sqlForColumnType(Class> javaType, Integer length, Integer scale, Integer precision,
+ boolean generated) {
+ if ((javaType == Boolean.class) || (javaType == boolean.class))
+ return "INTEGER";
+ else return super.sqlForColumnType(javaType, length, scale, precision, generated);
+ }
+
@Override
public String sqlForSelect(String sql, Integer limit, Integer offset) {
String expr = "";
@@ -22,5 +39,4 @@ public String sqlForSelect(String sql, Integer limit, Integer offset) {
sql = sql.replaceAll("(?i)^select ", "select " + expr);
return sql;
}
-
}
diff --git a/src/main/java/org/jminiorm/query/orm/AbstractORMQuery.java b/src/main/java/org/jminiorm/query/orm/AbstractORMQuery.java
index a0dc816..abbd109 100644
--- a/src/main/java/org/jminiorm/query/orm/AbstractORMQuery.java
+++ b/src/main/java/org/jminiorm/query/orm/AbstractORMQuery.java
@@ -35,7 +35,7 @@ protected void verifySchemaExistence() {
String schema = getMapping().getSchema();
if (schema != null && !schema.isEmpty()) {
String sql = getQueryTarget().getConfig().getDialect().sqlForCreateSchema(schema);
- getQueryTarget().sql(sql);
+ if (sql != null) getQueryTarget().sql(sql);
}
}
}
diff --git a/src/test/java/org/jminiorm/SchemaBean.java b/src/test/java/org/jminiorm/SchemaBean.java
index c899cf5..58fb9c0 100644
--- a/src/test/java/org/jminiorm/SchemaBean.java
+++ b/src/test/java/org/jminiorm/SchemaBean.java
@@ -20,10 +20,13 @@ public class SchemaBean {
@Column(name = "short_text", length = 16)
private String shortText;
private String longText;
+ @Column(name = "the_date")
private Date date;
private LocalDate localDate;
private LocalDateTime localDateTime;
private Integer someInt;
+ // solution for a database without support of BOOLEAN
+ // @Column(columnDefinition = "INTEGER")
private Boolean someBoolean;
private byte[] bytes;
@Enumerated(EnumType.ORDINAL)
diff --git a/src/test/java/org/jminiorm/TestSchemaQueries.java b/src/test/java/org/jminiorm/TestSchemaQueries.java
index 2de2688..34c5d99 100644
--- a/src/test/java/org/jminiorm/TestSchemaQueries.java
+++ b/src/test/java/org/jminiorm/TestSchemaQueries.java
@@ -63,18 +63,18 @@ public void testBatchExecutionMode() throws Exception {
testQueriesOnDatabase(db);
}
- // @Test
- // public void testPostgreSQL() throws Exception {
- // Database db;
- // IDatabaseConfig config;
- // config = new DatabaseConfig.Builder()
- // .dataSource("jdbc:postgresql://localhost/jminiorm", "jminiorm", "jminiorm")
- // .statementExecutor(new DefaultStatementExecutor())
- // .dialect(new PostgreSQLDialect())
- // .build();
- // db = new Database(config);
- // testQueriesOnDatabase(db);
- // }
+// @Test
+// public void testPostgreSQL() throws Exception {
+// Database db;
+// IDatabaseConfig config;
+// config = new DatabaseConfig.Builder()
+// .dataSource("jdbc:postgresql://localhost/jminiorm", "jminiorm", "jminiorm")
+// .statementExecutor(new DefaultStatementExecutor())
+// .dialect(new PostgreSQLDialect())
+// .build();
+// db = new Database(config);
+// testQueriesOnDatabase(db);
+// }
protected void testQueriesOnDatabase(IDatabase db) throws Exception {
// Table creation :