You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-commits@db.apache.org by fu...@apache.org on 2005/02/02 06:47:09 UTC
svn commit: r149487 [3/3] - in
incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests:
master/DerbyNet/LOBTest.out master/DerbyNet/ieptests.out
master/DerbyNet/importExport.out suites/derbynetmats.properties
suites/derbynetmats.runall suites/j9derbynetmats.properties
suites/j9derbynetmats.runall
Added: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/ieptests.out
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/ieptests.out?view=auto&rev=149487
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/ieptests.out (added)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/ieptests.out Tue Feb 1 21:47:06 2005
@@ -0,0 +1,721 @@
+ij> --table used for export
+create table ex_emp(id int , name char(7) , skills varchar(200), salary decimal(10,2)) ;
+0 rows inserted/updated/deleted
+ij> --table used for import
+create table imp_emp(id int , name char(7), skills varchar(200), salary decimal(10,2)) ;
+0 rows inserted/updated/deleted
+ij> --After an export from ex_emp and import to imp_emp both tables should have
+-----same data.
+-----double delimter cases with default character delimter "
+-----field seperator character inside a double delimited string as first line
+insert into ex_emp values(99, 'smith' , 'tennis"p,l,ayer"', 190.55) ;
+1 row inserted/updated/deleted
+ij> -- Perform Export:
+call SYSCS_UTIL.SYSCS_EXPORT_TABLE (null, 'ex_emp' , 'extinout/emp.dat' ,
+ null, null, null) ;
+Statement executed.
+ij> -- Perform Import
+call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 'imp_emp' , 'extinout/emp.dat' ,
+ null, null, null, 0) ;
+Statement executed.
+ij> insert into ex_emp values(100, 'smith' , 'tennis"player"', 190.55) ;
+1 row inserted/updated/deleted
+ij> insert into ex_emp values(101, 'smith' , 'tennis"player', 190.55) ;
+1 row inserted/updated/deleted
+ij> insert into ex_emp values(102, 'smith' , '"tennis"player', 190.55) ;
+1 row inserted/updated/deleted
+ij> insert into ex_emp values(103, 'smith' , '"tennis"player"', 190.55) ;
+1 row inserted/updated/deleted
+ij> insert into ex_emp values(104, 'smith' , '"tennis"""""""""""""""""""""""""""""""""""""player"', null) ;
+1 row inserted/updated/deleted
+ij> --empty string
+insert into ex_emp values(105, 'smith' , '""', 190.55) ;
+1 row inserted/updated/deleted
+ij> --just delimeter inside
+insert into ex_emp values(106, 'smith' , '"""""""""""""""""""', 190.55);
+1 row inserted/updated/deleted
+ij> --null value
+insert into ex_emp values(107, 'smith"' , null, 190.55) ;
+1 row inserted/updated/deleted
+ij> --all values are nulls
+insert into ex_emp values(108, null , null, null) ;
+1 row inserted/updated/deleted
+ij> -- Perform Export:
+call SYSCS_UTIL.SYSCS_EXPORT_TABLE (null, 'ex_emp' , 'extinout/emp.dat' ,
+ null, null, null) ;
+Statement executed.
+ij> -- Perform Import
+call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 'imp_emp' , 'extinout/emp.dat' ,
+ null, null, null, 0) ;
+Statement executed.
+ij> select * from ex_emp;
+ID |NAME |SKILLS |SALARY
+-----
+99 |smith |tennis"p,l,ayer" |190.55
+100 |smith |tennis"player" |190.55
+101 |smith |tennis"player |190.55
+102 |smith |"tennis"player |190.55
+103 |smith |"tennis"player" |190.55
+104 |smith |"tennis"""""""""""""""""""""""""""""""""""""player" |NULL
+105 |smith |"" |190.55
+106 |smith |""""""""""""""""""" |190.55
+107 |smith" |NULL |190.55
+108 |NULL |NULL |NULL
+ij> select * from imp_emp;
+ID |NAME |SKILLS |SALARY
+-----
+99 |smith |tennis"p,l,ayer" |190.55
+99 |smith |tennis"p,l,ayer" |190.55
+100 |smith |tennis"player" |190.55
+101 |smith |tennis"player |190.55
+102 |smith |"tennis"player |190.55
+103 |smith |"tennis"player" |190.55
+104 |smith |"tennis"""""""""""""""""""""""""""""""""""""player" |NULL
+105 |smith |"" |190.55
+106 |smith |""""""""""""""""""" |190.55
+107 |smith" |NULL |190.55
+108 |NULL |NULL |NULL
+ij> --checking query
+select count(*) from imp_emp, ex_emp
+ where ex_emp.id = imp_emp.id and
+ (ex_emp.skills=imp_emp.skills or
+ (ex_emp.skills is NULL and imp_emp.skills is NULL));
+1
+-----
+11
+ij> delete from imp_emp where id < 105;
+7 rows inserted/updated/deleted
+ij> --export from ex_emp using the a query only rows that got deleted in imp_emp
+call SYSCS_UTIL.SYSCS_EXPORT_QUERY('select * from ex_emp where id < 105',
+ 'extinout/emp.dat' , null, null, null) ;
+Statement executed.
+ij> call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 'imp_emp' , 'extinout/emp.dat' ,
+ null, null, null, 0) ;
+Statement executed.
+ij> --checking query
+select count(*) from imp_emp, ex_emp
+ where ex_emp.id = imp_emp.id and
+ (ex_emp.skills=imp_emp.skills or
+ (ex_emp.skills is NULL and imp_emp.skills is NULL));
+1
+-----
+10
+ij> --export the columns in different column order than in the table.
+call SYSCS_UTIL.SYSCS_EXPORT_QUERY('select name , salary , skills, id from ex_emp where id < 105',
+ 'extinout/emp.dat' , null, null, null) ;
+Statement executed.
+ij> -- import them in to a with order different than in the table;
+call SYSCS_UTIL.SYSCS_IMPORT_DATA(null, 'imp_emp' ,'name, salary, skills, id', null,
+ 'extinout/emp.dat', null, null, null, 1) ;
+Statement executed.
+ij> --check query
+select count(*) from imp_emp, ex_emp
+ where ex_emp.id = imp_emp.id and
+ (ex_emp.skills=imp_emp.skills or
+ (ex_emp.skills is NULL and imp_emp.skills is NULL));
+1
+-----
+6
+ij> -- do import replace into the table with table order but using column indexes
+call SYSCS_UTIL.SYSCS_IMPORT_DATA(null, 'imp_emp' ,null, '4, 1, 3, 2',
+ 'extinout/emp.dat', null, null, null, 1) ;
+Statement executed.
+ij> --check query
+select count(*) from imp_emp, ex_emp
+ where ex_emp.id = imp_emp.id and
+ (ex_emp.skills=imp_emp.skills or
+ (ex_emp.skills is NULL and imp_emp.skills is NULL));
+1
+-----
+6
+ij> --replace using insert column names and column indexes
+call SYSCS_UTIL.SYSCS_IMPORT_DATA(null, 'imp_emp' ,'salary, id, skills, name', '2, 4, 3, 1',
+ 'extinout/emp.dat', null, null, null, 1) ;
+Statement executed.
+ij> --check query
+select count(*) from imp_emp, ex_emp
+ where ex_emp.id = imp_emp.id and
+ (ex_emp.skills=imp_emp.skills or
+ (ex_emp.skills is NULL and imp_emp.skills is NULL));
+1
+-----
+6
+ij> ---testing with different delimiters
+----- single quote(') as character delimiter
+call SYSCS_UTIL.SYSCS_EXPORT_TABLE (null, 'ex_emp' , 'extinout/emp.dat' ,
+ null, '''', null) ;
+Statement executed.
+ij> call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 'imp_emp' , 'extinout/emp.dat' ,
+ null, '''', null, 1) ;
+Statement executed.
+ij> select * from imp_emp ;
+ID |NAME |SKILLS |SALARY
+-----
+99 |smith |tennis"p,l,ayer" |190.55
+100 |smith |tennis"player" |190.55
+101 |smith |tennis"player |190.55
+102 |smith |"tennis"player |190.55
+103 |smith |"tennis"player" |190.55
+104 |smith |"tennis"""""""""""""""""""""""""""""""""""""player" |NULL
+105 |smith |"" |190.55
+106 |smith |""""""""""""""""""" |190.55
+107 |smith" |NULL |190.55
+108 |NULL |NULL |NULL
+ij> -- single quote(') as column delimiter
+call SYSCS_UTIL.SYSCS_EXPORT_TABLE (null, 'ex_emp' , 'extinout/emp.dat' ,
+ '''',null, null) ;
+Statement executed.
+ij> delete from imp_emp ;
+10 rows inserted/updated/deleted
+ij> call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 'imp_emp' , 'extinout/emp.dat' ,
+ '''', null, null, 0) ;
+Statement executed.
+ij> select * from imp_emp;
+ID |NAME |SKILLS |SALARY
+-----
+99 |smith |tennis"p,l,ayer" |190.55
+100 |smith |tennis"player" |190.55
+101 |smith |tennis"player |190.55
+102 |smith |"tennis"player |190.55
+103 |smith |"tennis"player" |190.55
+104 |smith |"tennis"""""""""""""""""""""""""""""""""""""player" |NULL
+105 |smith |"" |190.55
+106 |smith |""""""""""""""""""" |190.55
+107 |smith" |NULL |190.55
+108 |NULL |NULL |NULL
+ij> call SYSCS_UTIL.SYSCS_EXPORT_TABLE (null, 'ex_emp' , 'extinout/emp.dat' ,
+ '*', '%', null) ;
+Statement executed.
+ij> call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 'ex_emp' , 'extinout/emp.dat' ,
+ '*', '%', null, 1) ;
+Statement executed.
+ij> select * from imp_emp ;
+ID |NAME |SKILLS |SALARY
+-----
+99 |smith |tennis"p,l,ayer" |190.55
+100 |smith |tennis"player" |190.55
+101 |smith |tennis"player |190.55
+102 |smith |"tennis"player |190.55
+103 |smith |"tennis"player" |190.55
+104 |smith |"tennis"""""""""""""""""""""""""""""""""""""player" |NULL
+105 |smith |"" |190.55
+106 |smith |""""""""""""""""""" |190.55
+107 |smith" |NULL |190.55
+108 |NULL |NULL |NULL
+ij> --cases for identity columns
+-----create table emp1(id int generated always as identity (start with 100), name char(7),
+----- skills varchar(200), salary decimal(10,2),skills varchar(200));
+-----check import export with real and double that can not be explictitly
+-----casted from VARCHAR type .
+create table noncast(c1 double , c2 real ) ;
+0 rows inserted/updated/deleted
+ij> insert into noncast values(1.5 , 6.7 ) ;
+1 row inserted/updated/deleted
+ij> insert into noncast values(2.5 , 8.999) ;
+1 row inserted/updated/deleted
+ij> call SYSCS_UTIL.SYSCS_EXPORT_TABLE ('APP' , 'noncast' , 'extinout/noncast.dat' , null , null , null) ;
+Statement executed.
+ij> call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 'noncast' , 'extinout/noncast.dat' , null , null , null , 0) ;
+Statement executed.
+ij> call SYSCS_UTIL.SYSCS_IMPORT_DATA(null, 'noncast', 'c2 , c1' , '2, 1' ,
+ 'extinout/noncast.dat' , null , null , null , 0) ;
+Statement executed.
+ij> select * from noncast ;
+C1 |C2
+-----
+1.5 |6.7
+2.5 |8.999
+1.5 |6.7
+2.5 |8.999
+1.5 |6.7
+2.5 |8.999
+ij> --check import/export of time types
+CREATE TABLE TTYPES(DATETYPE DATE, TIMETYPE TIME, TSTAMPTYPE TIMESTAMP );
+0 rows inserted/updated/deleted
+ij> insert into ttypes values('1999-09-09' , '12:15:19' , 'xxxxxxFILTERED-TIMESTAMPxxxxx);
+1 row inserted/updated/deleted
+ij> insert into ttypes values('2999-12-01' , '13:16:10' , 'xxxxxxFILTERED-TIMESTAMPxxxxx);
+1 row inserted/updated/deleted
+ij> insert into ttypes values('3000-11-02' , '14:17:21' , 'xxxxxxFILTERED-TIMESTAMPxxxxx);
+1 row inserted/updated/deleted
+ij> insert into ttypes values('2004-04-03' , '15:18:31' , 'xxxxxxFILTERED-TIMESTAMPxxxxx);
+1 row inserted/updated/deleted
+ij> insert into ttypes values(null , null , null);
+1 row inserted/updated/deleted
+ij> call SYSCS_UTIL.SYSCS_EXPORT_TABLE (null, 'ttypes' , 'extinout/ttypes.del' ,
+ null, null, null) ;
+Statement executed.
+ij> call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 'ttypes' , 'extinout/ttypes.del' ,
+ null, null, null, 0) ;
+Statement executed.
+ij> select * from ttypes;
+DATETYPE |TIMETYPE |TSTAMPTYPE
+-----
+1999-09-09 |12:15:19 |xxxxxxFILTERED-TIMESTAMPxxxxx
+2999-12-01 |13:16:10 |xxxxxxFILTERED-TIMESTAMPxxxxx
+3000-11-02 |14:17:21 |xxxxxxFILTERED-TIMESTAMPxxxxx
+2004-04-03 |15:18:31 |xxxxxxFILTERED-TIMESTAMPxxxxx
+NULL |NULL |NULL
+1999-09-09 |12:15:19 |xxxxxxFILTERED-TIMESTAMPxxxxx
+2999-12-01 |13:16:10 |xxxxxxFILTERED-TIMESTAMPxxxxx
+3000-11-02 |14:17:21 |xxxxxxFILTERED-TIMESTAMPxxxxx
+2004-04-03 |15:18:31 |xxxxxxFILTERED-TIMESTAMPxxxxx
+NULL |NULL |NULL
+ij> ---Import should commit on success and rollback on any failures
+autocommit off ;
+ij> create table t1(a int ) ;
+0 rows inserted/updated/deleted
+ij> insert into t1 values(1) ;
+1 row inserted/updated/deleted
+ij> insert into t1 values(2) ;
+1 row inserted/updated/deleted
+ij> call SYSCS_UTIL.SYSCS_EXPORT_TABLE (null, 't1' , 'extinout/t1.del' ,
+ null, null, null) ;
+Statement executed.
+ij> call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 't1' , 'extinout/t1.del' ,
+ null, null, null, 0) ;
+Statement executed.
+ij> --above import should have committed , following rollback should be a noop.
+rollback;
+ij> select * from t1;
+A
+-----
+1
+2
+1
+2
+ij> insert into t1 values(3) ;
+1 row inserted/updated/deleted
+ij> insert into t1 values(4) ;
+1 row inserted/updated/deleted
+ij> --file not found error should rollback
+call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 't1' , 'extinout/nofile.del' ,
+ null, null, null, 0) ;
+ERROR 38000: The exception 'SQL Exception: The exception 'java.lang.reflect.InvocationTargetException' was thrown while evaluating an expression.' was thrown while evaluating an expression. SQLSTATE: 38000: The exception 'java.lang.reflect.InvocationTargetException' was thrown while evaluating an expression. SQLSTATE: XJ001: Java exception: ': java.lang.reflect.InvocationTargetException'. SQLSTATE: XIE04: Data file not found: extinout/nofile.del
+ij> commit;
+ij> select * from t1 ;
+A
+-----
+1
+2
+1
+2
+ij> insert into t1 values(3) ;
+1 row inserted/updated/deleted
+ij> insert into t1 values(4) ;
+1 row inserted/updated/deleted
+ij> --table not found error should issue a implicit rollback
+call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 'notable' , 'extinout/t1.del' ,
+ null, null, null, 0) ;
+ERROR XIE0M: Table 'NOTABLE' does not exist.
+ij> commit ;
+ij> select * from t1 ;
+A
+-----
+1
+2
+1
+2
+ij> delete from t1;
+4 rows inserted/updated/deleted
+ij> ---check commit/rollback with replace options using
+insert into t1 values(1) ;
+1 row inserted/updated/deleted
+ij> insert into t1 values(2) ;
+1 row inserted/updated/deleted
+ij> call SYSCS_UTIL.SYSCS_EXPORT_TABLE (null, 't1' , 'extinout/t1.del' ,
+ null, null, null) ;
+Statement executed.
+ij> --above export should have a commit.rollback below should be a noop
+rollback;
+ij> select * from t1;
+A
+-----
+1
+2
+ij> call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 't1' , 'extinout/t1.del' ,
+ null, null, null, 1) ;
+Statement executed.
+ij> --above import should have committed , following rollback should be a noop.
+rollback;
+ij> select * from t1;
+A
+-----
+1
+2
+ij> insert into t1 values(3) ;
+1 row inserted/updated/deleted
+ij> insert into t1 values(4) ;
+1 row inserted/updated/deleted
+ij> --file not found error should rollback
+call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 't1' , 'extinout/nofile.del' ,
+ null, null, null, 1) ;
+ERROR 38000: The exception 'SQL Exception: The exception 'java.lang.reflect.InvocationTargetException' was thrown while evaluating an expression.' was thrown while evaluating an expression. SQLSTATE: 38000: The exception 'java.lang.reflect.InvocationTargetException' was thrown while evaluating an expression. SQLSTATE: XJ001: Java exception: ': java.lang.reflect.InvocationTargetException'. SQLSTATE: XIE04: Data file not found: extinout/nofile.del
+ij> commit;
+ij> select * from t1 ;
+A
+-----
+1
+2
+ij> insert into t1 values(3) ;
+1 row inserted/updated/deleted
+ij> insert into t1 values(4) ;
+1 row inserted/updated/deleted
+ij> --table not found error should issue a implicit rollback
+call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 'notable' , 'extinout/t1.del' ,
+ null, null, null, 1) ;
+ERROR XIE0M: Table 'NOTABLE' does not exist.
+ij> commit ;
+ij> ---check IMPORT_DATA calls commit/rollback
+select * from t1 ;
+A
+-----
+1
+2
+ij> delete from t1;
+2 rows inserted/updated/deleted
+ij> ---check commit/rollback with replace options using
+insert into t1 values(1) ;
+1 row inserted/updated/deleted
+ij> insert into t1 values(2) ;
+1 row inserted/updated/deleted
+ij> call SYSCS_UTIL.SYSCS_EXPORT_TABLE (null, 't1' , 'extinout/t1.del' ,
+ null, null, null) ;
+Statement executed.
+ij> call SYSCS_UTIL.SYSCS_IMPORT_DATA(null, 't1' , 'a' , '1' , 'extinout/t1.del' ,
+ null, null, null, 0) ;
+Statement executed.
+ij> --above import should have committed , following rollback should be a noop.
+rollback;
+ij> select * from t1;
+A
+-----
+1
+2
+1
+2
+ij> insert into t1 values(3) ;
+1 row inserted/updated/deleted
+ij> insert into t1 values(4) ;
+1 row inserted/updated/deleted
+ij> --file not found error should rollback
+call SYSCS_UTIL.SYSCS_IMPORT_DATA(null, 't1', 'a' , '1' , 'extinout/nofile.del' ,
+ null, null, null, 0) ;
+ERROR 38000: The exception 'SQL Exception: The exception 'java.lang.reflect.InvocationTargetException' was thrown while evaluating an expression.' was thrown while evaluating an expression. SQLSTATE: 38000: The exception 'java.lang.reflect.InvocationTargetException' was thrown while evaluating an expression. SQLSTATE: XJ001: Java exception: ': java.lang.reflect.InvocationTargetException'. SQLSTATE: XIE04: Data file not found: extinout/nofile.del
+ij> commit;
+ij> select * from t1 ;
+A
+-----
+1
+2
+1
+2
+ij> insert into t1 values(3) ;
+1 row inserted/updated/deleted
+ij> insert into t1 values(4) ;
+1 row inserted/updated/deleted
+ij> --table not found error should issue a implicit rollback
+call SYSCS_UTIL.SYSCS_IMPORT_DATA(null, 'notable' , 'a' , '1', 'extinout/t1.del' ,
+ null, null, null, 1) ;
+ERROR XIE0M: Table 'NOTABLE' does not exist.
+ij> commit ;
+ij> select * from t1 ;
+A
+-----
+1
+2
+1
+2
+ij> autocommit on ;
+ij> --make sure commit import code is ok in autcommit mode.
+insert into t1 values(3) ;
+1 row inserted/updated/deleted
+ij> insert into t1 values(4) ;
+1 row inserted/updated/deleted
+ij> call SYSCS_UTIL.SYSCS_IMPORT_DATA(null, 't1' , 'a' , '1' , 'extinout/t1.del' ,
+ null, null, null, 0) ;
+Statement executed.
+ij> select * from t1 ;
+A
+-----
+1
+2
+1
+2
+3
+4
+1
+2
+ij> insert into t1 values(5) ;
+1 row inserted/updated/deleted
+ij> insert into t1 values(6) ;
+1 row inserted/updated/deleted
+ij> --following import will back , but should not have any impact on inserts
+call SYSCS_UTIL.SYSCS_IMPORT_DATA(null, 't1', 'a' , '1' , 'extinout/nofile.del' ,
+ null, null, null, 0) ;
+ERROR 38000: The exception 'SQL Exception: The exception 'java.lang.reflect.InvocationTargetException' was thrown while evaluating an expression.' was thrown while evaluating an expression. SQLSTATE: 38000: The exception 'java.lang.reflect.InvocationTargetException' was thrown while evaluating an expression. SQLSTATE: XJ001: Java exception: ': java.lang.reflect.InvocationTargetException'. SQLSTATE: XIE04: Data file not found: extinout/nofile.del
+ij> select * from t1 ;
+A
+-----
+1
+2
+1
+2
+3
+4
+1
+2
+5
+6
+ij> --END IMPORT COMMIT/ROLLBACK TESTSING
+-----all types supported by DB2 cloudscape import/export
+create table alltypes(chartype char(20) ,
+ biginttype bigint ,
+ datetype date ,
+ decimaltype decimal(10,5) ,
+ doubletype double ,
+ inttype integer ,
+ lvartype long varchar ,
+ realtype real ,
+ sminttype smallint ,
+ timetype time ,
+ tstamptype timestamp ,
+ vartype varchar(50));
+0 rows inserted/updated/deleted
+ij> insert into alltypes values('chartype string' ,
+ 9223372036854775807,
+ '1993-10-29' ,
+ 12345.54321,
+ 10E307,
+ 2147483647,
+ 'long varchar testing',
+ 10E3,
+ 32767,
+ '09.39.43',
+ 'xxxxxxFILTERED-TIMESTAMPxxxxx,
+ 'varchar testing');
+1 row inserted/updated/deleted
+ij> insert into alltypes values('chartype string' ,
+ -9223372036854775808,
+ '1993-10-29' ,
+ 0.0,
+ -10E307,
+ -2147483647,
+ 'long varchar testing',
+ -10E3,
+ 32767,
+ '09.39.43',
+ 'xxxxxxFILTERED-TIMESTAMPxxxxx,
+ 'varchar testing');
+1 row inserted/updated/deleted
+ij> insert into alltypes values('"chartype" string' ,
+ 9223372036854775807,
+ '1993-10-29' ,
+ -12345.54321,
+ 10E307,
+ 2147483647,
+ 'long "varchar" testing',
+ 10E3,
+ 32767,
+ '09.39.43',
+ 'xxxxxxFILTERED-TIMESTAMPxxxxx,
+ '"varchar" testing');
+1 row inserted/updated/deleted
+ij> call SYSCS_UTIL.SYSCS_EXPORT_TABLE (null, 'alltypes' , 'extinout/alltypes.del' ,
+ null, null, null) ;
+Statement executed.
+ij> call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 'alltypes' , 'extinout/alltypes.del' ,
+ null, null, null, 0) ;
+Statement executed.
+ij> select * from alltypes ;
+CHARTYPE |BIGINTTYPE |DATETYPE |DECIMALTYPE |DOUBLETYPE |INTTYPE |LVARTYPE |REALTYPE |SMINT& |TIMETYPE |TSTAMPTYPE |VARTYPE
+-----
+chartype string |9223372036854775807 |1993-10-29 |12345.54321 |1.0E308 |2147483647 |long varchar testing |10000.0 |32767 |09:39:43 |xxxxxxFILTERED-TIMESTAMPxxxxx |varchar testing
+chartype string |-9223372036854775808 |1993-10-29 |0.00000 |-1.0E308 |-2147483647 |long varchar testing |-10000.0 |32767 |09:39:43 |xxxxxxFILTERED-TIMESTAMPxxxxx |varchar testing
+"chartype" string |9223372036854775807 |1993-10-29 |-12345.54321 |1.0E308 |2147483647 |long "varchar" testing |10000.0 |32767 |09:39:43 |xxxxxxFILTERED-TIMESTAMPxxxxx |"varchar" testing
+chartype string |9223372036854775807 |1993-10-29 |12345.54321 |1.0E308 |2147483647 |long varchar testing |10000.0 |32767 |09:39:43 |xxxxxxFILTERED-TIMESTAMPxxxxx |varchar testing
+chartype string |-9223372036854775808 |1993-10-29 |0.00000 |-1.0E308 |-2147483647 |long varchar testing |-10000.0 |32767 |09:39:43 |xxxxxxFILTERED-TIMESTAMPxxxxx |varchar testing
+"chartype" string |9223372036854775807 |1993-10-29 |-12345.54321 |1.0E308 |2147483647 |long "varchar" testing |10000.0 |32767 |09:39:43 |xxxxxxFILTERED-TIMESTAMPxxxxx |"varchar" testing
+ij> delete from alltypes;
+6 rows inserted/updated/deleted
+ij> --import should work with trigger enabled on append and should not work on replace
+create table test1(a char(20)) ;
+0 rows inserted/updated/deleted
+ij> create trigger trig_import after INSERT on alltypes
+referencing new as newrow
+for each row mode db2sql
+insert into test1 values(newrow.chartype);
+0 rows inserted/updated/deleted
+ij> call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 'alltypes' , 'extinout/alltypes.del' ,
+ null, null, null, 0) ;
+Statement executed.
+ij> select count(*) from alltypes ;
+1
+-----
+3
+ij> select * from test1;
+A
+-----
+chartype string
+chartype string
+"chartype" string
+ij> delete from alltypes;
+3 rows inserted/updated/deleted
+ij> call SYSCS_UTIL.SYSCS_IMPORT_TABLE (null, 'alltypes' , 'extinout/alltypes.del' ,
+ null, null, null, 1) ;
+ERROR 38000: The exception 'SQL Exception: Bulk insert replace is not permitted on 'APP.ALLTYPES' because it has an enabled trigger (TRIG_IMPORT).' was thrown while evaluating an expression. SQLSTATE: 42Z08: Bulk insert replace is not permitted on 'APP.ALLTYPES' because it has an enabled trigger (TRIG_IMPORT).
+ij> select count(*) from alltypes;
+1
+-----
+0
+ij> drop trigger trig_import;
+0 rows inserted/updated/deleted
+ij> drop table test1;
+0 rows inserted/updated/deleted
+ij> --test importing to identity columns
+create table table1(c1 char(30),
+ c2 int generated always as identity,
+ c3 real,
+ c4 char(1));
+0 rows inserted/updated/deleted
+ij> create table table2(c1 char(30),
+ c2 int,
+ c3 real,
+ c4 char(1));
+0 rows inserted/updated/deleted
+ij> insert into table2 values('Robert',100, 45.2, 'J');
+1 row inserted/updated/deleted
+ij> insert into table2 values('Mike',101, 76.9, 'K');
+1 row inserted/updated/deleted
+ij> insert into table2 values('Leo',102, 23.4, 'I');
+1 row inserted/updated/deleted
+ij> call SYSCS_UTIL.SYSCS_EXPORT_QUERY('select c1,c3,c4 from table2' , 'extinout/import.del' ,
+ null, null, null) ;
+Statement executed.
+ij> CALL SYSCS_UTIL.SYSCS_IMPORT_DATA(NULL,'table1', 'c1,c3,c4' , null, 'extinout/import.del',null, null,null,0);
+Statement executed.
+ij> select * from table1;
+C1 |C2 |C3 |C4
+-----
+Robert |1 |45.2 |J
+Mike |2 |76.9 |K
+Leo |3 |23.4 |I
+ij> delete from table1;
+3 rows inserted/updated/deleted
+ij> call SYSCS_UTIL.SYSCS_EXPORT_TABLE(null , 'table2' , 'extinout/import.del', null, null, null) ;
+Statement executed.
+ij> --following import should fail becuase of inserting into identity column.
+CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE(NULL, 'table1', 'extinout/import.del',null, null, null,1);
+ERROR 38000: The exception 'SQL Exception: Attempt to modify an identity column 'C2'.' was thrown while evaluating an expression. SQLSTATE: 42Z23: Attempt to modify an identity column 'C2'.
+ij> --following import should be succesful
+CALL SYSCS_UTIL.SYSCS_IMPORT_DATA(NULL, 'table1', 'c1,c3,c4' , '1,3,4', 'extinout/import.del',null, null, null,1);
+Statement executed.
+ij> select * from table1;
+C1 |C2 |C3 |C4
+-----
+Robert |1 |45.2 |J
+Mike |2 |76.9 |K
+Leo |3 |23.4 |I
+ij> update table2 set c2=null;
+3 rows inserted/updated/deleted
+ij> --check null values import to identity columns should also fail
+call SYSCS_UTIL.SYSCS_EXPORT_TABLE(null , 'table2' , 'extinout/import.del' ,
+ null, null, null) ;
+Statement executed.
+ij> CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE(NULL, 'table1', 'extinout/import.del',null, null, null,1);
+ERROR 38000: The exception 'SQL Exception: Attempt to modify an identity column 'C2'.' was thrown while evaluating an expression. SQLSTATE: 42Z23: Attempt to modify an identity column 'C2'.
+ij> select * from table1;
+C1 |C2 |C3 |C4
+-----
+Robert |1 |45.2 |J
+Mike |2 |76.9 |K
+Leo |3 |23.4 |I
+ij> --check that replace fails when there dependents and replaced data
+-----does not violate foreign key constraints.
+create table parent(a int not null primary key);
+0 rows inserted/updated/deleted
+ij> insert into parent values (1) , (2) , (3) , (4) ;
+4 rows inserted/updated/deleted
+ij> create table child(b int references parent(a));
+0 rows inserted/updated/deleted
+ij> insert into child values (1) , (2) , (3) , (4) ;
+4 rows inserted/updated/deleted
+ij> call SYSCS_UTIL.SYSCS_EXPORT_QUERY('select * from parent where a < 3' , 'extinout/parent.del' ,
+ null, null, null) ;
+Statement executed.
+ij> --replace should fail because of dependent table
+CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE(NULL, 'parent', 'extinout/parent.del',null, null, null,1);
+ERROR 38000: The exception 'SQL Exception: INSERT on table 'PARENT' caused a violation of foreign key constraint 'xxxxGENERATED-IDxxxx' for key (3). The statement has been rolled back.' was thrown while evaluating an expression. SQLSTATE: 23503: INSERT on table 'PARENT' caused a violation of foreign key constraint 'xxxxGENERATED-IDxxxx' for key (3). The statement has been rolled back.
+ij> select * from parent;
+A
+-----
+1
+2
+3
+4
+ij> ---test with a file which has a differen records seperators (\n, \r , \r\n)
+create table nt1( a int , b char(30));
+0 rows inserted/updated/deleted
+ij> CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE(NULL, 'nt1', 'extin/mixednl.del',null, null, null,0);
+Statement executed.
+ij> select * from nt1;
+A |B
+-----
+0 |XXXXXX0
+1 |XXXXXX1
+2 |XXXXXX2
+3 |XXXXXX3
+4 |XXXXXX4
+5 |YYYYY5
+6 |YYYYY6
+7 |YYYYY7
+8 |YYYYY8
+9 |YYYYY9
+10 |ZZZZZZ10
+11 |ZZZZZZ11
+12 |ZZZZZZ12
+13 |ZZZZZZ13
+14 |ZZZZZZ14
+ij> drop table nt1 ;
+0 rows inserted/updated/deleted
+ij> --test case for bug 5977;(with lot of text data)
+create table position_info
+ (
+ position_code varchar(10) not null ,
+ literal_no int not null ,
+ job_category_code varchar(10),
+ summary_description long varchar,
+ detail_description long varchar,
+ web_flag varchar(1)
+ );
+0 rows inserted/updated/deleted
+ij> CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE ('APP', 'position_info', 'extin/position_info.del',
+ null, null, null, 1);
+Statement executed.
+ij> select count(*) from position_info ;
+1
+-----
+680
+ij> select detail_description from position_info where position_code='AG1000';
+DETAIL_DESCRIPTION
+-----
+Essential Duties and Responsibilities (include but not limited to):
+*Assist the director in his work activities in leading the&
+ij> CALL SYSCS_UTIL.SYSCS_EXPORT_TABLE ('APP', 'position_info', 'extinout/pinfo.del',
+ null, null, null);
+Statement executed.
+ij> delete from position_info;
+680 rows inserted/updated/deleted
+ij> CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE ('APP', 'position_info', 'extinout/pinfo.del',
+ null, null, null, 1);
+Statement executed.
+ij> select count(*) from position_info ;
+1
+-----
+680
+ij> select detail_description from position_info where position_code='AG1000';
+DETAIL_DESCRIPTION
+-----
+Essential Duties and Responsibilities (include but not limited to):
+*Assist the director in his work activities in leading the&
+ij>
Added: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/importExport.out
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/importExport.out?view=auto&rev=149487
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/importExport.out (added)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/master/DerbyNet/importExport.out Tue Feb 1 21:47:06 2005
@@ -0,0 +1,25 @@
+Test importExport starting
+testing non-existing data file
+The exception 'SQL Exception: The exception 'java.lang.reflect.InvocationTargetException' was thrown while evaluating an expression.' was thrown while evaluating an expression. SQLSTATE: 38000: The exception 'java.lang.reflect.InvocationTargetException' was thrown while evaluating an expression. SQLSTATE: XJ001: Java exception: ': java.lang.reflect.InvocationTargetException'. SQLSTATE: XIE04: Data file not found: extinout/Z.dat
+testing null data file
+The exception 'SQL Exception: The exception 'java.lang.reflect.InvocationTargetException' was thrown while evaluating an expression.' was thrown while evaluating an expression. SQLSTATE: 38000: The exception 'java.lang.reflect.InvocationTargetException' was thrown while evaluating an expression. SQLSTATE: XJ001: Java exception: ': java.lang.reflect.InvocationTargetException'. SQLSTATE: XIE05: Data file can not be null.
+testing empty table
+testing empty table with Delimited format
+testing empty table import Field/Char Delimiters
+PASS: setup complete
+testing import/export with default options
+testing IE with code set 8859_1
+testing IE with delimiter and codeset
+testing IE with delimiters(%, &) and Cp1252
+testing IE with delimiters(%, &) and UTF-16
+testing IE with delimiters(^, #) and WRONG ENCODEINGH
+Got IOException while writing data to the file
+testing datatypes that does not have Export Supprt
+Column 'C1' in the table is of type BLOB, it is not supported by import/export.
+Column 'C1' in the table is of type BLOB, it is not supported by import/export.
+The exception 'SQL Exception: Read endOfFile at unexpected place on line 2' was thrown while evaluating an expression. SQLSTATE: XIE0E: Read endOfFile at unexpected place on line 2
+PASS: finished testing import and export
+PASS: teardown complete
+PASS: finished cleaning up the temporary objects from database
+PASS
+Test importExport finished
Modified: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/derbynetmats.properties
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/derbynetmats.properties?view=diff&r1=149486&r2=149487
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/derbynetmats.properties (original)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/derbynetmats.properties Tue Feb 1 21:47:06 2005
@@ -1,5 +1,5 @@
framework=DerbyNet
-suites=derbynetmats
+suites=derbynetmats jdbcapi jdbc20
jdk12test=true
runwithj9=false
timeout=60
Modified: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/derbynetmats.runall
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/derbynetmats.runall?view=diff&r1=149486&r2=149487
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/derbynetmats.runall (original)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/derbynetmats.runall Tue Feb 1 21:47:06 2005
@@ -15,6 +15,8 @@
derbynet/testconnection.java
derbynet/testij.java
derbynet/timeslice.java
+jdbcapi/autoGeneratedJdbc30.java
+jdbcapi/dbMetaDataJdbc30.java
jdbcapi/metadata.java
jdbcapi/metadataMultiConn.java
jdbcapi/parameterMetaDataJdbc30.java
@@ -30,3 +32,5 @@
lang/wisconsin.sql
store/holdCursorExternalSortJDBC30.sql
store/holdCursorJDBC30.sql
+tools/importExport.java
+tools/ieptests.sql
Modified: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/j9derbynetmats.properties
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/j9derbynetmats.properties?view=diff&r1=149486&r2=149487
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/j9derbynetmats.properties (original)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/j9derbynetmats.properties Tue Feb 1 21:47:06 2005
@@ -1,5 +1,5 @@
framework=DerbyNet
-suites=j9derbynetmats
+suites=j9derbynetmats jdbcapi jdbc20
jdk12test=true
runwithj9=false
runwithibm13=false
Modified: incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/j9derbynetmats.runall
URL: http://svn.apache.org/viewcvs/incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/j9derbynetmats.runall?view=diff&r1=149486&r2=149487
==============================================================================
--- incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/j9derbynetmats.runall (original)
+++ incubator/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/suites/j9derbynetmats.runall Tue Feb 1 21:47:06 2005
@@ -8,16 +8,19 @@
derbynet/getCurrentProperties.java
derbynet/maxthreads.java
derbynet/prepStmt.java
+derbynet/runtimeinfo.java
derbynet/testProperties.java
derbynet/testconnection.java
derbynet/testij.java
derbynet/timeslice.java
+jdbcapi/autoGeneratedJdbc30.java
+jdbcapi/dbMetaDataJdbc30.java
jdbcapi/metadata.java
jdbcapi/metadataMultiConn.java
jdbcapi/parameterMetaDataJdbc30.java
jdbcapi/savepointJdbc30.java
lang/big.sql
-lang/bug5054.sql
+lang/bug5054.java
lang/forupdate.sql
lang/holdCursorIJ.sql
lang/holdCursorJavaReflection.java
@@ -26,3 +29,5 @@
lang/supersimple.sql
store/holdCursorExternalSortJDBC30.sql
store/holdCursorJDBC30.sql
+tools/importExport.java
+tools/ieptests.sql