mysql.sql 4.7 KB
Newer Older
D
Initial  
David Heinemeier Hansson 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
CREATE TABLE `accounts` (
  `id` int(11) NOT NULL auto_increment,
  `firm_id` int(11) default NULL,
  `credit_limit` int(5) default NULL,
  PRIMARY KEY  (`id`)
) TYPE=InnoDB;

CREATE TABLE `companies` (
  `id` int(11) NOT NULL auto_increment,
  `type` varchar(50) default NULL,
  `ruby_type` varchar(50) default NULL,
  `firm_id` int(11) default NULL,
  `name` varchar(50) default NULL,
  `client_of` int(11) default NULL,
  `rating` int(11) default NULL default 1,
  PRIMARY KEY  (`id`)
) TYPE=InnoDB;


CREATE TABLE `topics` (
  `id` int(11) NOT NULL auto_increment,
  `title` varchar(255) default NULL,
  `author_name` varchar(255) default NULL,
  `author_email_address` varchar(255) default NULL,
  `written_on` datetime default NULL,
26
  `bonus_time` time default NULL,
D
Initial  
David Heinemeier Hansson 已提交
27 28 29 30 31 32 33 34 35 36 37 38
  `last_read` date default NULL,
  `content` text,
  `approved` tinyint(1) default 1,
  `replies_count` int(11) default 0,
  `parent_id` int(11) default NULL,
  `type` varchar(50) default NULL,
  PRIMARY KEY  (`id`)
) TYPE=InnoDB;

CREATE TABLE `developers` (
  `id` int(11) NOT NULL auto_increment,
  `name` varchar(100) default NULL,
39
  `salary` int(11) default 70000,
40 41
  `created_at` datetime default NULL,
  `updated_at` datetime default NULL,
D
Initial  
David Heinemeier Hansson 已提交
42
  PRIMARY KEY  (`id`)
43
) TYPE=InnoDB;
D
Initial  
David Heinemeier Hansson 已提交
44 45 46 47

CREATE TABLE `projects` (
  `id` int(11) NOT NULL auto_increment,
  `name` varchar(100) default NULL,
48
  `type` VARCHAR(255) NOT NULL,
D
Initial  
David Heinemeier Hansson 已提交
49
  PRIMARY KEY  (`id`)
50
) TYPE=InnoDB;
D
Initial  
David Heinemeier Hansson 已提交
51 52 53 54 55

CREATE TABLE `developers_projects` (
  `developer_id` int(11) NOT NULL,
  `project_id` int(11) NOT NULL,
  `joined_on` date default NULL
56
) TYPE=InnoDB;
D
Initial  
David Heinemeier Hansson 已提交
57 58 59 60 61 62 63 64

CREATE TABLE `customers` (
  `id` int(11) NOT NULL auto_increment,
  `name` varchar(100) default NULL,
  `balance` int(6) default 0,
  `address_street` varchar(100) default NULL,
  `address_city` varchar(100) default NULL,
  `address_country` varchar(100) default NULL,
65
  `gps_location` varchar(100) default NULL,
D
Initial  
David Heinemeier Hansson 已提交
66
  PRIMARY KEY  (`id`)
67
) TYPE=InnoDB;
D
Initial  
David Heinemeier Hansson 已提交
68 69 70 71 72

CREATE TABLE `movies` (
  `movieid` int(11) NOT NULL auto_increment,
  `name` varchar(100) default NULL,
   PRIMARY KEY  (`movieid`)
73
) TYPE=InnoDB;
D
Initial  
David Heinemeier Hansson 已提交
74 75 76 77 78

CREATE TABLE `subscribers` (
  `nick` varchar(100) NOT NULL,
  `name` varchar(100) default NULL,
  PRIMARY KEY  (`nick`)
79
) TYPE=InnoDB;
D
Initial  
David Heinemeier Hansson 已提交
80 81 82 83 84

CREATE TABLE `booleantests` (
  `id` int(11) NOT NULL auto_increment,
  `value` integer default NULL,
  PRIMARY KEY (`id`)
85
) TYPE=InnoDB;
D
Initial  
David Heinemeier Hansson 已提交
86 87 88 89 90

CREATE TABLE `auto_id_tests` (
  `auto_id` int(11) NOT NULL auto_increment,
  `value` integer default NULL,
  PRIMARY KEY (`auto_id`)
91
) TYPE=InnoDB;
D
Initial  
David Heinemeier Hansson 已提交
92 93 94 95 96 97 98 99 100 101 102

