I'm running MySQL 5.0.18 on OS X 10.4.5, on an intel MacBook. My table definition is:

CREATE TABLE `UNIT` (
  `UNIT_ID` int(11) NOT NULL auto_increment,
  `UNIT_CODE` varchar(50) default NULL,
  `UNIT_DESC` varchar(50) default NULL,
  `USER_ID` int(11) NOT NULL,
  `USER_DT` datetime NOT NULL,
  `RESEARCH_SITE_ID` int(11) NOT NULL,
  PRIMARY KEY  (`UNIT_ID`),
  UNIQUE KEY `UNIT_CODE` (`UNIT_CODE`),
  KEY `RESEARCH_SITE_ID` (`RESEARCH_SITE_ID`),
  KEY `USER_ID` (`USER_ID`),
  CONSTRAINT `unit_ibfk_2` FOREIGN KEY (`USER_ID`)
    REFERENCES `users` (`USER_ID`),
  CONSTRAINT `unit_ibfk_1` FOREIGN KEY (`RESEARCH_SITE_ID`)
    REFERENCES `research_site` (`RESEARCH_SITE_ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

When I try inserting I am getting an error relating to the `UNIT_CODE` UNIQUE KEY. See below:

mysql> INSERT INTO UNIT(UNIT_ID, UNIT_CODE, UNIT_DESC, USER_ID, USER_DT, RESEARCH_SITE_ID)
    ->   VALUES(9, 'g/dL', NULL, 1, '2005-03-22 08:01:07 AM', 0);
    Query OK, 1 row affected, 1 warning (0.00 sec)

This works fine.

mysql> INSERT INTO UNIT(UNIT_ID, UNIT_CODE, UNIT_DESC, USER_ID, USER_DT, RESEARCH_SITE_ID)
    ->   VALUES(10, 'g/dl', NULL, 1, '2005-03-22 08:01:07 AM', 0);
    ERROR 1062 (23000): Duplicate entry 'g/dl' for key 2

This fails however. 'g/dl' != 'g/dL' though. I don't get why a string field is being treated this way. I understand the HFS+ filesystem is not case sensitive but that shouldn't be an issued with varchar fields should it?



--
Sterling Anderson
email/aim: sterling_anderson [at] mac.com
http://sterlinganderson.net/



--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to