MySQL Issues and fixes (ICOMP / TRX / DUMP)

Author: hansen@ahp-gmbh.de (-GHAN-)

Just to put a note here:

We had some trouble using MySQL 5.1 an often got an Error while using an INSERT statement saying "Using unsupported buffer type". It seems to be a common behavior in V5.1 at this moment (try to google it).So we used v5.0 instead which does well.

There are some issues with the Table creation Utility “ICOMP”.

----8< ----

$99 = 400 ; Create Table Utility
$98 = vTable
$96 = 0
$97 = ""

perform "ICOMP"

vScript = $97
----8<----

The Tool doesn’t put the Fieldnames in Backtics (` = Backtic). This causes trouble while running into MySQL reserved words while creating the Database. Only way to avoid this is to backtic those fields. … looks like:

CREATE TABLE IF NOT EXISTS `einheit` (
  `EINHEIT` char(30) NOT NULL,
  `KBZ` char(40) default NULL,
  `KBZ_NR` int(11) default NULL,
  `ORDNUNG` smallint(6) default NULL,
  `UMREF` float default NULL,
  `POSITION` float default NULL,
  `BASIS_EINHEIT` char(30) default NULL,
  PRIMARY KEY  (`EINHEIT`)
) ENGINE=InnoDB;

MySQL uses packages and seem to put fields in backtics there so this should do fine.

MySQL Datatypes
We troubled some with the datatypes for MySQL while using the script tool. It Seems not to know MySQL very well. It tries to put a CHAR type greater than 255 and failes (of course). CHARS longer than 255 are possible with VARCHAR (which should be a preferred type in MySQL since it saves space).

SO: CHAR(256) => VARCHAR(256).
 

CHAR itself is most likely used on fields with a length of  <= 3 ! Above this, VARCHAR should be preferred.

A Bug with the Nr 28206 “MySQL U2.0 driver creates script with  unsupported storage format” has been created. It supposed to be  fixed in patch P202 for Uniface 9.3.02 for platforms LIA and W32. release of P202 is planned for 24 July 2009.

// GHAN - over and out!


This page has no comments.