The following is a transaction from MySQL:
smysql> show tables;
Empty set (0.00 sec)

mysql> CREATE TABLE Userlist (
   ->         UserID MEDIUMINT UNSIGNED NOT NULL PRIMARY KEY,
   ->         Status VARCHAR(1) NOT NULL,
   ->         EmailAddress VARCHAR(64) NOT NULL,
   ->         Password VARCHAR(32) NOT NULL,
   ->         FirstName VARCHAR(64) NOT NULL,
   ->         LastName VARCHAR(64) NOT NULL,
   ->         CompanyName VARCHAR(64) NOT NULL,
   ->         Address1 VARCHAR(128) NOT NULL,
   ->         Address2 VARCHAR(128) DEFAULT '',
   ->         City VARCHAR(128) NOT NULL,
   ->         Zip VARCHAR(10) NOT NULL,
   ->         Country VARCHAR(2) NOT NULL,
   ->         Phone VARCHAR(24) NOT NULL,
   ->         Fax VARCHAR(24) DEFAULT '',
   ->         LastLogin DATE NOT NULL
   -> ) TYPE=InnoDB;
Query OK, 0 rows affected (0.05 sec)

mysql> CREATE TABLE Sitelist (
-> UserID MEDIUMINT UNSIGNED NOT NULL,
-> SiteID INT UNSIGNED NOT NULL AUTO_INCREMENT,
-> Status CHAR(1) NOT NULL,
-> Name CHAR(64) NOT NULL,
-> URL VARCHAR(255) NOT NULL,
-> Description VARCHAR(255) NOT NULL,
-> MonthlyUnique INT UNSIGNED NOT NULL DEFAULT 70,
-> FrequencyCap MEDIUMINT UNSIGNED NOT NULL,
-> INDEX (UserID),
-> FOREIGN KEY (UserID) REFERENCES Userlist(UserID) ON UPDATE CASCADE ON DELETE CASCADE,
-> PRIMARY KEY (SiteID, UserID)
-> ) TYPE=InnoDB;
Query OK, 0 rows affected (0.05 sec)


mysql> CREATE TABLE Filters (
-> SiteID MEDIUMINT UNSIGNED NOT NULL PRIMARY KEY,
-> INDEX (SiteID),
-> FOREIGN KEY (SiteID) REFERENCES Sitelist(SiteID) ON UPDATE CASCADE ON DELETE CASCADE
-> ) TYPE=InnoDB;
ERROR 1005 (HY000): Can't create table './test/AdvertiserFilter.frm' (errno: 150)



Does anyone know why this is happening? As far as I can tell there is no syntax errors in my table
declarations. Any input is much appreciated.


Thank you



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



Reply via email to