使用的工具有:MySQL Workbeach以及阿里云数据库和本地数据库
1.MySQL Workbeach构建数据库脚本
表与表的关系:1:1, 1:n, n:m。
通过外键关联表。
设置相应的参数:
建议utf8mb4 :避免中文乱码
新建图表:
新建表:utf8mb4 避免中文乱码
设置表的结构:
设置外键约束:
这样,两个表之间的关系就建立起来了。
保存为mwb 格式:(ctrl+s)
打开hr.mwb,如图:
导出hr.sql脚本:
导入本地数据库或者阿里云数据库运行:
扩展:
切换表与表之间的关系:
1:1 共享主键
同时一个表可以有多个主键:
following表
设置它们的外键:
user_role表
设置外键约束:
这样,这几张表之间的关系也就确定了:
最后导出weibo.sql,导入数据库看下效果
source xxx.sql
查看表结构:
.2.导入数据
insert into user(name,phone) values('bob','131');
insert into account(id,name,password) values(last_insert_id(),'bob','123456');
begin;
insert into user(name,phone,email) values('king','186','[email protected]');
insert into account(id,name,password) values(last_insert_id(),'king','9999');
commit;
//last_insert_id()基于客户端连接,安全
insert into user(id,name,phone,email) values(9527,'老王','186','王@qq.com');
insert into account(id,name,password) values(9527,'老王','888888');
select * from user,account where user.id=account.id;
3.加密
有兴趣的小伙伴可以去https://dev.mysql.com/doc/refman/8.0/en/encryption-functions.html了解。
考虑到数据的安全方面,可以采用SHA2,MD5,SHA1以及SHA2 等相关加密方法。
密码处理:
sha1(''):40位
md5(''):32位
sha2('',256):64位
insert into user(name,phone,email) values('tom','150','[email protected]');
insert into account(id,name,password) values(last_insert_id(),'tom',sha('666666',256);
limit: 只要几行。
offset :跳过几行。
关于MySQL Workbeach数据建模,导入数据以及加密处理就到这里了,有问题的小伙伴欢迎留言!