Mysql数据库,表,字符集,主外键等创建的sql模板

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用版 2核4GB 50GB
简介: ##如果存在同名的数据库,删除此同名的数据库。 DROP DATABASE IF EXISTS cfms;   ##如果不存在字符集为utf8的cfms这个数据库,那么就创建 CREATE DATABASE IF NOT EXISTS cfms CHARACTER SET utf8;   ##第一次时表示使用此数据库 US

##如果存在同名的数据库,删除此同名的数据库。

DROP DATABASE IF EXISTS cfms;

 

##如果不存在字符集为utf8cfms这个数据库,那么就创建

CREATE DATABASE IF NOT EXISTS cfms CHARACTER SET utf8;

 

##第一次时表示使用此数据库

USE cfms;

 

##如果存在users这个表了,就删除重新创建

DROP TABLE IF EXISTS cfms.users;               ##如果存在要创建的数据库就删除

 

##如果不存在这个表了,就重新创建。

CREATE TABLE IF NOT EXISTS cfms.users(

         id VARCHAR(36) NOT NULL,                   ##使用UUID,它是36位的

         username VARCHAR(10) NOT NULL,             ##用户名

         password VARCHAR(32) NOT NULL,             ##这里使用的是32位的MD5加密

         sex VARCHAR(4) DEFAULT NULL,                          ##你的性别

         userage VARCHAR(3) DEFAULT NULL ,                ##你的年龄      

         birthday VARCHAR(10) DEFAULT NULL,              ##出生日期

         email VARCHAR(100) NOT NULL,               ##电子邮件

         edubackground CHAR(1) DEFAULT NULL,                    ##你的学历

         mobile VARCHAR(11) DEFAULT NULL,                 ##手机号码

         tel VARCHAR(15) DEFAULT NULL,                         ##联系电话

         regtime BIGINT(13) DEFAULT NULL,           ##注册时间存的是时间戳,Java的时间戳为13为所以用BIGINT,FLOATDOUBLE都太大

         regip VARCHAR(15) DEFAULT NULL,            ##注册的ip地址,为十五位的

         logtimes INT(10) DEFAULT 0,                ##登录次数

         CONSTRAINT PRIMARY KEY(id)                 ##这个表中id作为主键CONSTRAINT-UNIQUE-KEY(password)##为密码添加唯一性约束

) ENGINE=INNODB DEFAULT CHARSET=utf8;

 

##文件分类对应的按名称分类的表

DROP TABLE IF EXISTS cfms.namecategory;

CREATE TABLE IF NOT EXISTS cfms.namecategory(

         id VARCHAR(36) NOT NULL,                   ##使用UUID,它是36位的

         namecategory VARCHAR(100),                 ##文件的类型名称

         description text,                          ##文件描述

         user_id VARCHAR(36) NOT NULL,              ##文件分类者

         CONSTRAINT PRIMARY KEY(id),

         CONSTRAINT namecategory_user_id_FK FOREIGN KEY(user_id) REFERENCES cfms.users(id) ON DELETE CASCADE ON UPDATE CASCADE

) ENGINE=INNODB DEFAULT CHARSET=utf8;

 

##文件分类对应的按文件类型分类的表

DROP TABLE IF EXISTS cfms.typecategory;

CREATE TABLE IF NOT EXISTS cfms.typecategory(

         id VARCHAR(36) NOT NULL,                   ##使用UUID,它是36位的

         typecategory VARCHAR(100),                 ##文件的类型名称

         description text,                          ##文件描述

         user_id VARCHAR(36) NOT NULL,              ##文件分类者

         CONSTRAINT PRIMARY KEY(id),

         CONSTRAINT typecategory_user_id_FK FOREIGN KEY(user_id) REFERENCES cfms.users(id) ON DELETE CASCADE ON UPDATE CASCADE

) ENGINE=INNODB DEFAULT CHARSET=utf8;

 

##文件分类对应的按文件时间分类的表

DROP TABLE IF EXISTS cfms.timecategory;

CREATE TABLE IF NOT EXISTS cfms.timecategory(

         id VARCHAR(36) NOT NULL,                   ##使用UUID,它是36位的

         timecategory VARCHAR(100) NOT NULL,        ##文件的类型名称

         description text,                          ##文件描述

         user_id VARCHAR(36) NOT NULL,              ##文件分类者

         CONSTRAINT PRIMARY KEY(id),

         CONSTRAINT timecategory_user_id_FK FOREIGN KEY(user_id) REFERENCES cfms.users(id) ON DELETE CASCADE ON UPDATE CASCADE

) ENGINE=INNODB DEFAULT CHARSET=utf8;

 

##文件分类对应的按文件大小分类的表

DROP TABLE IF EXISTS cfms.sizecategroy;

