[php-src] Issue #23177: Structured Query Language
[email protected] (narayan9862)
| Newsgroups | php.bugs |
|---|---|
| Message-ID | <[email protected]> |
Issue: https://github.com/php/php-src/issues/23177
Author: narayan9862
From manual page: https://php.net/ref.strings
-- 1. Create Cities Table
CREATE TABLE cities (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
icon_name VARCHAR(100) NOT NULL
);
-- 2. Create Users Table
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
full_name VARCHAR(100) NOT NULL,
email VARCHAR(100) NOT NULL UNIQUE,
password VARCHAR(255) NOT NULL,
phone VARCHAR(20) NOT NULL,
gender ENUM('male', 'female', 'other') NOT NULL,
college_name VARCHAR(150)
);
-- 3. Create Amenities Table
CREATE TABLE amenities (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
icon_name VARCHAR(100) NOT NULL,
type VARCHAR(50) NOT NULL
);
-- 4. Create Properties Table
CREATE TABLE properties (
id INT AUTO_INCREMENT PRIMARY KEY,
city_id INT NOT NULL,
name VARCHAR(150) NOT NULL,
address TEXT NOT NULL,
description TEXT NOT NULL,
gender ENUM('male', 'female', 'unisex') NOT NULL,
rent INT NOT NULL,
rating_clean FLOAT NOT NULL DEFAULT 0,
rating_food FLOAT NOT NULL DEFAULT 0,
rating_safety FLOAT NOT NULL DEFAULT 0,
FOREIGN KEY (city_id) REFERENCES cities(id) ON DELETE CASCADE
);
-- 5. Create Testimonials Table
CREATE TABLE testimonials (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
property_id INT NOT NULL,
content TEXT NOT NULL,
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
FOREIGN KEY (property_id) REFERENCES properties(id) ON DELETE CASCADE
);
-- 6. Create Interested Users Properties Table (Favourite Properties)
CREATE TABLE interested_users_properties (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
property_id INT NOT NULL,
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
FOREIGN KEY (property_id) REFERENCES properties(id) ON DELETE CASCADE
);
-- 7. Create Properties Amenities Table
CREATE TABLE properties_amenities (
id INT AUTO_INCREMENT PRIMARY KEY,
property_id INT NOT NULL,
amenity_id INT NOT NULL,
FOREIGN KEY (property_id) REFERENCES properties(id) ON DELETE CASCADE,
FOREIGN KEY (amenity_id) REFERENCES amenities(id) ON DELETE CASCADE
);
---