Antを使用して、次のタスクでテスト環境にデータベースを作成します
<execute-sql-script
driver=org.postgresql.Driver
url=jdbc:postgresql://127.0.0.1:5432/lakshmi_testapp?searchpath=lakshmi_stdcmp
user=lakshmi_stdcmp
password=********
classpathid=execute-sql.classpath
sqlfile=/var/lib/jenkins/jobs/Lakshmi-Testapp-PostgreSQL/workspace/target/lakshmi-std-cmp-opu.sql
/>
サンプルファイル:
create table PersistentOrder (
dbId int8 not null,
orderActionsBinary oid,
orderActionsText text,
orderIssuerId varchar(255),
orderIssuerName varchar(255),
orderType varchar(255),
returnType int4,
uuid varchar(255),
primary key (dbId)
);
create table REVINFO (
REV int4 not null,
REVTSTMP int8,
primary key (REV)
);
psqlまたはpgAdminを使用してファイルを実行しようとするとエラーは発生しませんが、Antを介して実行すると次のようになります。
[sql] Executing resource: /var/lib/jenkins/jobs/Lakshmi-Testapp-PostgreSQL/workspace/target/lakshmi-std-cmp-opu.sql
[sql] Failed to execute: create table if not exists PersistentOrder ( dbId int8 not null, orderActionsBinary oid, orderActionsText text, orderIssuerId varchar(255), orderIssuerName varchar(255), orderType varchar(255), returnType int4, uuid varchar(255), primary key (dbId) )
[sql] org.postgresql.util.PSQLException: ERROR: syntax error at or near "not"
[sql] Position: 19
[sql] Failed to execute: create table if not exists REVINFO ( REV int4 not null, REVTSTMP int8, primary key (REV) )
[sql] org.postgresql.util.PSQLException: ERROR: syntax error at or near "not"
[sql] Position: 19
[sql] Failed to execute: drop sequence if exists hibernate_sequence
[sql] org.postgresql.util.PSQLException: ERROR: current transaction is aborted, commands ignored until end of transaction block
[sql] Failed to execute: create sequence hibernate_sequence;
[sql] org.postgresql.util.PSQLException: ERROR: current transaction is aborted, commands ignored until end of transaction block
[sql] 0 of 4 SQL statements executed successfully
ヒントはありますか?