hi
I have some problems with the using of insert select statment. I try
following code:
package test;
import java.sql.*;
public class Untitled1 {
public Untitled1() { }
static String sql = " INSERT INTO TBMAHIERARJOB ( MANDANT, " +
" ID, " +
" HISTNR, " +
" STATUS, " +
" GUELTIGAB, " +
" FKOFSTAMM, " +
" FKMAMITARBEITER, " +
" FKFGUSER, " +
" FKFGUSERHISTNR, " +
" ERFASST, " +
" MANUMMER, " +
" BEARBSTATUS, " +
" TABLENAME, " +
" BEARBTYP, " +
" BEARBVALUE, " +
" BEARBGRUND ) " +
" (SELECT MANDANT MANDANT, " +
" 1 + ID ID, " +
" 1 HISTNR, " +
" 2 STATUS, " +
" ? GUELTIGAB, " +
" FKOFSTAMM FKOFSTAMM, " +
" ID FKMAMITARBEITER, " +
" 0 FKFGUSER, " +
" 0 FKFGUSERHISTNR, " +
" ? ERFASST, " +
" manummer MANUMMER, " +
" 0 BEARBSTATUS, " +
" 'TBMAMITARBEITER' TABLENAME, " +
" 1 BEARBTYP, " +
" mauebernr BEARBVALUE, " +
" 0 BEARBGRUND " +
" from tbmamitarbeiter " +
" where mandant = 0 and status = 2) ";
public static void main(String[] args) {
try {
Class.forName("com.sap.dbtech.jdbc.DriverSapDB");
Connection con =
DriverManager.getConnection("jdbc:sapdb://localhost/test","dba","dba");
System.err.println("DB="+con.getMetaData().getDatabaseProductName());
System.err.println("DB-Version="+con.getMetaData().getDatabaseProductVersion());
System.err.println("Driver="+con.getMetaData().getDriverName());
System.err.println("Driver-Version="+con.getMetaData().getDriverVersion());
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setDate(1, new java.sql.Date(System.currentTimeMillis()));
stmt.setDate(2, new java.sql.Date(System.currentTimeMillis()));
stmt.executeUpdate();
}
catch (Exception ex) {
ex.printStackTrace();
}
}
}
I get following result:
DB=SAP DB
DB-Version=Kernel 7.3.0 Build 021-000-000-000
Driver=SAP DB
Driver-Version=package com.sap.dbtech.jdbc, "SAP DB JDBC Driver", "SAP AG",
"7.3.0 Build 021-000-084-832"
com.sap.dbtech.jdbc.exceptions.DatabaseException: SAP DBTech SQL: [-9400]
System error: AK Cachedirectory full
If I remove date-values (gueltigab, erfasst) it is working fine.
Is it a bug or can anybody help me ????
The tables definitions are:
CREATE TABLE TBMAHIERARJOB
(
MANDANT INTEGER NOT NULL DEFAULT 0,
ID INTEGER NOT NULL DEFAULT 0,
HISTNR INTEGER NOT NULL DEFAULT 0,
STATUS SMALLINT NOT NULL DEFAULT 0,
GUELTIGAB DATE NOT NULL DEFAULT DATE,
FKOFSTAMM INTEGER NOT NULL DEFAULT 0,
FKMAMITARBEITER INTEGER NOT NULL DEFAULT 0,
FKFGUSER INTEGER NOT NULL DEFAULT 0,
FKFGUSERHISTNR INTEGER NOT NULL DEFAULT 0,
ERFASST DATE NOT NULL DEFAULT DATE,
MANUMMER CHAR(10) NOT NULL DEFAULT ' ',
BEARBSTATUS SMALLINT NOT NULL DEFAULT 0,
TABLENAME CHAR(18) NOT NULL DEFAULT ' ',
BEARBTYP SMALLINT NOT NULL DEFAULT 0,
BEARBVALUE CHAR(50) NOT NULL DEFAULT ' ',
BEARBGRUND INTEGER NOT NULL DEFAULT 0,
CONSTRAINT P_KEY_1 PRIMARY KEY (MANDANT, ID, HISTNR)
);
CREATE TABLE TBMAMITARBEITER
(
MANDANT INTEGER NOT NULL DEFAULT 0,
ID INTEGER NOT NULL DEFAULT 0,
HISTNR INTEGER NOT NULL DEFAULT 0,
STATUS SMALLINT NOT NULL DEFAULT 0,
GUELTIGAB DATE NOT NULL DEFAULT DATE,
FKOFSTAMM INTEGER NOT NULL DEFAULT 0,
FKFGVERTRIEB INTEGER NOT NULL DEFAULT 0,
FKFAFIBU INTEGER NOT NULL DEFAULT 0,
MANUMMER CHAR(10) NOT NULL DEFAULT ' ',
MAUEBERID INTEGER NOT NULL DEFAULT 0,
MAUEBERNR CHAR(10) NOT NULL DEFAULT ' ',
MAHAUPTID INTEGER NOT NULL DEFAULT 0,
MAHAUPTNR CHAR(10) NOT NULL DEFAULT ' ',
MASTATUS INTEGER NOT NULL DEFAULT 0,
MAHAUPTSTATUS SMALLINT NOT NULL DEFAULT 0,
MAART INTEGER NOT NULL DEFAULT 0,
MASTUFE SMALLINT NOT NULL DEFAULT 0,
MAAUSZAHLSTOP SMALLINT NOT NULL DEFAULT 0,
MAEINTRITT DATE NOT NULL DEFAULT DATE,
MAAUSTRITT DATE NOT NULL DEFAULT DATE,
MAAUSTRITTGRUND INTEGER NOT NULL DEFAULT 0,
MACHECK SMALLINT NOT NULL DEFAULT 0,
MACHANGE SMALLINT NOT NULL DEFAULT 0,
CONSTRAINT P_PKMA01 PRIMARY KEY (MANDANT, ID, HISTNR)
);
and there are 4 rows in tbmamitarbeiter.
thanks a lot
Andreas Reetz
Dipl. Inf. Andreas Reetz
Fabis IT Systeme Phone: 0951 98046-103
Otto Str.15 Fax: 0951 98046-150
96047 Bamberg Email: [EMAIL PROTECTED]
Germany
_______________________________________________
sapdb.general mailing list
[EMAIL PROTECTED]
http://listserv.sap.com/mailman/listinfo/sapdb.general