Merge pull request #126 from kohana/3.3/bug/travis-composer-no-interaction
[kohana-orm.git] / auth-schema-mysql.sql
blob61a803acba5308fcc6c4fc50c16b71bce3f56c6d
1 CREATE TABLE IF NOT EXISTS `roles` (
2   `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
3   `name` varchar(32) NOT NULL,
4   `description` varchar(255) NOT NULL,
5   PRIMARY KEY  (`id`),
6   UNIQUE KEY `uniq_name` (`name`)
7 ) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
9 INSERT INTO `roles` (`id`, `name`, `description`) VALUES(1, 'login', 'Login privileges, granted after account confirmation');
10 INSERT INTO `roles` (`id`, `name`, `description`) VALUES(2, 'admin', 'Administrative user, has access to everything.');
12 CREATE TABLE IF NOT EXISTS `roles_users` (
13   `user_id` int(10) UNSIGNED NOT NULL,
14   `role_id` int(10) UNSIGNED NOT NULL,
15   PRIMARY KEY  (`user_id`,`role_id`),
16   KEY `fk_role_id` (`role_id`)
17 ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
19 CREATE TABLE IF NOT EXISTS `users` (
20   `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
21   `email` varchar(254) NOT NULL,
22   `username` varchar(32) NOT NULL DEFAULT '',
23   `password` varchar(64) NOT NULL,
24   `logins` int(10) UNSIGNED NOT NULL DEFAULT '0',
25   `last_login` int(10) UNSIGNED,
26   PRIMARY KEY  (`id`),
27   UNIQUE KEY `uniq_username` (`username`),
28   UNIQUE KEY `uniq_email` (`email`)
29 ) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
31 CREATE TABLE IF NOT EXISTS `user_tokens` (
32   `id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
33   `user_id` int(11) UNSIGNED NOT NULL,
34   `user_agent` varchar(40) NOT NULL,
35   `token` varchar(40) NOT NULL,
36   `created` int(10) UNSIGNED NOT NULL,
37   `expires` int(10) UNSIGNED NOT NULL,
38   PRIMARY KEY  (`id`),
39   UNIQUE KEY `uniq_token` (`token`),
40   KEY `fk_user_id` (`user_id`),
41   KEY `expires` (`expires`)
42 ) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
44 ALTER TABLE `roles_users`
45   ADD CONSTRAINT `roles_users_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE,
46   ADD CONSTRAINT `roles_users_ibfk_2` FOREIGN KEY (`role_id`) REFERENCES `roles` (`id`) ON DELETE CASCADE;
48 ALTER TABLE `user_tokens`
49   ADD CONSTRAINT `user_tokens_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`) ON DELETE CASCADE;