CREATE TABLE IF NOT EXISTS cfms.sizecategroy(

         id VARCHAR(36) NOT NULL,                   ##使用UUID,它是36位的

         sizecategroy VARCHAR(100) NOT NULL,        ##文件的类型名称

         size_min VARCHAR(20) DEFAULT NULL,         ##文件最小值

         size_max VARCHAR(20) DEFAULT NULL,         ##文件最大值

         user_id VARCHAR(36) NOT NULL,             ##文件分类者

         CONSTRAINT PRIMARY KEY(id),

         CONSTRAINT sizecategroy_user_id_FK FOREIGN KEY(user_id) REFERENCES cfms.users(id) ON DELETE CASCADE ON UPDATE CASCADE

) ENGINE=INNODB DEFAULT CHARSET=utf8;

 

##如果存在文件信息表,那么就删除,如果不存在就创建

DROP TABLE IF EXISTS cfms.files;

##如果不存在这个表,就重新创建

CREATE TABLE IF NOT EXISTS cfms.files(

         id VARCHAR(36) NOT NULL,                   ##文件的主键值

         name VARCHAR(250) NOT NULL,                ##上传文件的名称,文件的uuid

         realname VARCHAR(250) NOT NULL,            ##上传文件的真是名称

         path VARCHAR(250) NOT NULL,                ##文件的位置

         uptime BIGINT(13),                         ##文件的上传时间

         description text,                          ##文件的描述

         size BIGINT(13) DEFAULT NULL,              ##文件大小

         keyword VARCHAR(100) DEFAULT NULL,         ##文件关键字

         user_id VARCHAR(36) NOT NULL,              ##上传人

         namecategory_id VARCHAR(36) NOT NULL,

         typecategory_id VARCHAR(36) NOT NULL,

         timecategory_id VARCHAR(36) NOT NULL,     

         CONSTRAINT PRIMARY KEY(id),

         CONSTRAINT files_user_id_FK FOREIGN KEY(user_id) REFERENCES cfms.users(id) ON DELETE CASCADE ON UPDATE CASCADE,  

         CONSTRAINT files_namecategory_id_FK FOREIGN KEY(user_id) REFERENCES cfms.users(id) ON DELETE CASCADE ON UPDATE CASCADE,  

         CONSTRAINT files_typecategory_id_FK FOREIGN KEY(user_id) REFERENCES cfms.users(id) ON DELETE CASCADE ON UPDATE CASCADE,  

         CONSTRAINT files_timecategory_id_FK FOREIGN KEY(user_id) REFERENCES cfms.users(id) ON DELETE CASCADE ON UPDATE CASCADE 

)ENGINE=INNODB DEFAULT CHARSET=utf8;

 


相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
4天前
|
存储 自然语言处理 Oracle
Oracle数据库字符集概述及修改方式
【8月更文挑战第15天】Oracle 数据库字符集定义了数据的编码方案,决定可存储的字符类型及其表示方式。主要作用包括数据存储、检索及跨系统传输时的正确表示。常见字符集如 AL32UTF8 支持多语言,而 WE8MSWIN1252 主用于西欧语言。修改字符集风险高,可能导致数据问题,需事先备份并评估兼容性。可通过 ALTER DATABASE 语句直接修改或采用导出-导入数据的方式进行。完成后应验证数据完整性。此操作复杂,须谨慎处理。
|
20天前
|
SQL 存储 关系型数据库
关系型数据库SQLserver基本 SQL 操作
【7月更文挑战第28天】
28 4
|
23天前
|
SQL 存储 监控
SQL数据库安装指南:步骤详解与最佳实践
安装和配置SQL数据库可能是一个复杂的过程,但通过遵循本文提供的详细步骤和最佳实践,您可以确保数据库的成功安装和高效运行。无论您是初学者还是经验丰富的数据库管理员,掌握SQL数据库的安装和管理技能都是至关重要的。通过不断学习和实践,您将能够更好地利用SQL数据库来支持您的业务需求和数据分析工作。记住,定期维护和优化数据库是保证其长期性能和稳定性的关键。祝您在安装和配置SQL
|
3天前
|
SQL 存储 关系型数据库
数据库SQL入门指南
数据库SQL入门指南
|
3天前
|
SQL 关系型数据库 数据库
数据库空间之谜:彻底解决RDS for SQL Server的空间难题
【8月更文挑战第16天】在管理阿里云RDS for SQL Server时,合理排查与解决空间问题是确保数据库性能稳定的关键。常见问题包括数据文件增长、日志文件膨胀及索引碎片累积。利用SQL Server的动态管理视图(DMV)可有效监测文件使用情况、日志空间及索引碎片化程度。例如,使用`sp_spaceused`检查文件使用量,`sys.dm_db_log_space_usage`监控日志空间,`sys.dm_db_index_physical_stats`识别索引碎片。同时,合理的备份策略和文件组设置也有助于优化空间使用,确保数据库高效运行。
10 2
|
16天前
|
SQL 安全 关系型数据库
关系型数据库SQL server DELETE 语句
【8月更文挑战第3天】
44 10
|
16天前
|
SQL 关系型数据库 数据库
关系型数据库SQL server UPDATE 语句
【8月更文挑战第3天】
42 10
|
16天前
|
SQL 关系型数据库 BI
关系型数据库SQL server INSERT 语句
【8月更文挑战第3天】
39 9
|
22天前
|
SQL 存储 监控
|
19天前
|
SQL 关系型数据库 数据库