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项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

Ubuntu中远程连接Mysql数据库的详细图文教程

《Ubuntu中远程连接Mysql数据库的详细图文教程》Ubuntu是一个以桌面应用为主的Linux发行版操作系统,这篇文章主要为大家详细介绍了Ubuntu中远程连接Mysql数据库的详细图文教程,有... 目录1、版本2、检查有没有mysql2.1 查询是否安装了Mysql包2.2 查看Mysql版本2.

Oracle数据库常见字段类型大全以及超详细解析

《Oracle数据库常见字段类型大全以及超详细解析》在Oracle数据库中查询特定表的字段个数通常需要使用SQL语句来完成,:本文主要介绍Oracle数据库常见字段类型大全以及超详细解析,文中通过... 目录前言一、字符类型(Character)1、CHAR:定长字符数据类型2、VARCHAR2:变长字符数

Win11安装PostgreSQL数据库的两种方式详细步骤

《Win11安装PostgreSQL数据库的两种方式详细步骤》PostgreSQL是备受业界青睐的关系型数据库,尤其是在地理空间和移动领域,:本文主要介绍Win11安装PostgreSQL数据库的... 目录一、exe文件安装 (推荐)下载安装包1. 选择操作系统2. 跳转到EDB(PostgreSQL 的

SpringBoot实现数据库读写分离的3种方法小结

《SpringBoot实现数据库读写分离的3种方法小结》为了提高系统的读写性能和可用性,读写分离是一种经典的数据库架构模式,在SpringBoot应用中,有多种方式可以实现数据库读写分离,本文将介绍三... 目录一、数据库读写分离概述二、方案一:基于AbstractRoutingDataSource实现动态

C# WinForms存储过程操作数据库的实例讲解

《C#WinForms存储过程操作数据库的实例讲解》:本文主要介绍C#WinForms存储过程操作数据库的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、存储过程基础二、C# 调用流程1. 数据库连接配置2. 执行存储过程(增删改)3. 查询数据三、事务处

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加