1.表的设计和创建

2.在navicate运行这些代码

create table user(id int not null auto_increment primary key,name varchar(50) not null unique,password varchar(50) not null,state enum('online','offline')default 'offline');create table friend(userid int not null,friendid int not null);alter table friend add constraint pk_friend primary key(userid,friendid);create table allgroup(id int not null auto_increment primary key,groupname varchar(50) not null,groupdesc varchar(200) default '');create table groupuser(groupid int not null primary key,userid int not null,grouprole enum('creator','normal') default 'normal');create table offlinemessage(userid int not null primary key,message varchar(500) not null);

参考和推荐文章:

mysql 设置默认为空字符串

mysql 设置默认为空字符串_mob649e81684ddc的技术博客_51CTO博客mysql 设置默认为空字符串,#如何设置MySQL默认为空字符串##介绍在MySQL中,我们可以通过修改表结构的方式来设置默认为空字符串。本文将详细介绍如何使用MySQL来实现设置默认为空字符串的功能。##步骤以下是实现设置默认为空字符串的步骤:|步骤|操作||—|—||1|确定要修改的表||2|查看表结构||3|修改表结构||4|验证设置是https://blog.51cto.com/u_16175515/7051440

mysql 创建表格 枚举类型:

mysql 创建表格 枚举类型_mob649e81586edc的技术博客_51CTO博客mysql 创建表格 枚举类型,#MySQL创建表格枚举类型MySQL是一种常用的关系型数据库管理系统,它提供了丰富的功能来管理和操作数据。在MySQL中,我们可以使用CREATETABLE语句创建表格来存储数据。表格中的列可以具有不同的数据类型,其中之一就是枚举类型。##什么是枚举类型枚举类型是一种特殊的数据类型,它允许我们将某个列的值限制为预定义的一组可能值中的一个。在MySQL中,我们可以使用枚举类型来https://blog.51cto.com/u_16175450/6767773

mysql 创建联合主键

mysql 创建联合主键_mob649e816aeef7的技术博客_51CTO博客mysql 创建联合主键,##Mysql创建联合主键的步骤###概述在Mysql中,可以通过创建联合主键来约束多个字段的唯一性,以确保数据的完整性和一致性。本文将详细介绍创建联合主键的步骤,并提供相应的代码示例。###步骤下面是创建联合主键的步骤概览:|步骤|描述||—|—||步骤一|创建表格||步骤二|添加字段||步骤三|定义联合主键|https://blog.51cto.com/u_16175526/7051594

在我们后面的项目中,有用到这些表,在ubutun linux中,将我们上面写好的sql代码粘贴进去按下

mysql> mysql -u root -pmysql> show databases;mysql> create database chat;mysql> use chat;Database changedmysql> create table user(-> id int not null auto_increment primary key,-> name varchar(50) not null unique,-> password varchar(50) not null,-> state enum('online','offline')default 'offline'-> );Query OK, 0 rows affected (0.02 sec)mysql> create table friend(-> userid int not null,-> friendid int not null-> );Query OK, 0 rows affected (0.00 sec)mysql> alter table friend -> add constraint pk_friend primary key(userid,friendid);Query OK, 0 rows affected (0.01 sec)Records: 0Duplicates: 0Warnings: 0mysql> create table allgroup(-> id int not null auto_increment primary key,-> groupname varchar(50) not null,-> groupdesc varchar(200) default ''-> );Query OK, 0 rows affected (0.00 sec)mysql> create table groupuser(-> groupid int not null primary key,-> userid int not null,-> grouprole enum('creator','normal') default 'normal'-> );Query OK, 0 rows affected (0.00 sec)mysql> create table offlinemessage(-> userid int not null primary key,-> message varchar(500) not null-> );Query OK, 0 rows affected (0.00 sec)mysql> show tables;+----------------+| Tables_in_chat |+----------------+| allgroup || friend || groupuser|| offlinemessage || user |+----------------+5 rows in set (0.00 sec)mysql>