Hi everybody,
I have problems with foreign key creation.
I have installed mysql server cersion 3.23.53 on red hat linux 7.3.
Then I have created innodb datebase to be able to use FOREIGN KEY
Constarints.
This is concerning piece of my my.cnf file:
# Uncomment the following if you are using InnoDB tables
innodb_data_home_dir = /usr/local/mysql/data_innodb/
innodb_data_file_path = ibdata1:100M:autoextend
innodb_log_group_home_dir = /usr/local/mysql/data_innodb/
innodb_log_arch_dir = /usr/local/mysql/data_innodb/
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
set-variable = innodb_buffer_pool_size=64M
set-variable = innodb_additional_mem_pool_size=2M
# Set .._log_file_size to 25 % of buffer pool size
set-variable = innodb_log_file_size=10M
set-variable = innodb_log_buffer_size=8M
innodb_flush_log_at_trx_commit=1
set-variable = innodb_lock_wait_timeout=50
Then I restarted MySql databas eserver (everything looked ok in logfie)
But I am not able to create tables with foreign keys. please have a look at
this error:
mysql> use test;
Database changed
mysql> CREATE TABLE SMS_STATUS (
-> SS_ID VARCHAR(50) NOT NULL,
-> SS_DESCRIPTION TEXT,
-> PRIMARY KEY (SS_ID))
-> TYPE = INNODB;
Query OK, 0 rows affected (0.01 sec)
mysql> CREATE TABLE SMS_IN (
-> SI_ID BIGINT(12) NOT NULL AUTO_INCREMENT,
-> SI_CONTENT VARCHAR(160),
-> SI_ANUMBER VARCHAR(30) NOT NULL,
-> SI_BNUMBER VARCHAR(30) NOT NULL,
-> SI_DATE_SENT DATETIME NOT NULL,
-> SI_DATE_RECEIVED TIMESTAMP NOT NULL,
-> SI_FK_SS_ID VARCHAR(50),
-> PRIMARY KEY (SI_ID))
-> TYPE = INNODB;
Query OK, 0 rows affected (0.01 sec)
mysql> ALTER TABLE SMS_IN
-> ADD CONSTRAINT FOREIGN KEY (SI_FK_SS_ID)
-> REFERENCES SMS_STATUS(SS_ID)
-> ON DELETE SET NULL;
ERROR 1005: Can't create table './test/#sql-1536_5.frm' (errno: 150)
The same happens when I insert foreign key into the create statement.
Does anybody knows what is the problem, and what should I do to correct
this problem?
Thank you very much.
Lukas
---------------------------------------------------------------------
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