En el ejemplo que te mandé tienes una tabla usuarios que puedes extender sin problemas.
La solcuißon correcta siguiendo con el mismo modelo sería:
1. Agregar una tabla TIPO DE USUARIOs o similar, algo como:
id nombre
1 Admin
2 Premium
3 Normal
4 Otro
2. En la tabla usuarios, agregas un campo que puede ser, por ejemplo, tipo_id y que hace referencia al ID DE TIPO DE USUARIO de la tabla tipo de usuarios. Así, la tabla usuarios quedaría así:
CREATE TABLE `users` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'Id unico',
`login` char(8) DEFAULT NULL COMMENT 'el nombre de usuario en el sistema',
`name` varchar(64) DEFAULT NULL COMMENT 'nombre real',
`surname` varchar(64) DEFAULT NULL COMMENT 'apellido',
`password` char(8) DEFAULT NULL COMMENT 'password',
`tipo` int(11) DEFAULT NULL COMMENT 'Tipo de usuario',
PRIMARY KEY (`id`),
KEY `FK_users_tipo` (`tipo`),
CONSTRAINT `FK_users_tipo` FOREIGN KEY (`tipo`) REFERENCES `tipo_usuarios` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1
La DB completa quedará así:
Código MySQL:
Ver originalCREATE DATABASE /*!32312 IF NOT EXISTS*/`mensajes` /*!40100 DEFAULT CHARACTER SET latin1 */;
/*Table structure for table `folders` */
/*Data for the table `folders` */
INSERT INTO `folders`(`id`,`name`) VALUES (1,'Entrada'),(2,'Enviados'),(3,'Trabajo'),(4,'Importantes');
/*Table structure for table `messages` */
KEY `FK_messages_from` (`from`), KEY `FK_messages_to` (`to`), KEY `FK_messages` (`folder_id`), KEY `FK_messages_owner` (`owner`),
/*Data for the table `messages` */
INSERT INTO `messages`(`id`,`subject`,`body`,`to`,`from`,`sended_on`,`read`,`folder_id`,`owner`) VALUES (1,'loco','Loco dsf adsf asdfdsafdsaf',1,2,'0000-00-00 00:00:00',0,1,1);
/*Table structure for table `tipo_usuarios` */
/*Data for the table `tipo_usuarios` */
INSERT INTO `tipo_usuarios`(`id`,`nombre`) VALUES (1,'Admin'),(2,'Normal'),(3,'Premium');
/*Table structure for table `users` */
KEY `FK_users_tipo` (`tipo`),
/*Data for the table `users` */
INSERT INTO `users`(`id`,`login`,`name`,`surname`,`password`,`tipo`) VALUES (1,'user_a','Jose','Josete','12345678',1),(2,'user_b','Pepe','Parada','12345678',2),(3,'user_c','Carlos','Carlongo','12345678',3);
Para obtener los datos del usuario Y el tipo de usuario, utilizas esto:
Saludos,