54 lines
1.6 KiB
SQL
54 lines
1.6 KiB
SQL
-- ========== Original Plugin Tables ==========
|
|
|
|
CREATE TABLE wp_go_form_forms (
|
|
id int NOT NULL AUTO_INCREMENT,
|
|
name varchar(255) NOT NULL,
|
|
created_at datetime DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
|
PRIMARY KEY (id)
|
|
);
|
|
|
|
CREATE TABLE wp_go_form_entries (
|
|
id int NOT NULL AUTO_INCREMENT,
|
|
form_id int DEFAULT 1,
|
|
first_name varchar(100) NOT NULL,
|
|
last_name varchar(100) NOT NULL,
|
|
country varchar(100) DEFAULT NULL,
|
|
club varchar(100) DEFAULT NULL,
|
|
rank tinyint(2) DEFAULT 0,
|
|
rating smallint(5) DEFAULT 0,
|
|
egd_number varchar(20) DEFAULT NULL,
|
|
created_at date DEFAULT CURRENT_TIMESTAMP NOT NULL,
|
|
PRIMARY KEY (id),
|
|
FOREIGN KEY (form_id) REFERENCES wp_go_form_forms(id) ON DELETE CASCADE,
|
|
INDEX (form_id),
|
|
INDEX (egd_number)
|
|
);
|
|
|
|
-- ========== Custom Fields Tables ==========
|
|
|
|
CREATE TABLE wp_go_form_custom_fields (
|
|
id int NOT NULL AUTO_INCREMENT,
|
|
form_id int NOT NULL,
|
|
field_name varchar(100) NOT NULL,
|
|
field_type enum('select','text','checkbox', 'email', 'textarea') NOT NULL DEFAULT 'text',
|
|
field_options text,
|
|
is_public tinyint(1) NOT NULL DEFAULT 0,
|
|
is_required tinyint(1) NOT NULL DEFAULT 0,
|
|
is_full_width tinyint(1) NOT NULL DEFAULT 0,
|
|
PRIMARY KEY (id),
|
|
FOREIGN KEY (form_id) REFERENCES wp_go_form_forms(id) ON DELETE CASCADE,
|
|
INDEX (form_id)
|
|
);
|
|
|
|
CREATE TABLE wp_go_form_entry_custom_values (
|
|
id int NOT NULL AUTO_INCREMENT,
|
|
entry_id int NOT NULL,
|
|
field_id int NOT NULL,
|
|
value text,
|
|
PRIMARY KEY (id),
|
|
FOREIGN KEY (entry_id) REFERENCES wp_go_form_entries(id) ON DELETE CASCADE,
|
|
FOREIGN KEY (field_id) REFERENCES wp_go_form_custom_fields(id) ON DELETE CASCADE,
|
|
INDEX (entry_id),
|
|
INDEX (field_id)
|
|
);
|