问题

某些时候,我们需要多用户数据库,比如最简单的记事本程序,我如果需要分用户登录的话,那么显然每个用户的记事本库是要分离的,总不能对于所有用户记事本库共享吧,那么就太坑了。

因此我们需要实现对不同用户,其数据分开存储。

解决方案

如果是 MySql,SqlServer 等等大型数据库,毫无疑问主外键嘛(这谁不知道啊,差评)。

或者可以直接用户和数据存放在一张表,每次存放数据的时候,都把当前用户也一并存进去,这样只要通过这张表的userID 字段就能区别出来是哪个用户的数据了,但是这个方法,实在是太冗余了,不可取不可取~

在 Android 中,对于 SQLite 的多用户,如果你熟悉 SQLite 的主外键,那么你就可以点击右上角那个 × ,出门走人了。(WTF)

嗯,作为菜鸡,同时懒,不想搞那么复杂的主外键,单纯实现比较基础的多用户数据库,下面提供一种比较偷鸡的方法:

首先建一个用户表,这样对不同用户我们就可以有一个用户ID,然后,我们就用这个用户ID作为表名,去建立该用户的数据表就好了呀!!

所以,看起来就是这样子的:

  • User(userID,userName,blabla)

    • userID1(data1,age1,blabla)
    • userID2(data2,age2,blabla)

嗯,是不是很投机,是不是很鸡贼~~~~哈哈哈~

嗯,讲完了,本文就此结束(~~~~)

如何实现简单的多用户数据库存储相关推荐

  1. java做一个简单的数据库,哪个嵌入式数据库用Java写成一个简单的键/值存储?

    我最近问了一个关于Neo4j的问题,我有工作,似乎很好.它是可嵌入的,它是用Java编写的,没有(太)许多依赖. 然而,它是一个图形数据库,我不知道这是一个好主意或不使用它作为一个简单的键/值存储. ...

  2. Android数据存储、文件存储、SQLite数据库简单使用、 sharedPreferences存储(五)

    文章目录 5 数据存储 5.1 数据的存储方式 5.2 文件存储 5.2.1 将数据存入文件中 5.2.2 从文件中读取数据 5.2.3 实战演练-保存QQ账号和密码(内部存储) 5.2.4 实战演练 ...

  3. 数据库存储引擎学习总结

    什么是存储引擎以及不同存储引擎特点 http://www.cnblogs.com/wildfox/p/5815414.html 以前一直玩Oracle数据库,整天围着业务需求和执行计划转,刚刚接触My ...

  4. 数据库存储引擎大揭秘,不看不知道这里面的骚操作可真多!

    B+树被广泛应用于MySQL数据库的索引实现,不过并未展开细说,但是呢B+树是一种重要的数据结构,常年出现在各种面试题中,这次就来一起学习下和B+树相关的MySQL索引底层实现的内容. 面试官:简单讲 ...

  5. MySQL—05—MySQL如何处理SQL语句;MySQL数据库存储引擎介绍;

    一. MySQL 中的执行计划 1 MySQL 执行计划 在 MySQL 中可以通过 explain 关键字模拟优化器,执行 SQL 语句,从而知道 MySQL 是 如何处理 SQL 语句的. 2 M ...

  6. Realm数据库存储 使用详解

    文章目录 一 Realm 框架 概念介绍 开发辅助工具 二 Realm 使用教程 1 简单的数据操作 创建数据模型 使用RLMRealm对象保存指定模型 使用RLMRealm对象 更新指定模型 使用R ...

  7. 如何创建最简单的 ABAP 数据库表,以及编码从数据库表中读取数据 (上) 试读版

    ABAP 标准培训教程 BC400 学习笔记之一:ABAP 服务器的架构和一个典型的 ABAP 程序结构介绍 ABAP 标准培训教程 BC400 学习笔记之二:Cross-client 和 Clien ...

  8. java批量处理数据库语句_Java项目中调用bat批处理进行多用户数据库备份

    Java项目中调用bat批处理配合使用BCP进行多用户数据的备份 一.项目需求 最近项目中需要对数据库(Sql Server系列数据库)进行备份.项目中的需求不是简单的整个数据库的备份,而是根据用户来 ...

  9. 国产数据库存储引擎X-Engine的科研之路

    X-Engine是阿里云RDS MySQL 的存储引擎之一,基于Log-structured Merge Tree (LSM-tree),较基于 B-tree 一族的其它存储引擎而言年轻很多,所以在实 ...

最新文章

  1. oracle 触发器 学习笔记
  2. 一文了解web无状态会话token技术JWT
  3. 总结java父类构造函数对子类构造函数的影响
  4. 华为主题锁屏壁纸换不掉_快来看看华为与荣耀手机的这16款主题!别一直用系统默认主题啦!...
  5. python版本的服务器
  6. 老李谈JVM内存模型
  7. Spring学习笔记十二---泛型依赖注入
  8. Redis流量控制策略
  9. DB2在linux安装
  10. python中的面向对象
  11. [Windows Server 2012] 安装IIS8.5及FTP
  12. html文本框 控件,标签和文本框都用于显示文本
  13. Eclipse-复制项目
  14. 网络学习笔记(一):TCP连接的建立与关闭
  15. 从旧版升级到MySql4.1上的中文乱码问题解决方案
  16. 使用DotNetOpenAuth搭建OAuth2.0授权框架——Demo代码简单说明
  17. 计算机维修工具大全,电脑硬件维修测试工具大全(附送各类PC检修资源)
  18. 数据集:CIFAR-10、CIFAR-100、MNIST、SVHN、ImageNet、LSUN
  19. 奈奎斯特采样定理粗略推导
  20. 游戏y欧系家角色设计没灵感怎么办?

热门文章

  1. 解决MAC电脑键盘和触摸板突然没有反应问题
  2. Origin学习笔记——(1)初识Origin
  3. 家庭资产配置:相关性原则(1)
  4. Speedoffice(excel)设置按颜色进行排序
  5. 两篇人脸对齐文献概述
  6. 光标变成下横线,变回竖线方法
  7. 电商ERP系统厂商需服务转型才能改变低迷状况
  8. Java学习笔记 --- 进制转换
  9. ie 检查java_如何判断当前是否为IE浏览器|检查IE浏览器版本信息方法
  10. selenium爬虫图片