Hi Phobe, As the MyIsam tablehandler stored the tables as files on the file system the OS specific case sensitivety for file names comes into place here. On a Unix system you have to use the correct cases for the table names, on a Win* System the cases of the table names does not matter.
The same is true for datbase names as well. Column names should not be case sensitive anyway. I guess you're on some Unix platform? I hope that helps! Best Regards, Wolf -----Ursprüngliche Nachricht----- Von: Phoebe Bright [mailto:[EMAIL PROTECTED]] Gesendet: Donnerstag, 26. September 2002 12:12 An: MySQL Betreff: Odd behaviour if you use incorrect case for table name I thought you might be interested in a bug that I traced to my having used the wrong case for the table name. This had me baffled for a while because the behaviour was not consistent, sometimes the error was duplicate key, other times wrong column count.... ============ CORRECT BEHAVIOR ========= DROP TABLE IF EXISTS task RESULT: 0 Rows affected. CREATE TABLE task ( projectid varchar(8) NOT NULL default '', taskid varchar(8) NOT NULL default '', name varchar(60) NOT NULL default '', PRIMARY KEY (projectid,taskid) ) TYPE=MyISAM RESULT: 0 Rows affected. INSERT INTO task VALUES ('BROWSP','1','Maintain data code') RESULT: 1 Rows affected. INSERT INTO task VALUES ('BROWSP','2','Test software, hardware and linkages') RESULT: 1 Rows affected. select * from task | projectid | taskid | name | | BROWSP | 1 |Maintain data code| | BROWSP | 2 |Test software, hardware and linkages| Number of Results: 2 What happens if you use Task instead of task in the second Insert ============== APPEARED TO WORK =============== DROP TABLE IF EXISTS task RESULT: 0 Rows affected. CREATE TABLE task ( projectid varchar(8) NOT NULL default '', taskid varchar(8) NOT NULL default '', name varchar(60) NOT NULL default '', PRIMARY KEY (projectid,taskid) ) TYPE=MyISAM RESULT: 0 Rows affected. INSERT INTO task VALUES ('SUPP','1','Maintain data code') RESULT: 1 Rows affected. INSERT INTO Task VALUES ('SUPP','2','Test software, hardware and linkages') RESULT: 1 Rows affected. ============ SO TRIED IT WITH A SELECT AT THE END ================= DROP TABLE IF EXISTS task RESULT: 0 Rows affected. CREATE TABLE task ( projectid varchar(8) NOT NULL default '', taskid varchar(8) NOT NULL default '', name varchar(60) NOT NULL default '', PRIMARY KEY (projectid,taskid) ) TYPE=MyISAM RESULT: 0 Rows affected. INSERT INTO task VALUES ('SUPP','1','Maintain data code') RESULT: 1 Rows affected. INSERT INTO Task VALUES ('SUPP','2','Test software, hardware and linkages') ERROR: Query failed (Duplicate entry 'SUPP-2' for key 1) select * from task | projectid | taskid | name | | SUPP | 1 | Maintain data code | Number of Results: 1 ================ ANOTHER VARIATION ================== DROP TABLE IF EXISTS task RESULT: 0 Rows affected. CREATE TABLE task ( projectid varchar(8) NOT NULL default '', taskid varchar(8) NOT NULL default '', name varchar(60) NOT NULL default '', PRIMARY KEY (projectid,taskid) ) TYPE=MyISAM RESULT: 0 Rows affected. INSERT INTO task VALUES ('BROWSP','1','Maintain data code') RESULT: 1 Rows affected. INSERT INTO Task VALUES ('BROWSP','2','Test software, hardware and linkages') ERROR: Query failed (Column count doesn't match value count at row 1) =========== SAME AGAIN WITH A SELECT ================ DROP TABLE IF EXISTS task RESULT: 0 Rows affected. CREATE TABLE task ( projectid varchar(8) NOT NULL default '', taskid varchar(8) NOT NULL default '', name varchar(60) NOT NULL default '', PRIMARY KEY (projectid,taskid) ) TYPE=MyISAM RESULT: 0 Rows affected. INSERT INTO task VALUES ('BROWSP','1','Maintain data code') RESULT: 1 Rows affected. INSERT INTO Task VALUES ('BROWSP','2','Test software, hardware and linkages') RESULT: 1 Rows affected. select * from task | projectid | taskid | name | | BROWSP | 1 | Maintain data code | Number of Results: 1 =============== WITHOUT THE SELECT ======================== DROP TABLE IF EXISTS task RESULT: 0 Rows affected. CREATE TABLE task ( projectid varchar(8) NOT NULL default '', taskid varchar(8) NOT NULL default '', name varchar(60) NOT NULL default '', PRIMARY KEY (projectid,taskid) ) TYPE=MyISAM RESULT: 0 Rows affected. INSERT INTO task VALUES ('BROWSP','1','Maintain data code') RESULT: 1 Rows affected. INSERT INTO Task VALUES ('BROWSP','2','Test software, hardware and linkages') ERROR: Query failed (Duplicate entry 'BROWSP-2' for key 1) --------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive) To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php --------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive) To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php