diff --git a/RELEASE.md b/RELEASE.md
index d00a883..1b23204 100644
--- a/RELEASE.md
+++ b/RELEASE.md
@@ -1,3 +1,49 @@
+# Release 1.14 (2021-05-10)
+
+## EN
+
+- Fixed search under Entity without Key (table without Primary Key).
+
+## JA
+
+- Key の存在しないEntity (Primary Key のないテーブル) でも検索が正しく動作するよう変更。
+
+# Release 1.13 (2021-05-09)
+
+## EN
+
+- Create a new `oiyokan-initializr` project that allows you to edit the Oiyokan configuration file on the web screen.
+- Add `java.io.Serializable` to DTO of setting information
+
+## JA
+
+- Oiyokan 設定ファイルを Web 画面で編集できる `oiyokan-initializr` プロジェクトを新規作成
+- 設定情報の DTO に `java.io.Serializable` を付与
+
+# Release 1.12 (2021-05-06)
+
+v1.x Testing.
+
+## EN
+
+- Stabilization work of software v1.x.
+- Fixed a bug that the DB cursor was not closed in some case.
+- Created a new project oiyokan-initializr for Getting Started.
+- Deployed the oiyokan library to Maven Repository.
+- Changed mvn to work with en.
+- Changed Javadoc to be generated with en.
+- Changed to output cache control meta to http response.
+
+## JA
+
+- v1.x ソフトウェア安定化作業
+- DBカーソルのクローズ漏れバグがあったのを訂正
+- Getting Started 用のプロジェクト oiyokan-initializr を新規作成
+- Maven Repository にデプロイ
+- mvn を en で動作するように変更
+- Javadocを en で生成するように変更
+- キャッシュコントロール記述をレスポンスに出力するよう変更
+
# Release 1.11 (2021-05-02)
v1.x Feature freeze.
diff --git a/pom.xml b/pom.xml
index 999b93d..8d433ed 100755
--- a/pom.xml
+++ b/pom.xml
@@ -12,7 +12,7 @@
jp.igapyon.oiyokan
oiyokan-demosite
- 1.13.20210509a
+ 1.14.20210510a
oiyokan-demosite
Oiyokan is a simple OData v4 Server. (based on Apache
Olingo / Spring Boot / h2 database)
@@ -86,7 +86,7 @@
jp.igapyon.oiyokan
oiyokan
- 1.13.20210509a
+ 1.14.20210510a
diff --git a/src/main/java/jp/oiyokan/demosite/OiyokanDemositeConstants.java b/src/main/java/jp/oiyokan/demosite/OiyokanDemositeConstants.java
index 2c38212..0fab773 100644
--- a/src/main/java/jp/oiyokan/demosite/OiyokanDemositeConstants.java
+++ b/src/main/java/jp/oiyokan/demosite/OiyokanDemositeConstants.java
@@ -19,5 +19,5 @@
* Oiyokan Demosite の定数.
*/
public class OiyokanDemositeConstants {
- public static final String VERSION = "1.13.20210509a";
+ public static final String VERSION = "1.14.20210510a";
}
\ No newline at end of file
diff --git a/src/main/resources/db/oiyokan-internal.mv.db b/src/main/resources/db/oiyokan-internal.mv.db
index c792345..777dcee 100644
Binary files a/src/main/resources/db/oiyokan-internal.mv.db and b/src/main/resources/db/oiyokan-internal.mv.db differ
diff --git a/src/main/resources/oiyokan/oiyokan-settings-MySQL.json b/src/main/resources/oiyokan/oiyokan-settings-MySQL.json
index 17de4d9..7d599a3 100644
--- a/src/main/resources/oiyokan/oiyokan-settings-MySQL.json
+++ b/src/main/resources/oiyokan/oiyokan-settings-MySQL.json
@@ -743,7 +743,7 @@
{
"name": "ODataTest8",
"description": "Description.",
- "dbSettingName": "oiyoUnitTestDb",
+ "dbSettingName": "mysql1",
"canCreate": true,
"canRead": true,
"canUpdate": true,
@@ -775,10 +775,50 @@
]
}
},
+ {
+ "name": "ODataTest9",
+ "description": "Description.",
+ "dbSettingName": "mysql1",
+ "canCreate": true,
+ "canRead": true,
+ "canUpdate": true,
+ "canDelete": true,
+ "omitCountAll": false,
+ "jdbcStmtTimeout": 30,
+ "entityType": {
+ "name": "ODataTest9",
+ "dbName": "ODataTest9",
+ "keyName": [],
+ "property": [
+ {
+ "name": "Name",
+ "dbName": "Name",
+ "edmType": "Edm.String",
+ "jdbcType": "Types.VARCHAR",
+ "dbType": "VARCHAR",
+ "nullable": true,
+ "maxLength": 80,
+ "dbDefault": "'Ubnormal test case. Without Primary Key.'",
+ "filterTreatNullAsBlank": true
+ },
+ {
+ "name": "Description",
+ "dbName": "Description",
+ "edmType": "Edm.String",
+ "jdbcType": "Types.VARCHAR",
+ "dbType": "VARCHAR",
+ "nullable": true,
+ "maxLength": 250,
+ "dbDefault": "'Ubnormal test case. Without Primary Key.'",
+ "filterTreatNullAsBlank": true
+ }
+ ]
+ }
+ },
{
"name": "ODataTest8Sub",
"description": "Description.",
- "dbSettingName": "oiyoUnitTestDb",
+ "dbSettingName": "mysql1",
"canCreate": true,
"canRead": true,
"canUpdate": true,
@@ -822,7 +862,7 @@
{
"name": "ODataTest8SubSub",
"description": "Description.",
- "dbSettingName": "oiyoUnitTestDb",
+ "dbSettingName": "mysql1",
"canCreate": true,
"canRead": true,
"canUpdate": true,
diff --git a/src/main/resources/oiyokan/oiyokan-settings-ORCL18.json b/src/main/resources/oiyokan/oiyokan-settings-ORCL18.json
index 432a209..d7b60c5 100644
--- a/src/main/resources/oiyokan/oiyokan-settings-ORCL18.json
+++ b/src/main/resources/oiyokan/oiyokan-settings-ORCL18.json
@@ -743,7 +743,7 @@
{
"name": "ODataTest8",
"description": "Description.",
- "dbSettingName": "oiyoUnitTestDb",
+ "dbSettingName": "oracle1",
"canCreate": true,
"canRead": true,
"canUpdate": true,
@@ -778,7 +778,7 @@
{
"name": "ODataTest8Sub",
"description": "Description.",
- "dbSettingName": "oiyoUnitTestDb",
+ "dbSettingName": "oracle1",
"canCreate": true,
"canRead": true,
"canUpdate": true,
@@ -822,7 +822,7 @@
{
"name": "ODataTest8SubSub",
"description": "Description.",
- "dbSettingName": "oiyoUnitTestDb",
+ "dbSettingName": "oracle1",
"canCreate": true,
"canRead": true,
"canUpdate": true,
@@ -872,6 +872,46 @@
]
}
},
+ {
+ "name": "ODataTest9",
+ "description": "Description.",
+ "dbSettingName": "oracle1",
+ "canCreate": true,
+ "canRead": true,
+ "canUpdate": true,
+ "canDelete": true,
+ "omitCountAll": false,
+ "jdbcStmtTimeout": 30,
+ "entityType": {
+ "name": "ODataTest9",
+ "dbName": "ODataTest9",
+ "keyName": [],
+ "property": [
+ {
+ "name": "Name",
+ "dbName": "Name",
+ "edmType": "Edm.String",
+ "jdbcType": "Types.VARCHAR",
+ "dbType": "VARCHAR",
+ "nullable": true,
+ "maxLength": 80,
+ "dbDefault": "'Ubnormal test case. Without Primary Key.'",
+ "filterTreatNullAsBlank": true
+ },
+ {
+ "name": "Description",
+ "dbName": "Description",
+ "edmType": "Edm.String",
+ "jdbcType": "Types.VARCHAR",
+ "dbType": "VARCHAR",
+ "nullable": true,
+ "maxLength": 250,
+ "dbDefault": "'Ubnormal test case. Without Primary Key.'",
+ "filterTreatNullAsBlank": true
+ }
+ ]
+ }
+ },
{
"name": "ODataTestFulls1s",
"description": "Description.",
diff --git a/src/main/resources/oiyokan/oiyokan-settings-PostgreSQL.json b/src/main/resources/oiyokan/oiyokan-settings-PostgreSQL.json
index 810f7d4..34285ef 100644
--- a/src/main/resources/oiyokan/oiyokan-settings-PostgreSQL.json
+++ b/src/main/resources/oiyokan/oiyokan-settings-PostgreSQL.json
@@ -889,6 +889,46 @@
]
}
},
+ {
+ "name": "ODataTest9",
+ "description": "Description.",
+ "dbSettingName": "postgres1",
+ "canCreate": true,
+ "canRead": true,
+ "canUpdate": true,
+ "canDelete": true,
+ "omitCountAll": false,
+ "jdbcStmtTimeout": 30,
+ "entityType": {
+ "name": "ODataTest9",
+ "dbName": "ODataTest9",
+ "keyName": [],
+ "property": [
+ {
+ "name": "Name",
+ "dbName": "Name",
+ "edmType": "Edm.String",
+ "jdbcType": "Types.VARCHAR",
+ "dbType": "VARCHAR",
+ "nullable": true,
+ "maxLength": 80,
+ "dbDefault": "'Ubnormal test case. Without Primary Key.'",
+ "filterTreatNullAsBlank": true
+ },
+ {
+ "name": "Description",
+ "dbName": "Description",
+ "edmType": "Edm.String",
+ "jdbcType": "Types.VARCHAR",
+ "dbType": "VARCHAR",
+ "nullable": true,
+ "maxLength": 250,
+ "dbDefault": "'Ubnormal test case. Without Primary Key.'",
+ "filterTreatNullAsBlank": true
+ }
+ ]
+ }
+ },
{
"name": "SklActors",
"description": "Description.",
diff --git a/src/main/resources/oiyokan/oiyokan-settings-SQLSV2008.json b/src/main/resources/oiyokan/oiyokan-settings-SQLSV2008.json
index 50933a0..3f1b6e2 100644
--- a/src/main/resources/oiyokan/oiyokan-settings-SQLSV2008.json
+++ b/src/main/resources/oiyokan/oiyokan-settings-SQLSV2008.json
@@ -743,7 +743,7 @@
{
"name": "ODataTest8",
"description": "Description.",
- "dbSettingName": "oiyoUnitTestDb",
+ "dbSettingName": "mssql1",
"canCreate": true,
"canRead": true,
"canUpdate": true,
@@ -778,7 +778,7 @@
{
"name": "ODataTest8Sub",
"description": "Description.",
- "dbSettingName": "oiyoUnitTestDb",
+ "dbSettingName": "mssql1",
"canCreate": true,
"canRead": true,
"canUpdate": true,
@@ -822,7 +822,7 @@
{
"name": "ODataTest8SubSub",
"description": "Description.",
- "dbSettingName": "oiyoUnitTestDb",
+ "dbSettingName": "mssql1",
"canCreate": true,
"canRead": true,
"canUpdate": true,
@@ -872,6 +872,46 @@
]
}
},
+ {
+ "name": "ODataTest9",
+ "description": "Description.",
+ "dbSettingName": "mssql1",
+ "canCreate": true,
+ "canRead": true,
+ "canUpdate": true,
+ "canDelete": true,
+ "omitCountAll": false,
+ "jdbcStmtTimeout": 30,
+ "entityType": {
+ "name": "ODataTest9",
+ "dbName": "ODataTest9",
+ "keyName": [],
+ "property": [
+ {
+ "name": "Name",
+ "dbName": "Name",
+ "edmType": "Edm.String",
+ "jdbcType": "Types.VARCHAR",
+ "dbType": "VARCHAR",
+ "nullable": true,
+ "maxLength": 80,
+ "dbDefault": "'Ubnormal test case. Without Primary Key.'",
+ "filterTreatNullAsBlank": true
+ },
+ {
+ "name": "Description",
+ "dbName": "Description",
+ "edmType": "Edm.String",
+ "jdbcType": "Types.VARCHAR",
+ "dbType": "VARCHAR",
+ "nullable": true,
+ "maxLength": 250,
+ "dbDefault": "'Ubnormal test case. Without Primary Key.'",
+ "filterTreatNullAsBlank": true
+ }
+ ]
+ }
+ },
{
"name": "ODataTestFulls1s",
"description": "Description.",
diff --git a/src/main/resources/oiyokan/oiyokan-settings-Template.json b/src/main/resources/oiyokan/oiyokan-settings-Template.json
deleted file mode 100644
index 77df958..0000000
--- a/src/main/resources/oiyokan/oiyokan-settings-Template.json
+++ /dev/null
@@ -1,117 +0,0 @@
-{
- "namespace": "Oiyokan",
- "containerName": "Container",
- "database": [
- {
- "name": "oiyokanKan",
- "type": "h2",
- "description": "Oiyokan internal DB. Do not change.",
- "jdbcDriver": "org.h2.Driver",
- "jdbcUrl": "jdbc:h2:mem:oiyokan;DB_CLOSE_DELAY=-1;DATABASE_TO_UPPER=FALSE;MODE=MSSQLServer",
- "jdbcUser": "sa",
- "jdbcPassPlain": ""
- },
- {
- "name": "oiyoUnitTestDb",
- "type": "h2",
- "description": "Oiyokan internal Target Test DB. Used for build unit test.",
- "jdbcDriver": "org.h2.Driver",
- "jdbcUrl": "jdbc:h2:file:./src/main/resources/db/oiyokan-internal;DB_CLOSE_DELAY=-1;DATABASE_TO_UPPER=FALSE;MODE=MSSQLServer",
- "jdbcUser": "sa",
- "jdbcPassPlain": ""
- },
- {
- "name": "postgres1",
- "type": "PostgreSQL",
- "description": "Sample postgres settings. Change the settings to suit your environment.",
- "jdbcDriver": "org.postgresql.Driver",
- "jdbcUrl": "jdbc:postgresql://localhost:5432/dvdrental",
- "jdbcUser": "",
- "jdbcPassPlain": ""
- },
- {
- "name": "mysql1",
- "type": "MySQL",
- "description": "Sample MySQL settings. Change the settings to suit your environment.",
- "jdbcDriver": "com.mysql.jdbc.Driver",
- "jdbcUrl": "jdbc:mysql://localhost/mysql?useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&useCursorFetch=true&defaultFetchSize=128&useServerPrepStmts=true&emulateUnsupportedPstmts=false",
- "jdbcUser": "root",
- "jdbcPassPlain": "passwd123"
- },
- {
- "name": "mysql2",
- "type": "MySQL",
- "description": "Sample MySQL settings for Sakila. Change the settings to suit your environment.",
- "jdbcDriver": "com.mysql.jdbc.Driver",
- "jdbcUrl": "jdbc:mysql://localhost/sakila?useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&useCursorFetch=true&defaultFetchSize=128&useServerPrepStmts=true&emulateUnsupportedPstmts=false",
- "jdbcUser": "root",
- "jdbcPassPlain": "passwd123"
- },
- {
- "name": "mssql1",
- "type": "SQLSV2008",
- "description": "Sample MS SQL Server 2008 settings. Change the settings to suit your environment.",
- "jdbcDriver": "com.microsoft.sqlserver.jdbc.SQLServerDriver",
- "jdbcUrl": "jdbc:sqlserver://localhost\\SQLExpress",
- "jdbcUser": "sa",
- "jdbcPassPlain": "passwd123"
- },
- {
- "name": "oracle1",
- "type": "ORCL18",
- "description": "Sample Oracle XE (18c) settings. Change the settings to suit your environment.",
- "jdbcDriver": "oracle.jdbc.driver.OracleDriver",
- "jdbcUrl": "jdbc:oracle:thin:@10.0.2.15:1521/xepdb1",
- "jdbcUser": "orauser",
- "jdbcPassPlain": "passwd123"
- }
- ],
- "entitySet": [
- {
- "name": "Oiyokan",
- "description": "Oiyokan internal info. Do not change.",
- "dbSettingName": "oiyokanKan",
- "canCreate": true,
- "canRead": true,
- "canUpdate": true,
- "canDelete": true,
- "omitCountAll": false,
- "jdbcStmtTimeout": 30,
- "entityType": {
- "name": "Oiyokan",
- "dbName": "Oiyokan",
- "keyName": ["KeyName"],
- "property": [
- {
- "name": "KeyName",
- "dbName": "KeyName",
- "edmType": "Edm.String",
- "jdbcType": "Types.VARCHAR",
- "dbType": "VARCHAR",
- "jdbcSetMethod": "setString",
- "nullable": false,
- "maxLength": 20,
- "lengthFixed": false,
- "precision": null,
- "scale": null
- },
- {
- "name": "KeyValue",
- "dbName": "KeyValue",
- "edmType": "Edm.String",
- "jdbcType": "Types.VARCHAR",
- "dbType": "VARCHAR",
- "jdbcSetMethod": "setString",
- "nullable": true,
- "maxLength": 255,
- "lengthFixed": false,
- "precision": null,
- "scale": null,
- "dbDefault": "Value",
- "filterTreatNullAsBlank": false
- }
- ]
- }
- }
- ]
-}
diff --git a/src/main/resources/oiyokan/oiyokan-settings.json b/src/main/resources/oiyokan/oiyokan-settings.json
index 1e04b8e..8d68a5c 100644
--- a/src/main/resources/oiyokan/oiyokan-settings.json
+++ b/src/main/resources/oiyokan/oiyokan-settings.json
@@ -935,6 +935,46 @@
]
}
},
+ {
+ "name": "ODataTest9",
+ "description": "Description.",
+ "dbSettingName": "oiyoUnitTestDb",
+ "canCreate": true,
+ "canRead": true,
+ "canUpdate": true,
+ "canDelete": true,
+ "omitCountAll": false,
+ "jdbcStmtTimeout": 30,
+ "entityType": {
+ "name": "ODataTest9",
+ "dbName": "ODataTest9",
+ "keyName": [],
+ "property": [
+ {
+ "name": "Name",
+ "dbName": "Name",
+ "edmType": "Edm.String",
+ "jdbcType": "Types.VARCHAR",
+ "dbType": "VARCHAR",
+ "nullable": true,
+ "maxLength": 80,
+ "dbDefault": "'Ubnormal test case. Without Primary Key.'",
+ "filterTreatNullAsBlank": true
+ },
+ {
+ "name": "Description",
+ "dbName": "Description",
+ "edmType": "Edm.String",
+ "jdbcType": "Types.VARCHAR",
+ "dbType": "VARCHAR",
+ "nullable": true,
+ "maxLength": 250,
+ "dbDefault": "'Ubnormal test case. Without Primary Key.'",
+ "filterTreatNullAsBlank": true
+ }
+ ]
+ }
+ },
{
"name": "ODataTestFulls1",
"description": "Description.",
diff --git a/src/test/java/jp/oiyokan/core/db/testdb/query/UnitTestNonKeyQuery01Test.java b/src/test/java/jp/oiyokan/core/db/testdb/query/UnitTestNonKeyQuery01Test.java
new file mode 100644
index 0000000..db3c7f6
--- /dev/null
+++ b/src/test/java/jp/oiyokan/core/db/testdb/query/UnitTestNonKeyQuery01Test.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright 2021 Toshiki Iga
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package jp.oiyokan.core.db.testdb.query;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import org.apache.olingo.server.api.ODataResponse;
+import org.junit.jupiter.api.Test;
+
+import jp.oiyokan.OiyokanUnittestUtil;
+import jp.oiyokan.common.OiyoInfo;
+import jp.oiyokan.util.OiyokanTestUtil;
+
+/**
+ * Primary Key のない誤ったテーブルであっても正常動作することの確認。
+ */
+class UnitTestNonKeyQuery01Test {
+ @Test
+ void test01() throws Exception {
+ @SuppressWarnings("unused")
+ final OiyoInfo oiyoInfo = OiyokanUnittestUtil.setupUnittestDatabase();
+
+ final ODataResponse resp = OiyokanTestUtil.callGet("/ODataTest9", "$select=Name,Description");
+ final String result = OiyokanTestUtil.stream2String(resp.getContent());
+
+ assertEquals("{\"@odata.context\":\"$metadata#ODataTest9\",\"value\":[]}", result);
+ assertEquals(200, resp.getStatusCode());
+ }
+}
diff --git a/src/test/java/jp/oiyokan/demosite/db/build/Build31PostgresTest.java b/src/test/java/jp/oiyokan/demosite/db/build/Build31PostgresTest.java
index ff91436..40c77bf 100644
--- a/src/test/java/jp/oiyokan/demosite/db/build/Build31PostgresTest.java
+++ b/src/test/java/jp/oiyokan/demosite/db/build/Build31PostgresTest.java
@@ -45,6 +45,7 @@ class Build31PostgresTest {
"DROP TABLE ODataTest8", //
"DROP TABLE ODataTest8Sub", //
"DROP TABLE ODataTest8SubSub", //
+ "DROP TABLE ODataTest9", //
};
@Test
diff --git a/src/test/java/jp/oiyokan/demosite/db/build/Build32MySQLTest.java b/src/test/java/jp/oiyokan/demosite/db/build/Build32MySQLTest.java
index c49ce67..d206ddf 100644
--- a/src/test/java/jp/oiyokan/demosite/db/build/Build32MySQLTest.java
+++ b/src/test/java/jp/oiyokan/demosite/db/build/Build32MySQLTest.java
@@ -43,6 +43,7 @@ class Build32MySQLTest {
"DROP TABLE ODataTest8", //
"DROP TABLE ODataTest8Sub", //
"DROP TABLE ODataTest8SubSub", //
+ "DROP TABLE ODataTest9", //
};
@Test
diff --git a/src/test/java/jp/oiyokan/demosite/db/build/Build33Sqlsv2008Test.java b/src/test/java/jp/oiyokan/demosite/db/build/Build33Sqlsv2008Test.java
index 84ffd98..93e172d 100755
--- a/src/test/java/jp/oiyokan/demosite/db/build/Build33Sqlsv2008Test.java
+++ b/src/test/java/jp/oiyokan/demosite/db/build/Build33Sqlsv2008Test.java
@@ -43,6 +43,7 @@ class Build33Sqlsv2008Test {
"DROP TABLE ODataTest8", //
"DROP TABLE ODataTest8Sub", //
"DROP TABLE ODataTest8SubSub", //
+ "DROP TABLE ODataTest9", //
};
@Test
diff --git a/src/test/java/jp/oiyokan/demosite/db/build/Build34ORCL18Test.java b/src/test/java/jp/oiyokan/demosite/db/build/Build34ORCL18Test.java
index 0add59f..b03af98 100644
--- a/src/test/java/jp/oiyokan/demosite/db/build/Build34ORCL18Test.java
+++ b/src/test/java/jp/oiyokan/demosite/db/build/Build34ORCL18Test.java
@@ -43,6 +43,7 @@ class Build34ORCL18Test {
"DROP TABLE ODataTest8", //
"DROP TABLE ODataTest8Sub", //
"DROP TABLE ODataTest8SubSub", //
+ "DROP TABLE ODataTest9", //
};
@Test
diff --git a/src/test/resources/oiyokan/sql/oiyokan-test-db-MySQL.sql b/src/test/resources/oiyokan/sql/oiyokan-test-db-MySQL.sql
index 0e403ad..dc5c86b 100755
--- a/src/test/resources/oiyokan/sql/oiyokan-test-db-MySQL.sql
+++ b/src/test/resources/oiyokan/sql/oiyokan-test-db-MySQL.sql
@@ -99,6 +99,13 @@ CREATE TABLE IF NOT EXISTS
, PRIMARY KEY(ID)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
+CREATE TABLE IF NOT EXISTS
+ ODataTest8 (
+ MainKey VARCHAR(20) NOT NULL
+ , Description VARCHAR(250) DEFAULT 'Main table'
+ , PRIMARY KEY(MainKey)
+ );
+
CREATE TABLE IF NOT EXISTS
ODataTest8Sub (
MainKey VARCHAR(20) NOT NULL
@@ -116,6 +123,12 @@ CREATE TABLE IF NOT EXISTS
, PRIMARY KEY(MainKey,SubKey,SubSubKey)
);
+CREATE TABLE IF NOT EXISTS
+ ODataTest9 (
+ Name VARCHAR(80) DEFAULT 'Ubnormal test case. Without Primary Key.'
+ , Description VARCHAR(250) DEFAULT 'Ubnormal test case. Without Primary Key.'
+ );
+
INSERT INTO ODataTest1 (Name, Description) VALUES (
'MacBookPro16,2', 'MacBook Pro (13-inch, 2020, Thunderbolt 3ポートx 4)');
diff --git a/src/test/resources/oiyokan/sql/oiyokan-test-db-ORCL18.sql b/src/test/resources/oiyokan/sql/oiyokan-test-db-ORCL18.sql
index a1c7000..2a71939 100644
--- a/src/test/resources/oiyokan/sql/oiyokan-test-db-ORCL18.sql
+++ b/src/test/resources/oiyokan/sql/oiyokan-test-db-ORCL18.sql
@@ -123,6 +123,12 @@ CREATE TABLE
, PRIMARY KEY(MainKey,SubKey,SubSubKey)
);
+CREATE TABLE
+ ODataTest9 (
+ Name VARCHAR(80) DEFAULT 'Ubnormal test case. Without Primary Key.'
+ , Description VARCHAR(250) DEFAULT 'Ubnormal test case. Without Primary Key.'
+ );
+
INSERT INTO ODataTest1 (Name, Description) VALUES (
'MacBookPro16,2', 'MacBook Pro (13-inch, 2020, Thunderbolt 3ポートx 4)');
diff --git a/src/test/resources/oiyokan/sql/oiyokan-test-db-PostgreSQL.sql b/src/test/resources/oiyokan/sql/oiyokan-test-db-PostgreSQL.sql
index 316ecf2..98f51e4 100644
--- a/src/test/resources/oiyokan/sql/oiyokan-test-db-PostgreSQL.sql
+++ b/src/test/resources/oiyokan/sql/oiyokan-test-db-PostgreSQL.sql
@@ -123,6 +123,12 @@ CREATE TABLE IF NOT EXISTS
, PRIMARY KEY(MainKey,SubKey,SubSubKey)
);
+CREATE TABLE IF NOT EXISTS
+ ODataTest9 (
+ Name VARCHAR(80) DEFAULT 'Ubnormal test case. Without Primary Key.'
+ , Description VARCHAR(250) DEFAULT 'Ubnormal test case. Without Primary Key.'
+ );
+
INSERT INTO ODataTest1 (Name, Description) VALUES (
'MacBookPro16,2', 'MacBook Pro (13-inch, 2020, Thunderbolt 3ポートx 4)');
diff --git a/src/test/resources/oiyokan/sql/oiyokan-test-db-SQLSV2008.sql b/src/test/resources/oiyokan/sql/oiyokan-test-db-SQLSV2008.sql
index 9b2c73e..cf110f4 100755
--- a/src/test/resources/oiyokan/sql/oiyokan-test-db-SQLSV2008.sql
+++ b/src/test/resources/oiyokan/sql/oiyokan-test-db-SQLSV2008.sql
@@ -123,6 +123,12 @@ CREATE TABLE
, PRIMARY KEY(MainKey,SubKey,SubSubKey)
);
+CREATE TABLE
+ ODataTest9 (
+ Name VARCHAR(80) DEFAULT 'Ubnormal test case. Without Primary Key.'
+ , Description VARCHAR(250) DEFAULT 'Ubnormal test case. Without Primary Key.'
+ );
+
INSERT INTO ODataTest1 (Name, Description) VALUES (
'MacBookPro16,2', 'MacBook Pro (13-inch, 2020, Thunderbolt 3ポートx 4)');
diff --git a/src/test/resources/oiyokan/sql/oiyokan-test-db-h2.sql b/src/test/resources/oiyokan/sql/oiyokan-test-db-h2.sql
index 0109825..1016973 100644
--- a/src/test/resources/oiyokan/sql/oiyokan-test-db-h2.sql
+++ b/src/test/resources/oiyokan/sql/oiyokan-test-db-h2.sql
@@ -123,6 +123,12 @@ CREATE TABLE IF NOT EXISTS
, PRIMARY KEY(MainKey,SubKey,SubSubKey)
);
+CREATE TABLE IF NOT EXISTS
+ ODataTest9 (
+ Name VARCHAR(80) DEFAULT 'Ubnormal test case. Without Primary Key.'
+ , Description VARCHAR(250) DEFAULT 'Ubnormal test case. Without Primary Key.'
+ );
+
CREATE TABLE IF NOT EXISTS
ODataTestFulls1 (
ID IDENTITY NOT NULL