CREATE TABLE `Post` ( `id` int, `parent_id` int, `category_id` int, `author_id` int, `date` datetime, `content` varchar(255), `locked` bool, `hit` int, `modified_date` datetime, `modified_by` varchar(255), `modified_reason` varchar(255), FOREIGN KEY(`parent_id`) REFERENCES `Post` (`id`), FOREIGN KEY(`category_id`) REFERENCES `Category` (`id`), FOREIGN KEY(`author_id`) REFERENCES `User` (`id`) ); CREATE TABLE `User` ( `id` int, `username` varchar(255), `name` varchar(255), `email` varchar(255), `gender` varchar(255), `birthdate` datetime, `signature` varchar(255), `profile_hit` varchar(255), `group_id` int, `avatar` varchar(255), `banned` bool, FOREIGN KEY(`group_id`) REFERENCES `Group` (`id`) ); CREATE TABLE `Category` ( `id` int, `parent_id` varchar(255), `name` varchar(255), `description` varchar(255), `locked` bool, `moderators` varchar(255), FOREIGN KEY(`parent_id`) REFERENCES `Category` (`id`) ); CREATE TABLE `Group` ( `id` int, `name` varchar(255) );