Bug #83042 | MySQL Error 1064 when appending values formatted as hh:mm:ss | ||
---|---|---|---|
Submitted: | 19 Sep 2016 13:58 | Modified: | 20 Sep 2016 11:57 |
Reporter: | Stacey Greensall | Email Updates: | |
Status: | Duplicate | Impact on me: | |
Category: | MySQL for Windows: MySQL for Excel | Severity: | S2 (Serious) |
Version: | 1.3.6 | OS: | Windows (Win10 Pro) |
Assigned to: | CPU Architecture: | Any |
[19 Sep 2016 13:58]
Stacey Greensall
[19 Sep 2016 14:22]
Peter Laursen
Won't you need to change TIME types to TIME(6) - or not use strict_all_tables SQL-mode - as you - as far as I can see - use microseconds precision in a table column not specified with such? Refer: http://dev.mysql.com/doc/refman/5.6/en/fractional-seconds.html. http://dev.mysql.com/doc/refman/5.6/en/sql-mode.html#sql-mode-strict. -- Peter -- not a MySQL/Oracle person
[20 Sep 2016 11:12]
Stacey Greensall
Thanks for the two links for a min, I thought microseconds could of been the cause. I experienced a similar quirk with appending decimal values. Excels increase/decrease decimal placement only hides trailing digits and MySQLforExcel still picks them up causing append errors, so I had to restrict the decimal placement inside the formula. I am not intentioanlly using microseconds, but the values are the result of other formula. If that was the cause, I could restrict the formula as I did before so I simplified my table and did some more testing,... ------------------------------------------------------------------- CREATE TABLE `time` ( `time` TIME(6) NOT NULL ) COLLATE='utf8_general_ci' ENGINE=MyISAM ; ------------------------------------------------------------------- Inserted Excel data in MySQL Table `time` with the following statements: 1: INSERT INTO `testDB`.`time` (`time`) VALUES (02:11:10) Error while appending rows... MySQL Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ':11:10)' at line 4 ------------------------------------------------------------------- If my server configuration was causing the rejection surely I should not be able to do this from a thrid party query tool 1: INSERT INTO `testDB`.`time` (`time`) VALUES (021110) database result... 02:11:10.000000 I also tried without microseconds ------------------------------------------------------------------- CREATE TABLE `time` ( `time` TIME NOT NULL ) COLLATE='utf8_general_ci' ENGINE=MyISAM ; ------------------------------------------------------------------- but I get the same error when appending a single cell containing a time value... ------------------------------------------------------------------- Inserted Excel data in MySQL Table `time` with the following statements: 1: INSERT INTO `testDB`.`time` (`time`) VALUES (02:11:10) Error while appending rows... MySQL Error 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ':11:10)' at line 4 ------------------------------------------------------------------- There is definitely some quirk I am missing, because for the past 5years I have been uploading these tables to my server using SQLConverterExcel. I recently upgrading to office 2013 which is not supported by my old tool, and I thought MySQLForExcel looked like a nicely packaged solution .
[20 Sep 2016 11:57]
Chiranjeevi Battula
Hello Stacey Greensall, Thank you for the bug report. This is most likely duplicate of Bug #81970, please see Bug #81970. Thanks, Chiranjeevi.