Whenever I try and run the StatementTest group in NUnit I get the
following error message:

IBatisNet.DataMapper.Test.NUnit.SqlMapTests.StatementTest.TestCustomTypeHandler
: IBatisNet.Common.Exceptions.IBatisNetException : Unable to execute
the sql: other-init.sql
  ----> ByteFX.Data.MySqlClient.MySqlException : Can't find file:
'.\ibatisnet\c.frm' (errno: 13)

'ibatisnet' is the name of the table in MySql, not a file path relating
to the IBatisNet source code.

If I comment out this line from StatementTest:

 InitScript(sqlMap.DataSource, ScriptDirectory + "other-init.sql");

All the tests pass except for the one or two that rely on
other-init.sql.

When I try to run other-init.sql from a mysql prompt the file starts
out ok:

 mysql> use IBatisNet;
 Database changed
 mysql>
 mysql> drop table if exists Others;
 Query OK, 0 rows affected (0.03 sec)
 
 mysql> drop table if exists A;
 Query OK, 0 rows affected, 1 warning (0.00 sec)
 
 mysql> drop table if exists B;
 Query OK, 0 rows affected, 1 warning (0.00 sec)
 
 mysql> drop table if exists C;
 Query OK, 0 rows affected, 1 warning (0.00 sec)
 
 mysql> drop table if exists D;
 Query OK, 0 rows affected (0.05 sec)

 mysql> drop table if exists E;
 Query OK, 0 rows affected (0.04 sec)
 
 mysql> drop table if exists F;
 Query OK, 0 rows affected (0.04 sec)

But eventually I see the same error that I see in NUnit:

 mysql>
 mysql> CREATE TABLE C (
     ->  ID varchar(50) NOT MULL ,
     ->  C_Libelle varchar(50) NULL ,
     ->    primary key (ID)
     -> ) TYPE=INNODB;
 ERROR 1017 (HY000): Can't find file: '.\ibatisnet\c.frm' (errno: 13)

The statement after that is executed fine:

 mysql> CREATE TABLE B (
     ->  ID varchar(50) NOT NULL ,
     ->  C_ID varchar(50) NULL ,
     ->  D_ID varchar(50) NULL ,
     ->  B_Libelle varchar(50) NULL ,
     ->    primary key (ID)
     -> ) TYPE=INNODB;
 Query OK, 0 rows affected, 1 warning (0.09 sec)

If I change the names of the tables from:
 
 A, B, C, D, etc.

to:

 AA, BB, CC, DD, etc.

everything works fine. Could it be that those table names are reserved?

I'm using MySql 4.1.14-nt on a Windows Home machine.

Could someone else running MySql 4.1 run these commands and report
their output:

 DROP TABLE IF EXISTS A;
 DROP TABLE IF EXISTS B;
 DROP TABLE IF EXISTS C;
 DROP TABLE IF EXISTS D;
 DROP TABLE IF EXISTS E;
 DROP TABLE IF EXISTS F;
 DROP TABLE IF EXISTS G;
 DROP TABLE IF EXISTS H;
 DROP TABLE IF EXISTS I;
 DROP TABLE IF EXISTS J;
 DROP TABLE IF EXISTS K;
 DROP TABLE IF EXISTS L;
 DROP TABLE IF EXISTS M;
 DROP TABLE IF EXISTS N;
 DROP TABLE IF EXISTS O;
 DROP TABLE IF EXISTS P;
 DROP TABLE IF EXISTS Q;
 DROP TABLE IF EXISTS R;
 DROP TABLE IF EXISTS S;
 DROP TABLE IF EXISTS T;
 DROP TABLE IF EXISTS U;
 DROP TABLE IF EXISTS V;
 DROP TABLE IF EXISTS W;
 DROP TABLE IF EXISTS X;
 DROP TABLE IF EXISTS Y;
 DROP TABLE IF EXISTS Z;

 CREATE TABLE A (ID varchar(50) NOT NULL);
 CREATE TABLE B (ID varchar(50) NOT NULL);
 CREATE TABLE C (ID varchar(50) NOT NULL);
 CREATE TABLE D (ID varchar(50) NOT NULL);
 CREATE TABLE E (ID varchar(50) NOT NULL);
 CREATE TABLE F (ID varchar(50) NOT NULL);
 CREATE TABLE G (ID varchar(50) NOT NULL);
 CREATE TABLE H (ID varchar(50) NOT NULL);
 CREATE TABLE I (ID varchar(50) NOT NULL);
 CREATE TABLE J (ID varchar(50) NOT NULL);
 CREATE TABLE K (ID varchar(50) NOT NULL);
 CREATE TABLE L (ID varchar(50) NOT NULL);
 CREATE TABLE M (ID varchar(50) NOT NULL);
 CREATE TABLE N (ID varchar(50) NOT NULL);
 CREATE TABLE O (ID varchar(50) NOT NULL);
 CREATE TABLE P (ID varchar(50) NOT NULL);
 CREATE TABLE Q (ID varchar(50) NOT NULL);
 CREATE TABLE S (ID varchar(50) NOT NULL);
 CREATE TABLE R (ID varchar(50) NOT NULL);
 CREATE TABLE T (ID varchar(50) NOT NULL);
 CREATE TABLE U (ID varchar(50) NOT NULL);
 CREATE TABLE V (ID varchar(50) NOT NULL);
 CREATE TABLE W (ID varchar(50) NOT NULL);
 CREATE TABLE X (ID varchar(50) NOT NULL);
 CREATE TABLE Y (ID varchar(50) NOT NULL);
 CREATE TABLE Z (ID varchar(50) NOT NULL);

I was able to create most of the tables ok but I wasn't able to create
the tables mentioned in the subject:

 mysql> CREATE TABLE K (ID varchar(50) NOT NULL);
 Query OK, 0 rows affected (0.18 sec)

 mysql> CREATE TABLE L (ID varchar(50) NOT NULL);
 ERROR 1017 (HY000): Can't find file: '.\ibatisnet\l.frm' (errno: 13)

 mysql> CREATE TABLE M (ID varchar(50) NOT NULL);
 Query OK, 0 rows affected (0.08 sec)

Thanks,
Ron

Reply via email to