Hi!

It is a bug in the FOREIGN KEY syntax parser. It is confused by the column
name

e_foreigncurrency

The bug appears if the string 'foreign' is succeeded by a non-space
character in a CREATE TABLE statement.

Workaround: change the column name to e_currencyforeign, for example.

Fixed in 3.23.50.

Best regards,

Heikki Tuuri
Innobase Oy
---
Order technical MySQL/InnoDB support at https://order.mysql.com/
See http://www.innodb.com for the online manual and latest news on InnoDB

"Richard R. Harms" wrote in message ...
>The create table command included at the end of this message gives
>the following error:
>
>ERROR 1005: Can't create table './catalogmgr/macitm_vendordfrom.frm'
>(errno: 150)
>
>Creating it with type=myisam, and then doing an alter table and
>converting it to innodb works okay. It just cannot be initially
>created as an innodb table.
>
>The error occurs on both Red Hat Linux 6.2 and Mac OS X 10.1.2. MySQL
>was compiled on both systems with the "--enable-raid" flag. "my.cnf"
>settings are included below as well.
>
>=rh
>
>CREATE TABLE macitm_vendordfrom (
>   e_vendorno varchar(10) default NULL,
>   e_apvendor varchar(20) default NULL,
>   e_company char(2) default NULL,
>   e_division char(2) default NULL,
>   e_name varchar(30) default NULL,
>   e_lastname varchar(16) default NULL,
>   e_initial char(2) default NULL,
>   e_firstname varchar(16) default NULL,
>   e_title char(2) default NULL,
>   e_ref1 varchar(30) default NULL,
>   e_ref2 varchar(30) default NULL,
>   e_street varchar(30) default NULL,
>   e_city varchar(30) default NULL,
>   e_state char(2) default NULL,
>   e_zip varchar(10) default NULL,
>   e_countrycode varchar(4) default NULL,
>   e_dayphone varchar(16) default NULL,
>   e_freightppcode char(2) default NULL,
>   e_freightppbasis bigint(10) default NULL,
>   e_freightpct int(5) default NULL,
>   e_fobcity varchar(30) default NULL,
>   e_foreigncurrency char(2) default NULL,
>   e_termscode varchar(4) default NULL,
>   e_termspct int(4) default NULL,
>   e_termsdays int(5) default NULL,
>   e_standarddays int(5) default NULL,
>   e_faxno varchar(16) default NULL,
>   e_miscdata40 varchar(40) default NULL,
>   e_vendorcomments001 varchar(60) default NULL,
>   e_vendorcomments002 varchar(60) default NULL,
>   e_vendorcomments003 varchar(60) default NULL,
>   e_vendorcomments004 varchar(60) default NULL,
>   e_vendorcomments005 varchar(60) default NULL,
>   e_vendorcomments006 varchar(60) default NULL,
>   e_vendorcomments007 varchar(60) default NULL,
>   e_vendorcomments008 varchar(60) default NULL,
>   e_addldata varchar(20) default NULL,
>   e_email varchar(48) default NULL
>) TYPE=InnoDB;
>
>[mysqld]
>set-variable = delayed_queue_size=100000
>set-variable = sort_buffer=8M
>set-variable = join_buffer=4M
>set-variable = tmp_table_size=4M
>set-variable = max_sort_length=16384
>set-variable = max_allowed_packet=1M
>set-variable = query_cache_size=2M
>set-variable = query_cache_startup_type=1
>#
>innodb_data_home_dir = /usr/local/var/.ibdata
>#                                            Data files must be able to
>#                                            hold your data and indexes
>innodb_data_file_path = ibdata1:500M;ibdata2:500M;ibdata3:500M
>#                                            Set buffer pool size to 50 -
80 %
>#                                            of your computer's memory
>set-variable = innodb_buffer_pool_size=32M
>set-variable = innodb_additional_mem_pool_size=8M
>#
>innodb_log_group_home_dir = /usr/local/var/.iblogs
>#                                            .._log_arch_dir must be the
same
>#                                            as .._log_group_home_dir
>innodb_log_arch_dir = /usr/local/var/.iblogs
>innodb_log_archive=0
>set-variable = innodb_log_files_in_group=3
>#                                            Set the log file size to about
>#                                            15 % of the buffer pool size
>set-variable = innodb_log_file_size=50M
>set-variable = innodb_log_buffer_size=8M
>#                                            Set ..flush_log_at_trx_commit
to
>#                                            0 if you can afford losing
>#                                            a few last transactions
>innodb_flush_log_at_trx_commit=1
>set-variable = innodb_file_io_threads=4
>set-variable = innodb_lock_wait_timeout=50



---------------------------------------------------------------------
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

Reply via email to