#1170 - BLOB/TEXT column 'variable' used in key specification without a key length I am trying to create a database table for a blog website, but I have an error from a text variable.
the database structure looks like this:
CREATE TABLE place(
    id INT(8) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    title VARCHAR(30) NOT NULL UNIQUE,
    author VARCHAR(30) NOT NULL,
    city VARCHAR(30) NOT NULL,
    state VARCHAR(30) NOT NULL UNIQUE,
    latitude FLOAT NOT NULL UNIQUE,
    longitude FLOAT NOT NULL UNIQUE,
    description TEXT NOT NULL UNIQUE,
    post_date DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
)ENGINE = MyISAM;

but, every time I do try to generate the table it shows up this error:
#1170 - BLOB/TEXT column 'description' used in key specification without a key length
The column is OK, but the UNIQUE constraint requires an index that is too big.
Some other things are wrong:  Surely there can be more than one place in a state?  Yet the UNIQUE constraint says that there can be only one row for each state.
Remove UNIQUE from any column definition that is not truly unique.
Also, I strongly recommend you use InnoDB, not MyISAM.
PRIMARY KEY is a Unique Index.
UNIQUE is an index and a uniqueness constraint.
INDEX is a way to access data faster.  But until you have the SELECTs, you may not know which columns (or combination of columns) should be indexed.