myql 项目数据库和表的设计

2024-02-02 11:36

本文主要是介绍myql 项目数据库和表的设计,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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|验证设置是icon-default.png?t=N7T8https://blog.51cto.com/u_16175515/7051440

mysql 创建表格 枚举类型:

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

mysql 创建联合主键

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

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

mysql> mysql -u root -p
mysql> show databases;
mysql> create database chat;mysql> use chat;
Database changed
mysql> 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: 0  Duplicates: 0  Warnings: 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> 

这篇关于myql 项目数据库和表的设计的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/670579

相关文章

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

MySQL版本问题导致项目无法启动问题的解决方案

《MySQL版本问题导致项目无法启动问题的解决方案》本文记录了一次因MySQL版本不一致导致项目启动失败的经历,详细解析了连接错误的原因,并提供了两种解决方案:调整连接字符串禁用SSL或统一MySQL... 目录本地项目启动报错报错原因:解决方案第一个:第二种:容器启动mysql的坑两种修改时区的方法:本地

MyBatis设计SQL返回布尔值(Boolean)的常见方法

《MyBatis设计SQL返回布尔值(Boolean)的常见方法》这篇文章主要为大家详细介绍了MyBatis设计SQL返回布尔值(Boolean)的几种常见方法,文中的示例代码讲解详细,感兴趣的小伙伴... 目录方案一:使用COUNT查询存在性(推荐)方案二:条件表达式直接返回布尔方案三:存在性检查(EXI

springboot项目中使用JOSN解析库的方法

《springboot项目中使用JOSN解析库的方法》JSON,全程是JavaScriptObjectNotation,是一种轻量级的数据交换格式,本文给大家介绍springboot项目中使用JOSN... 目录一、jsON解析简介二、Spring Boot项目中使用JSON解析1、pom.XML文件引入依

使用vscode搭建pywebview集成vue项目实践

《使用vscode搭建pywebview集成vue项目实践》:本文主要介绍使用vscode搭建pywebview集成vue项目实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录环境准备项目源码下载项目说明调试与生成可执行文件核心代码说明总结本节我们使用pythonpywebv

Druid连接池实现自定义数据库密码加解密功能

《Druid连接池实现自定义数据库密码加解密功能》在现代应用开发中,数据安全是至关重要的,本文将介绍如何在​​Druid​​连接池中实现自定义的数据库密码加解密功能,有需要的小伙伴可以参考一下... 目录1. 环境准备2. 密码加密算法的选择3. 自定义 ​​DruidDataSource​​ 的密码解密3

Maven项目中集成数据库文档生成工具的操作步骤

《Maven项目中集成数据库文档生成工具的操作步骤》在Maven项目中,可以通过集成数据库文档生成工具来自动生成数据库文档,本文为大家整理了使用screw-maven-plugin(推荐)的完... 目录1. 添加插件配置到 pom.XML2. 配置数据库信息3. 执行生成命令4. 高级配置选项5. 注意事

eclipse如何运行springboot项目

《eclipse如何运行springboot项目》:本文主要介绍eclipse如何运行springboot项目问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目js录当在eclipse启动spring boot项目时出现问题解决办法1.通过cmd命令行2.在ecl

在Java中基于Geotools对PostGIS数据库的空间查询实践教程

《在Java中基于Geotools对PostGIS数据库的空间查询实践教程》本文将深入探讨这一实践,从连接配置到复杂空间查询操作,包括点查询、区域范围查询以及空间关系判断等,全方位展示如何在Java环... 目录前言一、相关技术背景介绍1、评价对象AOI2、数据处理流程二、对AOI空间范围查询实践1、空间查

Python+PyQt5实现MySQL数据库备份神器

《Python+PyQt5实现MySQL数据库备份神器》在数据库管理工作中,定期备份是确保数据安全的重要措施,本文将介绍如何使用Python+PyQt5开发一个高颜值,多功能的MySQL数据库备份工具... 目录概述功能特性核心功能矩阵特色功能界面展示主界面设计动态效果演示使用教程环境准备操作流程代码深度解