diff --git a/dbrepo-container-service/rest-service/src/test/java/at/tuwien/service/PersistenceIntegrationTest.java b/dbrepo-container-service/rest-service/src/test/java/at/tuwien/service/PersistenceIntegrationTest.java
index 57a97cf3ae13086c3b48557a39d2416c62ca970b..d7b341c23a0ac741cf6422906c1cc20c984ae038 100644
--- a/dbrepo-container-service/rest-service/src/test/java/at/tuwien/service/PersistenceIntegrationTest.java
+++ b/dbrepo-container-service/rest-service/src/test/java/at/tuwien/service/PersistenceIntegrationTest.java
@@ -2,6 +2,7 @@ package at.tuwien.service;
 
 import at.tuwien.BaseUnitTest;
 import at.tuwien.config.ReadyConfig;
+import at.tuwien.exception.ImageNotFoundException;
 import at.tuwien.repository.jpa.ImageRepository;
 import at.tuwien.repository.jpa.UserRepository;
 import at.tuwien.service.impl.ImageServiceImpl;
@@ -46,8 +47,8 @@ public class PersistenceIntegrationTest extends BaseUnitTest {
     public void delete_notExists_fails() {
 
         /* test */
-        assertThrows(UnexpectedRollbackException.class, () -> {
-            imageService.delete(IMAGE_2_ID);
+        assertThrows(ImageNotFoundException.class, () -> {
+            imageService.delete(9999L);
         });
     }
 
diff --git a/dbrepo-container-service/rest-service/src/test/resources/application.properties b/dbrepo-container-service/rest-service/src/test/resources/application.properties
index 864c870f6e50e5032b5c26e3938d8811e450dab6..246afd93696a55296d38085f6c82c24876e4be1b 100644
--- a/dbrepo-container-service/rest-service/src/test/resources/application.properties
+++ b/dbrepo-container-service/rest-service/src/test/resources/application.properties
@@ -10,7 +10,7 @@ spring.cloud.config.enabled = false
 
 # disable datasource
 # spring 6 fix https://github.com/h2database/h2database/issues/3363
-spring.datasource.url=jdbc:h2:mem:testdb;NON_KEYWORDS=VALUE;DB_CLOSE_ON_EXIT=FALSE;INIT=CREATE SCHEMA IF NOT EXISTS FDA
+spring.datasource.url=jdbc:h2:mem:testdb;NON_KEYWORDS=VALUE,KEY;DB_CLOSE_ON_EXIT=FALSE;INIT=CREATE SCHEMA IF NOT EXISTS FDA
 spring.datasource.driverClassName=org.h2.Driver
 spring.datasource.username=sa
 spring.datasource.password=password
diff --git a/dbrepo-container-service/services/src/main/java/at/tuwien/service/impl/ImageServiceImpl.java b/dbrepo-container-service/services/src/main/java/at/tuwien/service/impl/ImageServiceImpl.java
index fa1de29edb17ae5571f9a16671067395ccf8cbfd..d1cf69056a02d8e04e980c8b8d3cea90294f8cd0 100644
--- a/dbrepo-container-service/services/src/main/java/at/tuwien/service/impl/ImageServiceImpl.java
+++ b/dbrepo-container-service/services/src/main/java/at/tuwien/service/impl/ImageServiceImpl.java
@@ -126,6 +126,9 @@ public class ImageServiceImpl implements ImageService {
     @Override
     @Transactional
     public void delete(Long imageId) throws ImageNotFoundException {
+        if (!imageRepository.existsById(imageId)) {
+            throw new ImageNotFoundException("Image with id " + imageId + " not found");
+        }
         try {
             imageRepository.deleteById(imageId);
             log.info("Deleted image {}", imageId);
diff --git a/dbrepo-database-service/rest-service/src/test/java/at/tuwien/endpoint/AccessEndpointUnitTest.java b/dbrepo-database-service/rest-service/src/test/java/at/tuwien/endpoint/AccessEndpointUnitTest.java
index 68b5a0c1c23875d0f0036b7d3588241a43f42cc1..ac03038159766dd43803905ef9a2c90df841e20c 100644
--- a/dbrepo-database-service/rest-service/src/test/java/at/tuwien/endpoint/AccessEndpointUnitTest.java
+++ b/dbrepo-database-service/rest-service/src/test/java/at/tuwien/endpoint/AccessEndpointUnitTest.java
@@ -27,6 +27,7 @@ import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import org.springframework.security.test.context.support.WithAnonymousUser;
 import org.springframework.security.test.context.support.WithMockUser;
+import org.springframework.test.annotation.DirtiesContext;
 import org.springframework.test.context.junit.jupiter.SpringExtension;
 
 import java.security.Principal;
diff --git a/dbrepo-database-service/rest-service/src/test/java/at/tuwien/endpoint/DatabaseEndpointUnitTest.java b/dbrepo-database-service/rest-service/src/test/java/at/tuwien/endpoint/DatabaseEndpointUnitTest.java
index d73873ade43078c0f81f0b596099989110e611c0..c32330b76d496cf6232be98a237062ee37f156d4 100644
--- a/dbrepo-database-service/rest-service/src/test/java/at/tuwien/endpoint/DatabaseEndpointUnitTest.java
+++ b/dbrepo-database-service/rest-service/src/test/java/at/tuwien/endpoint/DatabaseEndpointUnitTest.java
@@ -2,6 +2,7 @@ package at.tuwien.endpoint;
 
 import at.tuwien.BaseUnitTest;
 import at.tuwien.api.database.*;
+import at.tuwien.config.H2Utils;
 import at.tuwien.config.IndexConfig;
 import at.tuwien.config.ReadyConfig;
 import at.tuwien.endpoints.DatabaseEndpoint;
@@ -27,6 +28,7 @@ import org.springframework.http.ResponseEntity;
 import org.springframework.security.authentication.AuthenticationCredentialsNotFoundException;
 import org.springframework.security.test.context.support.WithAnonymousUser;
 import org.springframework.security.test.context.support.WithMockUser;
+import org.springframework.test.annotation.DirtiesContext;
 import org.springframework.test.context.junit.jupiter.SpringExtension;
 
 import java.security.Principal;
diff --git a/dbrepo-database-service/rest-service/src/test/java/at/tuwien/endpoint/LicenseEndpointUnitTest.java b/dbrepo-database-service/rest-service/src/test/java/at/tuwien/endpoint/LicenseEndpointUnitTest.java
index 81673c913ae36e187f249a38be432d7ab75c039d..b102cbf8519f3389df6983a4a507faead88c70f9 100644
--- a/dbrepo-database-service/rest-service/src/test/java/at/tuwien/endpoint/LicenseEndpointUnitTest.java
+++ b/dbrepo-database-service/rest-service/src/test/java/at/tuwien/endpoint/LicenseEndpointUnitTest.java
@@ -16,6 +16,7 @@ import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.boot.test.mock.mockito.MockBean;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
+import org.springframework.test.annotation.DirtiesContext;
 import org.springframework.test.context.junit.jupiter.SpringExtension;
 
 import java.util.List;
diff --git a/dbrepo-database-service/rest-service/src/test/java/at/tuwien/service/AccessServiceIntegrationTest.java b/dbrepo-database-service/rest-service/src/test/java/at/tuwien/service/AccessServiceIntegrationTest.java
index 5c9a0bbdce047b2f7f7092f3d889d686a806105e..bcb86edb3372d4f70ca65bd13212657b159427c4 100644
--- a/dbrepo-database-service/rest-service/src/test/java/at/tuwien/service/AccessServiceIntegrationTest.java
+++ b/dbrepo-database-service/rest-service/src/test/java/at/tuwien/service/AccessServiceIntegrationTest.java
@@ -71,9 +71,6 @@ public class AccessServiceIntegrationTest extends BaseUnitTest {
     @Autowired
     private RealmRepository realmRepository;
 
-    @Autowired
-    private H2Utils h2Utils;
-
     private final static String BIND_WEATHER = new File("../../dbrepo-metadata-db/test/src/test/resources/weather").toPath().toAbsolutePath() + ":/docker-entrypoint-initdb.d";
 
     @BeforeAll
@@ -93,7 +90,6 @@ public class AccessServiceIntegrationTest extends BaseUnitTest {
         afterEach();
         DockerConfig.createAllNetworks();
         /* metadata database */
-        h2Utils.runScript("schema.sql");
         realmRepository.save(REALM_DBREPO);
         imageRepository.save(IMAGE_1);
         userRepository.save(USER_1_SIMPLE);
diff --git a/dbrepo-database-service/rest-service/src/test/java/at/tuwien/service/DatabaseServiceComponentTest.java b/dbrepo-database-service/rest-service/src/test/java/at/tuwien/service/DatabaseServiceComponentTest.java
index f1a930c9f37b4f8181f893e1a49e71c687fb9109..ab7659a86f8ebca4b31f6d742758279954636b84 100644
--- a/dbrepo-database-service/rest-service/src/test/java/at/tuwien/service/DatabaseServiceComponentTest.java
+++ b/dbrepo-database-service/rest-service/src/test/java/at/tuwien/service/DatabaseServiceComponentTest.java
@@ -78,8 +78,6 @@ public class DatabaseServiceComponentTest extends BaseUnitTest {
     @BeforeEach
     public void beforeEach() {
         afterEach();
-        /* metadata database */
-        h2Utils.runScript("schema.sql");
     }
 
     @AfterEach
diff --git a/dbrepo-database-service/rest-service/src/test/resources/application.properties b/dbrepo-database-service/rest-service/src/test/resources/application.properties
index 857d45f763ccbbe1fdaf13b7fa6dafdb3b02416d..2387763b3a8016a0151a2b563694b1608c50b8b8 100644
--- a/dbrepo-database-service/rest-service/src/test/resources/application.properties
+++ b/dbrepo-database-service/rest-service/src/test/resources/application.properties
@@ -10,7 +10,7 @@ spring.cloud.config.enabled=false
 
 # disable datasource
 # spring 6 fix https://github.com/h2database/h2database/issues/3363
-spring.datasource.url=jdbc:h2:mem:testdb;NON_KEYWORDS=VALUE;DB_CLOSE_ON_EXIT=FALSE;INIT=CREATE SCHEMA IF NOT EXISTS FDA
+spring.datasource.url=jdbc:h2:mem:testdb;NON_KEYWORDS=VALUE,KEY;DB_CLOSE_ON_EXIT=FALSE;INIT=CREATE SCHEMA IF NOT EXISTS FDA
 spring.datasource.driverClassName=org.h2.Driver
 spring.datasource.username=sa
 spring.datasource.password=password
diff --git a/dbrepo-database-service/rest-service/src/test/resources/schema.sql b/dbrepo-database-service/rest-service/src/test/resources/schema.sql
deleted file mode 100644
index 906d8df808fa8f79c1f7c1c26088c55da6c9ee9b..0000000000000000000000000000000000000000
--- a/dbrepo-database-service/rest-service/src/test/resources/schema.sql
+++ /dev/null
@@ -1,25 +0,0 @@
-CREATE SCHEMA IF NOT EXISTS `fda`;
-SET SCHEMA `fda`;
-DROP TABLE IF EXISTS fda.mdb_concepts;
-CREATE TABLE IF NOT EXISTS fda.mdb_concepts
-(
-    uri        VARCHAR(500) not null,
-    name       VARCHAR(255),
-    created    timestamp    NOT NULL DEFAULT NOW(),
-    created_by bigint,
-    PRIMARY KEY (uri)
-);
-DROP TABLE IF EXISTS fda.mdb_units;
-CREATE TABLE IF NOT EXISTS fda.mdb_units
-(
-    uri        VARCHAR(500) not null,
-    name       VARCHAR(255),
-    created    timestamp    NOT NULL DEFAULT NOW(),
-    created_by bigint,
-    PRIMARY KEY (uri)
-);
--- Modified for H2
--- Assume id=1 is invalid
--- Assume id=2 is still valid token
--- CREATE VIEW IF NOT EXISTS fda.mdb_invalid_tokens AS
--- (SELECT `id`, `token_hash`, `creator`, `created`, `expires`, `last_used` FROM fda.`mdb_tokens` WHERE `id` = 1);
\ No newline at end of file
diff --git a/dbrepo-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumn.java b/dbrepo-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumn.java
index 8e5325a821dee87b4a77061ea1fbe4885fc9276b..753f448c4d6005c7caf9c5f6728dc74d58febefe 100644
--- a/dbrepo-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumn.java
+++ b/dbrepo-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumn.java
@@ -104,7 +104,7 @@ public class TableColumn implements Comparable<TableColumn> {
     @CreatedDate
     private Instant created;
 
-    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.MERGE)
+    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.PERSIST)
     @JoinTable(name = "mdb_columns_concepts",
             joinColumns = {
                     @JoinColumn(name = "cid", referencedColumnName = "id", insertable = false, updatable = false),
@@ -114,7 +114,7 @@ public class TableColumn implements Comparable<TableColumn> {
             inverseJoinColumns = @JoinColumn(name = "uri", referencedColumnName = "uri"))
     private TableColumnConcept concept;
 
-    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.MERGE)
+    @ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.PERSIST)
     @JoinTable(name = "mdb_columns_units",
             joinColumns = {
                     @JoinColumn(name = "cid", referencedColumnName = "id", insertable = false, updatable = false),
diff --git a/dbrepo-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumnConcept.java b/dbrepo-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumnConcept.java
index 2fff7bc4e7f70cf763605b5d29c65f7330aa1e5a..a74c967e606346a66c51220d422b5d77ae154ab5 100644
--- a/dbrepo-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumnConcept.java
+++ b/dbrepo-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumnConcept.java
@@ -1,10 +1,13 @@
 package at.tuwien.entities.database.table.columns;
 
 import lombok.*;
+import org.hibernate.annotations.JdbcTypeCode;
 import org.springframework.data.annotation.CreatedDate;
 import org.springframework.data.jpa.domain.support.AuditingEntityListener;
 
 import jakarta.persistence.*;;
+import java.net.URI;
+import java.sql.Types;
 import java.time.Instant;
 import java.util.List;
 
diff --git a/dbrepo-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumnUnit.java b/dbrepo-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumnUnit.java
index 455280a5f931e03d05451313e62ffaba04419fb8..fe1ad3725ef12c6000e66a3c173b90697a5e41e9 100644
--- a/dbrepo-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumnUnit.java
+++ b/dbrepo-metadata-db/entities/src/main/java/at/tuwien/entities/database/table/columns/TableColumnUnit.java
@@ -1,10 +1,13 @@
 package at.tuwien.entities.database.table.columns;
 
 import lombok.*;
+import org.hibernate.annotations.JdbcTypeCode;
 import org.springframework.data.annotation.CreatedDate;
 import org.springframework.data.jpa.domain.support.AuditingEntityListener;
 
 import jakarta.persistence.*;;
+import java.net.URI;
+import java.sql.Types;
 import java.time.Instant;
 import java.util.List;
 
@@ -27,18 +30,6 @@ public class TableColumnUnit {
     @Column(name = "name", nullable = false)
     private String name;
 
-    @org.springframework.data.annotation.Transient
-    @ToString.Exclude
-    @OneToMany(fetch = FetchType.LAZY)
-    @JoinTable(name = "mdb_columns_units",
-            joinColumns = @JoinColumn(name = "uri", referencedColumnName = "uri", insertable = false, updatable = false),
-            inverseJoinColumns = {
-                    @JoinColumn(name = "cid", referencedColumnName = "id", insertable = false, updatable = false),
-                    @JoinColumn(name = "tid", referencedColumnName = "tid", insertable = false, updatable = false),
-                    @JoinColumn(name = "cdbid", referencedColumnName = "cdbid", insertable = false, updatable = false)
-            })
-    private List<TableColumn> columns;
-
     @Column(nullable = false, updatable = false, columnDefinition = "TIMESTAMP")
     @CreatedDate
     private Instant created;
diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/MetadataEndpointUnitTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/MetadataEndpointUnitTest.java
index 7a183b90e247bcbd99efeed4c9228a1a7849a16b..1fb428714fdf1fa75282b71d90a21d0eff971b21 100644
--- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/MetadataEndpointUnitTest.java
+++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/endpoints/MetadataEndpointUnitTest.java
@@ -34,15 +34,6 @@ public class MetadataEndpointUnitTest extends BaseUnitTest {
     @Autowired
     private MetadataEndpoint metadataEndpoint;
 
-    @Autowired
-    private H2Utils h2Utils;
-
-    @BeforeEach
-    public void beforeEach() {
-        /* schema */
-        h2Utils.runScript("schema.sql");
-    }
-
     @Test
     @WithAnonymousUser
     public void identify_succeeds() {
diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/IdentifierServiceIntegrationTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/IdentifierServiceIntegrationTest.java
index 696f3494cce67e895d8a3f7c2a41e221cd32d82d..26da5e82fa6040a62ecf2bfc5aeb1b4867d54512 100644
--- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/IdentifierServiceIntegrationTest.java
+++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/IdentifierServiceIntegrationTest.java
@@ -46,13 +46,8 @@ public class IdentifierServiceIntegrationTest extends BaseUnitTest {
     @Autowired
     private IdentifierService identifierService;
 
-    @Autowired
-    private H2Utils h2Utils;
-
     @BeforeEach
     public void beforeEach() {
-        /* schema */
-        h2Utils.runScript("schema.sql");
         /* metadata database */
         imageRepository.save(IMAGE_1_SIMPLE);
         realmRepository.save(REALM_DBREPO);
diff --git a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/MetadataServiceIntegrationTest.java b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/MetadataServiceIntegrationTest.java
index d75d363cdd35b6bba37987a680314a73146bbd58..e8e68400ee2fd9fd49d9068f295809a8c369a554 100644
--- a/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/MetadataServiceIntegrationTest.java
+++ b/dbrepo-metadata-service/rest-service/src/test/java/at/tuwien/service/MetadataServiceIntegrationTest.java
@@ -45,13 +45,8 @@ public class MetadataServiceIntegrationTest extends BaseUnitTest {
     @Autowired
     private MetadataService metadataService;
 
-    @Autowired
-    private H2Utils h2Utils;
-
     @BeforeEach
     public void beforeEach() {
-        /* schema */
-        h2Utils.runScript("schema.sql");
         /* metadata database */
         imageRepository.save(IMAGE_1_SIMPLE);
         realmRepository.save(REALM_DBREPO);
diff --git a/dbrepo-metadata-service/rest-service/src/test/resources/schema.sql b/dbrepo-metadata-service/rest-service/src/test/resources/schema.sql
deleted file mode 100644
index 906d8df808fa8f79c1f7c1c26088c55da6c9ee9b..0000000000000000000000000000000000000000
--- a/dbrepo-metadata-service/rest-service/src/test/resources/schema.sql
+++ /dev/null
@@ -1,25 +0,0 @@
-CREATE SCHEMA IF NOT EXISTS `fda`;
-SET SCHEMA `fda`;
-DROP TABLE IF EXISTS fda.mdb_concepts;
-CREATE TABLE IF NOT EXISTS fda.mdb_concepts
-(
-    uri        VARCHAR(500) not null,
-    name       VARCHAR(255),
-    created    timestamp    NOT NULL DEFAULT NOW(),
-    created_by bigint,
-    PRIMARY KEY (uri)
-);
-DROP TABLE IF EXISTS fda.mdb_units;
-CREATE TABLE IF NOT EXISTS fda.mdb_units
-(
-    uri        VARCHAR(500) not null,
-    name       VARCHAR(255),
-    created    timestamp    NOT NULL DEFAULT NOW(),
-    created_by bigint,
-    PRIMARY KEY (uri)
-);
--- Modified for H2
--- Assume id=1 is invalid
--- Assume id=2 is still valid token
--- CREATE VIEW IF NOT EXISTS fda.mdb_invalid_tokens AS
--- (SELECT `id`, `token_hash`, `creator`, `created`, `expires`, `last_used` FROM fda.`mdb_tokens` WHERE `id` = 1);
\ No newline at end of file
diff --git a/dbrepo-query-service/rest-service/src/test/java/at/tuwien/listener/RabbitMqListenerIntegrationTest.java b/dbrepo-query-service/rest-service/src/test/java/at/tuwien/listener/RabbitMqListenerIntegrationTest.java
index 09cd52fefd2a52652503e33273843d7e22822dd1..cadc876d8ba3ebcca9c3d3cffa44bf5d7c0941be 100644
--- a/dbrepo-query-service/rest-service/src/test/java/at/tuwien/listener/RabbitMqListenerIntegrationTest.java
+++ b/dbrepo-query-service/rest-service/src/test/java/at/tuwien/listener/RabbitMqListenerIntegrationTest.java
@@ -90,7 +90,6 @@ public class RabbitMqListenerIntegrationTest extends BaseUnitTest {
     @BeforeEach
     public void beforeEach() {
         /* metadata database */
-        h2Utils.runScript("schema.sql");
         imageRepository.save(IMAGE_1_SIMPLE);
         realmRepository.save(REALM_DBREPO);
         userRepository.save(USER_1_SIMPLE);
diff --git a/dbrepo-query-service/rest-service/src/test/java/at/tuwien/repository/ViewRepositoryIntegrationTest.java b/dbrepo-query-service/rest-service/src/test/java/at/tuwien/repository/ViewRepositoryIntegrationTest.java
index c1cf0fbd1618b3615f1519ff625e7264e3498004..7662f1dcbc9263b80139182624bb9406a1ddc592 100644
--- a/dbrepo-query-service/rest-service/src/test/java/at/tuwien/repository/ViewRepositoryIntegrationTest.java
+++ b/dbrepo-query-service/rest-service/src/test/java/at/tuwien/repository/ViewRepositoryIntegrationTest.java
@@ -71,7 +71,6 @@ public class ViewRepositoryIntegrationTest extends BaseUnitTest {
 
     @BeforeEach
     public void beforeEach() {
-        h2Utils.runScript("schema.sql");
         userRepository.save(USER_1);
         imageRepository.save(IMAGE_1);
         containerRepository.save(CONTAINER_1);
diff --git a/dbrepo-query-service/rest-service/src/test/java/at/tuwien/service/TableServiceIntegrationReadTest.java b/dbrepo-query-service/rest-service/src/test/java/at/tuwien/service/TableServiceIntegrationReadTest.java
index 8422cf1dc619087822cf5d020bc1e5798faa8ea8..4590f3e742eab0b7610c3e5e7d291b5d682f58b8 100644
--- a/dbrepo-query-service/rest-service/src/test/java/at/tuwien/service/TableServiceIntegrationReadTest.java
+++ b/dbrepo-query-service/rest-service/src/test/java/at/tuwien/service/TableServiceIntegrationReadTest.java
@@ -100,8 +100,6 @@ public class TableServiceIntegrationReadTest extends BaseUnitTest {
 
     @BeforeEach
     public void beforeEach() {
-        /* metadata db */
-        h2Utils.runScript("schema.sql");
         /* metadata db */
         imageRepository.save(IMAGE_1);
         realmRepository.save(REALM_DBREPO);
diff --git a/dbrepo-query-service/rest-service/src/test/resources/application.properties b/dbrepo-query-service/rest-service/src/test/resources/application.properties
index ca9a7d11effe16304563b2dc88db5c25a18da810..4b947ac55685a21e5efa760b4dd2b3f83f77cf65 100644
--- a/dbrepo-query-service/rest-service/src/test/resources/application.properties
+++ b/dbrepo-query-service/rest-service/src/test/resources/application.properties
@@ -10,7 +10,7 @@ spring.cloud.config.enabled=false
 
 # internal datasource
 # spring 6 fix https://github.com/h2database/h2database/issues/3363
-spring.datasource.url=jdbc:h2:mem:testdb;NON_KEYWORDS=VALUE;DATABASE_TO_UPPER=false;DB_CLOSE_ON_EXIT=FALSE;INIT=RUNSCRIPT FROM './src/test/resources/schema.sql'
+spring.datasource.url=jdbc:h2:mem:testdb;NON_KEYWORDS=VALUE,KEY;DB_CLOSE_ON_EXIT=FALSE;INIT=CREATE SCHEMA IF NOT EXISTS FDA
 spring.datasource.driverClassName=org.h2.Driver
 spring.datasource.username=sa
 spring.datasource.password=password
diff --git a/dbrepo-query-service/rest-service/src/test/resources/schema.sql b/dbrepo-query-service/rest-service/src/test/resources/schema.sql
deleted file mode 100644
index 906d8df808fa8f79c1f7c1c26088c55da6c9ee9b..0000000000000000000000000000000000000000
--- a/dbrepo-query-service/rest-service/src/test/resources/schema.sql
+++ /dev/null
@@ -1,25 +0,0 @@
-CREATE SCHEMA IF NOT EXISTS `fda`;
-SET SCHEMA `fda`;
-DROP TABLE IF EXISTS fda.mdb_concepts;
-CREATE TABLE IF NOT EXISTS fda.mdb_concepts
-(
-    uri        VARCHAR(500) not null,
-    name       VARCHAR(255),
-    created    timestamp    NOT NULL DEFAULT NOW(),
-    created_by bigint,
-    PRIMARY KEY (uri)
-);
-DROP TABLE IF EXISTS fda.mdb_units;
-CREATE TABLE IF NOT EXISTS fda.mdb_units
-(
-    uri        VARCHAR(500) not null,
-    name       VARCHAR(255),
-    created    timestamp    NOT NULL DEFAULT NOW(),
-    created_by bigint,
-    PRIMARY KEY (uri)
-);
--- Modified for H2
--- Assume id=1 is invalid
--- Assume id=2 is still valid token
--- CREATE VIEW IF NOT EXISTS fda.mdb_invalid_tokens AS
--- (SELECT `id`, `token_hash`, `creator`, `created`, `expires`, `last_used` FROM fda.`mdb_tokens` WHERE `id` = 1);
\ No newline at end of file
diff --git a/dbrepo-table-service/rest-service/src/test/java/at/tuwien/endpoint/TableEndpointIntegrationTest.java b/dbrepo-table-service/rest-service/src/test/java/at/tuwien/endpoint/TableEndpointIntegrationTest.java
index 5df092b16f2428901cd127d968d8c993491d9b01..e52f7c89de188832f1c681d461ffbb6ea30011db 100644
--- a/dbrepo-table-service/rest-service/src/test/java/at/tuwien/endpoint/TableEndpointIntegrationTest.java
+++ b/dbrepo-table-service/rest-service/src/test/java/at/tuwien/endpoint/TableEndpointIntegrationTest.java
@@ -75,7 +75,6 @@ public class TableEndpointIntegrationTest extends BaseUnitTest {
         /* create network */
         DockerConfig.createAllNetworks();
         /* metadata database */
-        h2Utils.runScript("schema.sql");
         imageRepository.save(IMAGE_1);
         realmRepository.save(REALM_DBREPO);
         userRepository.save(USER_1_SIMPLE);
diff --git a/dbrepo-table-service/rest-service/src/test/java/at/tuwien/service/TableServiceIntegrationReadTest.java b/dbrepo-table-service/rest-service/src/test/java/at/tuwien/service/TableServiceIntegrationReadTest.java
index 7f209d1d864efc8b8853e0dde409a2650113a1e9..2759fe65b2bfe5b081b1914febbdc45547f9f418 100644
--- a/dbrepo-table-service/rest-service/src/test/java/at/tuwien/service/TableServiceIntegrationReadTest.java
+++ b/dbrepo-table-service/rest-service/src/test/java/at/tuwien/service/TableServiceIntegrationReadTest.java
@@ -92,7 +92,6 @@ public class TableServiceIntegrationReadTest extends BaseUnitTest {
 
     @BeforeEach
     public void beforeEach() {
-        h2Utils.runScript("schema.sql");
         imageRepository.save(IMAGE_1);
         realmRepository.save(REALM_DBREPO);
         userRepository.save(USER_1_SIMPLE);
diff --git a/dbrepo-table-service/rest-service/src/test/java/at/tuwien/service/TableServiceIntegrationWriteTest.java b/dbrepo-table-service/rest-service/src/test/java/at/tuwien/service/TableServiceIntegrationWriteTest.java
index 2bdbfed18a07d723f9e49dc8c0488d2f82826b30..d3482ae758f55d8dbf481b979c08762167ea3156 100644
--- a/dbrepo-table-service/rest-service/src/test/java/at/tuwien/service/TableServiceIntegrationWriteTest.java
+++ b/dbrepo-table-service/rest-service/src/test/java/at/tuwien/service/TableServiceIntegrationWriteTest.java
@@ -92,7 +92,6 @@ public class TableServiceIntegrationWriteTest extends BaseUnitTest {
         DockerConfig.createContainer(BIND_WEATHER, CONTAINER_1, CONTAINER_1_ENV);
         DockerConfig.startContainer(CONTAINER_1);
         /* metadata database */
-        h2Utils.runScript("schema.sql");
         imageRepository.save(IMAGE_1);
         realmRepository.save(REALM_DBREPO);
         userRepository.save(USER_1_SIMPLE);
diff --git a/dbrepo-table-service/rest-service/src/test/resources/application.properties b/dbrepo-table-service/rest-service/src/test/resources/application.properties
index 81a1ff9203b73bec377bc0b6beacf4a05d956012..65007f07659129fba0dbf7f2f6dc6f2c29d2ca7d 100644
--- a/dbrepo-table-service/rest-service/src/test/resources/application.properties
+++ b/dbrepo-table-service/rest-service/src/test/resources/application.properties
@@ -10,7 +10,7 @@ spring.cloud.config.enabled=false
 
 # internal datasource
 # spring 6 fix https://github.com/h2database/h2database/issues/3363
-spring.datasource.url=jdbc:h2:mem:testdb;NON_KEYWORDS=VALUE;DATABASE_TO_UPPER=false;DB_CLOSE_ON_EXIT=FALSE;INIT=RUNSCRIPT FROM 'classpath:schema.sql'
+spring.datasource.url=jdbc:h2:mem:testdb;NON_KEYWORDS=VALUE,KEY;DB_CLOSE_ON_EXIT=FALSE;INIT=CREATE SCHEMA IF NOT EXISTS FDA
 spring.datasource.driverClassName=org.h2.Driver
 spring.datasource.username=sa
 spring.datasource.password=password
diff --git a/dbrepo-table-service/rest-service/src/test/resources/schema.sql b/dbrepo-table-service/rest-service/src/test/resources/schema.sql
deleted file mode 100644
index a668576dc0eb51e77237c42710fb0876ea5afb9b..0000000000000000000000000000000000000000
--- a/dbrepo-table-service/rest-service/src/test/resources/schema.sql
+++ /dev/null
@@ -1,20 +0,0 @@
-CREATE SCHEMA IF NOT EXISTS `fda`;
-SET SCHEMA `fda`;
-DROP TABLE IF EXISTS fda.mdb_concepts;
-CREATE TABLE fda.mdb_concepts
-(
-    uri        VARCHAR(500) not null,
-    name       VARCHAR(255),
-    created    timestamp    NOT NULL DEFAULT NOW(),
-    created_by bigint,
-    PRIMARY KEY (uri)
-);
-DROP TABLE IF EXISTS fda.mdb_units;
-CREATE TABLE fda.mdb_units
-(
-    uri        VARCHAR(500) not null,
-    name       VARCHAR(255),
-    created    timestamp    NOT NULL DEFAULT NOW(),
-    created_by bigint,
-    PRIMARY KEY (uri)
-);
\ No newline at end of file
diff --git a/dbrepo-table-service/services/src/main/java/at/tuwien/config/WebSecurityConfig.java b/dbrepo-table-service/services/src/main/java/at/tuwien/config/WebSecurityConfig.java
index f91a903333ddfdd6e8d809e688844e7f4d60bba5..73dd29d4eff73dd3dd03fc92f83517290ee0e9f7 100644
--- a/dbrepo-table-service/services/src/main/java/at/tuwien/config/WebSecurityConfig.java
+++ b/dbrepo-table-service/services/src/main/java/at/tuwien/config/WebSecurityConfig.java
@@ -5,7 +5,6 @@ import io.swagger.v3.oas.annotations.enums.SecuritySchemeType;
 import io.swagger.v3.oas.annotations.security.SecurityScheme;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
-import org.springframework.http.HttpMethod;
 import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;
 import org.springframework.security.config.annotation.web.builders.HttpSecurity;
 import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
diff --git a/dbrepo-user-service/rest-service/src/test/resources/application.properties b/dbrepo-user-service/rest-service/src/test/resources/application.properties
index 11e1ad711396cdf332a337d0d98a80aab8a13ce7..d2ef7c7093608f1e7f58be83ca2e045c65f53a8d 100644
--- a/dbrepo-user-service/rest-service/src/test/resources/application.properties
+++ b/dbrepo-user-service/rest-service/src/test/resources/application.properties
@@ -10,7 +10,7 @@ spring.cloud.config.enabled=false
 
 # internal datasource
 # spring 6 fix https://github.com/h2database/h2database/issues/3363
-spring.datasource.url=jdbc:h2:mem:testdb;NON_KEYWORDS=VALUE;DATABASE_TO_UPPER=false;DB_CLOSE_ON_EXIT=FALSE;INIT=RUNSCRIPT FROM './src/test/resources/schema.sql'
+spring.datasource.url=jdbc:h2:mem:testdb;NON_KEYWORDS=VALUE,KEY;DB_CLOSE_ON_EXIT=FALSE;INIT=CREATE SCHEMA IF NOT EXISTS FDA
 spring.datasource.driverClassName=org.h2.Driver
 spring.datasource.username=sa
 spring.datasource.password=password
diff --git a/dbrepo-user-service/rest-service/src/test/resources/schema.sql b/dbrepo-user-service/rest-service/src/test/resources/schema.sql
deleted file mode 100644
index 906d8df808fa8f79c1f7c1c26088c55da6c9ee9b..0000000000000000000000000000000000000000
--- a/dbrepo-user-service/rest-service/src/test/resources/schema.sql
+++ /dev/null
@@ -1,25 +0,0 @@
-CREATE SCHEMA IF NOT EXISTS `fda`;
-SET SCHEMA `fda`;
-DROP TABLE IF EXISTS fda.mdb_concepts;
-CREATE TABLE IF NOT EXISTS fda.mdb_concepts
-(
-    uri        VARCHAR(500) not null,
-    name       VARCHAR(255),
-    created    timestamp    NOT NULL DEFAULT NOW(),
-    created_by bigint,
-    PRIMARY KEY (uri)
-);
-DROP TABLE IF EXISTS fda.mdb_units;
-CREATE TABLE IF NOT EXISTS fda.mdb_units
-(
-    uri        VARCHAR(500) not null,
-    name       VARCHAR(255),
-    created    timestamp    NOT NULL DEFAULT NOW(),
-    created_by bigint,
-    PRIMARY KEY (uri)
-);
--- Modified for H2
--- Assume id=1 is invalid
--- Assume id=2 is still valid token
--- CREATE VIEW IF NOT EXISTS fda.mdb_invalid_tokens AS
--- (SELECT `id`, `token_hash`, `creator`, `created`, `expires`, `last_used` FROM fda.`mdb_tokens` WHERE `id` = 1);
\ No newline at end of file
diff --git a/dbrepo-user-service/services/src/main/java/at/tuwien/config/WebSecurityConfig.java b/dbrepo-user-service/services/src/main/java/at/tuwien/config/WebSecurityConfig.java
index 93cc8c563173203a4aef1af2ba732cad70b14b7b..3f1cf7c1ce8ee31ca780df5040443152d00c915b 100644
--- a/dbrepo-user-service/services/src/main/java/at/tuwien/config/WebSecurityConfig.java
+++ b/dbrepo-user-service/services/src/main/java/at/tuwien/config/WebSecurityConfig.java
@@ -5,7 +5,6 @@ import io.swagger.v3.oas.annotations.enums.SecuritySchemeType;
 import io.swagger.v3.oas.annotations.security.SecurityScheme;
 import org.springframework.context.annotation.Bean;
 import org.springframework.context.annotation.Configuration;
-import org.springframework.http.HttpMethod;
 import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;
 import org.springframework.security.config.annotation.web.builders.HttpSecurity;
 import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;