25 lines
1.1 KiB
SQL
25 lines
1.1 KiB
SQL
-- Public directory MVP listings table.
|
|
CREATE TABLE IF NOT EXISTS directory_listings (
|
|
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
|
|
business_name VARCHAR(160) NOT NULL,
|
|
category VARCHAR(80) NOT NULL,
|
|
description TEXT NOT NULL,
|
|
address VARCHAR(180) NOT NULL,
|
|
city VARCHAR(90) NOT NULL,
|
|
region VARCHAR(90) NOT NULL,
|
|
postal_code VARCHAR(24) DEFAULT NULL,
|
|
phone VARCHAR(40) DEFAULT NULL,
|
|
email VARCHAR(160) NOT NULL,
|
|
website VARCHAR(220) DEFAULT NULL,
|
|
hours VARCHAR(220) DEFAULT NULL,
|
|
owner_name VARCHAR(140) NOT NULL,
|
|
status ENUM('pending','approved') NOT NULL DEFAULT 'pending',
|
|
is_claimable TINYINT(1) NOT NULL DEFAULT 1,
|
|
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
INDEX idx_directory_category (category),
|
|
INDEX idx_directory_location (city, region),
|
|
INDEX idx_directory_status (status),
|
|
FULLTEXT INDEX ft_directory_search (business_name, category, description, address, city, region)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|