CREATE TABLE `entrants` (
  `id` INTEGER NOT NULL PRIMARY KEY,
  `name` VARCHAR(255) NOT NULL,
  `course_id` INTEGER NOT NULL
);

CREATE TABLE `colnametests` (
  `id` int(11) NOT NULL auto_increment,
  `references` int(11) NOT NULL,
  PRIMARY KEY (`id`)
103
) TYPE=InnoDB;
104 105 106 107 108 109 110

CREATE TABLE `mixins` (
  `id` int(11) NOT NULL auto_increment,
  `parent_id` int(11) default NULL,
  `pos` int(11) default NULL,
  `created_at` datetime default NULL,
  `updated_at` datetime default NULL,
111 112 113 114
  `lft` int(11) default NULL,
  `rgt` int(11) default NULL,
  `root_id` int(11) default NULL,
  `type` varchar(40) default NULL,
115
  PRIMARY KEY  (`id`)
116
) TYPE=InnoDB;
117 118 119 120 121

CREATE TABLE `people` (
  `id` INTEGER NOT NULL PRIMARY KEY,
  `first_name` VARCHAR(40) NOT NULL,
  `lock_version` INTEGER NOT NULL DEFAULT 0
122
) TYPE=InnoDB;
123 124 125 126 127

CREATE TABLE `binaries` (
  `id` int(11) NOT NULL auto_increment,
  `data` mediumblob,
  PRIMARY KEY  (`id`)
128
) TYPE=InnoDB;
129 130 131

CREATE TABLE `computers` (
  `id` INTEGER NOT NULL PRIMARY KEY,
132 133
  `developer` INTEGER NOT NULL,
  `extendedWarranty` INTEGER NOT NULL
134
) TYPE=InnoDB;
135

D
David Heinemeier Hansson 已提交
136 137
CREATE TABLE `posts` (
  `id` INTEGER NOT NULL PRIMARY KEY,
138
  `author_id` INTEGER,
D
David Heinemeier Hansson 已提交
139
  `title` VARCHAR(255) NOT NULL,
140 141
  `body` TEXT NOT NULL,
  `type` VARCHAR(255) NOT NULL
D
David Heinemeier Hansson 已提交
142 143 144 145 146
) TYPE=InnoDB;

CREATE TABLE `comments` (
  `id` INTEGER NOT NULL PRIMARY KEY,
  `post_id` INTEGER NOT NULL,
147 148
  `body` TEXT NOT NULL,
  `type` VARCHAR(255) NOT NULL
D
David Heinemeier Hansson 已提交
149 150 151 152 153 154 155
) TYPE=InnoDB;

CREATE TABLE `authors` (
  `id` INTEGER NOT NULL PRIMARY KEY,
  `name` VARCHAR(255) NOT NULL
) TYPE=InnoDB;

156 157 158 159 160
CREATE TABLE `tasks` (
  `id` int(11) NOT NULL auto_increment,
  `starting` datetime NOT NULL default '0000-00-00 00:00:00',
  `ending` datetime NOT NULL default '0000-00-00 00:00:00',
  PRIMARY KEY  (`id`)
161
) TYPE=InnoDB;
162 163 164

CREATE TABLE `categories` (
  `id` int(11) NOT NULL auto_increment,
D
David Heinemeier Hansson 已提交
165
  `name` VARCHAR(255) NOT NULL,
166
  `type` VARCHAR(255) NOT NULL,
D
David Heinemeier Hansson 已提交
167
  PRIMARY KEY  (`id`)
168
) TYPE=InnoDB;
169 170 171 172

CREATE TABLE `categories_posts` (
  `category_id` int(11) NOT NULL,
  `post_id` int(11) NOT NULL
173
) TYPE=InnoDB;
174 175 176

CREATE TABLE `fk_test_has_pk` (
  `id` INTEGER NOT NULL PRIMARY KEY
177
) TYPE=InnoDB;
178 179 180 181 182 183

CREATE TABLE `fk_test_has_fk` (
  `id`    INTEGER NOT NULL PRIMARY KEY,
  `fk_id` INTEGER NOT NULL,

  FOREIGN KEY (`fk_id`) REFERENCES `fk_test_has_pk`(`id`)
184
) TYPE=InnoDB;