database-design相关内容
我正在努力实现“一对一"MySQL 数据库中的关系.例如,假设我有一个用户表和一个帐户表.我想确保一个用户只能拥有一个帐户.并且每个用户只能有一个帐户. 我为此找到了两个解决方案,但不知道该使用什么,还有其他选择吗. 第一个解决方案: DROP DATABASE IF EXISTS 测试;创建数据库测试CHARSET = utf8 COLLATE = utf8_general_ci;
..
我想在我的应用程序的配置表中存储一行.我想强制此表只能包含一行. 强制执行单行约束的最简单方法是什么? 解决方案 您确保其中一列只能包含一个值,然后将其设为主键(或应用唯一性约束). 创建表 T1(锁定字符(1)不为空,/* 其他列 */,约束 PK_T1 PRIMARY KEY(锁定),约束 CK_T1_Locked CHECK (Lock='X')) 我在各种数据库中有许多这
..
我遇到了一个问题,让我很难找到理想的解决方案,为了更好地解释它,我将在这里公开我的场景. 我有一个接收订单的服务器来自几个客户.每个客户都会提交一组重复性任务应该在某个指定的时间执行间隔,例如:客户端 A 提交任务AA 应该每次执行2009-12-31 和 2009-12-31 之间的分钟2010-12-31;所以如果我的数学是对的大约有 525 600 次操作一年,给予更多的客户和任务让服
..
我已经在 PHP/Laravel 中开发了多租户 SAAS 应用程序,但最近我在 Django/Python 中开发了一个挑战.不过,我仍在学习 Django,而且我真的很喜欢 Django rest 框架 (DRF).但是我很难弄清楚下面突出显示的区域,如果有人显示出一些亮光,我会很高兴: 如何处理子域/域并选择合适的租户数据库 如何在django中管理和动态处理不同的数据库 多租户应
..
首先,我知道这个问题,以及建议(使用GUID) 不适用于我的情况. 我想要简单的 UID,以便我的用户可以轻松地通过电话传达此信息: 您好,订单有问题1584 相对于 你好,订单有问题4daz33-d4gerz384867-8234878-14 我希望它们是唯一的(数据库范围内),因为我有几种不同类型的“对象"……有订单 ID、交货 ID 和账单 ID,因为没有一对一
..
一张只有一列的表格可以吗?我知道这在技术上并不违法,但它被认为是糟糕的设计吗? 编辑: 这里有几个例子: 您有一个包含 50 个有效美国州代码的表格,但您无需存储详细的州名. 电子邮件黑名单. 有人提到添加关键字段.在我看来,这一列应该是主键. 解决方案 是的,以最高效的方式设计表格无疑是一种很好的设计.“糟糕的 RDBMS 设计"通常以低效率为中心. 但是
..
使用 C# 和 Visual Studio 以及 MySQL 数据连接器在数据库中存储枚举的最佳方法是什么. 我将创建一个包含 100 多个枚举的新项目,其中大部分必须存储在数据库中.为每个转换器创建转换器将是一个漫长的过程,因此我想知道 Visual Studio 或其他人是否有任何我没有听说过的方法. 解决方案 [Required]公共虚拟 int PhoneTypeId{得到
..
我正在创建一个类似于 gmail 和 facebook 的线程消息系统,其中收件箱列出了显示主题、发件人姓名和最新消息时间戳的最新线程. 这是我的表的设置方式: 用户:用户身份用户名线:线程ID标题to_id保持读书from_idfrom_keep日期信息:message_id线程IDto_idfrom_id消息文本日期 我现在正在做的是当用户创建一条新消息时,它在线程表中创建一个新线程
..
在多个课程、书籍和工作中,我看到定义为 VARCHAR(255) 的文本字段是“短"文本的默认值.除了 一个不错的整数?是否是过去某个时候有充分理由(无论今天是否适用)的坚持? 我当然意识到,如果您以某种方式知道字符串的最大长度,那么更严格的限制会更理想.但是,如果您使用的是 VARCHAR(255),这可能表明您不知道最大长度,只知道它是一个“较短"的字符串. 注意:我发现了这个问题
..
快速问题: 总而言之,我对如何设计这样一个数据库感到有些困惑,该数据库允许无限期创建徽章规则,而不需要对数据库中先前存在的用户表进行结构更改. 存储徽章标题、标准等.该表会是什么样子? badge_id (1) badge_title(10K 徽章) badge_image (10k.jpg) badge_criteria ([posts] >= 10000) ...
..
在开发购物车应用程序时,我发现我需要根据管理员的偏好和要求保存设置和配置.此信息可以是公司信息、运输帐户 ID、PayPal API 密钥、通知首选项等中的任何信息. 在关系数据库系统中创建一个表来存储单行似乎非常不合适. 存储这些信息的合适方式是什么? 注意:我的 DBMS 是 SQL Server 2008,编程层是用 ASP.NET(在 C# 中)实现的. 解决方案
..
是否有任何好的工具可以将预先存在的数据库模式可视化?如果重要的话,我正在使用 MySQL. 我目前正在使用 MySQL Workbench 来处理 SQL 创建脚本转储,但它笨重、缓慢,并且需要手动拖动所有表(如果它不是那么慢也没关系). 解决方案 我发现 SchemaSpy 相当不错 -每次架构更改时您都必须运行脚本,但这没什么大不了的. 正如评论中所指出的,它还有一个 GU
..
无论我们喜欢与否,我们中的大多数开发人员要么经常使用数据库,要么有一天可能不得不使用数据库.考虑到滥用和滥用的数量,以及每天出现的数据库相关问题的数量,可以说开发人员应该了解某些概念——即使他们不设计或使用今天的数据库.所以: 开发人员和其他软件专业人士应该了解哪些有关数据库的重要概念? 响应指南: 保持清单简短. 每个答案一个概念最好. 要具体. “数据建模"可能是一
..
我正在设计的数据库有一个 employees 表;可以有多种类型的员工,其中一种是医疗员工.数据库还需要描述医务人员与其具备的能力之间的多对多关系. 是否可以创建一个只有 id 列的表 medical_employees,其唯一目的是指定哪些员工是医生?id 列有一个引用 employees 表的外键约束.下面的代码应该让我的问题更清楚: /* 定义一个通用员工 */CREATE TABL
..
下面,我将解释我正在处理的数据库的基本设计.因为我不是 DB,所以我担心我的轨道是好的还是坏的,所以我想把它放在堆栈上以获得一些建议.我找不到适合我的设计的类似讨论. 在我的数据库中,每个表都被视为一个实体.实体可以是客户帐户、个人、用户、一组员工信息、承包商信息、卡车、飞机、产品、支持票等.这是我当前的实体(表格)... 人 用户 帐户 帐户用户 地址 员工信息 承包商信
..
这是一个关于数据库设计的初学者问题.假设我们有一个有很多用户的博客网站,每个用户都有一些博客文章.我们希望快速找到给定用户撰写的所有文章.我们可以在 post 表中搜索所有具有给定用户 ID 的博客文章.我们还可以将用户表设计为包含用户帖子的列表.这可能意味着,存储一串逗号分隔的帖子 ID.这样做的正确方法是什么? 解决方案 您正在寻找 数据库规范化,一种防止: 冗余(多次存储相同的
..
我经常看到一些这样的数据库设计: 案例 1: 用户表 --id[自动增加] --用户名 --密码 --电子邮件 情况 2: 用户表 --用户名 --密码 --电子邮件 角色表: --RoleID --角色名称 用户表角色: --id[自动增加] --用户名 --RoleID 我有以下问
..
我有一个名为“网站"的父表,其中包含有关网站的记录.我有一个名为“SupportSystem"的子表,它保存有关不同类型支持系统(例如电子邮件、电话、票务、实时聊天等)的记录.有一个中间表“Website_SupportSystem"以多对多关系连接这些表. 如果网站的 SupportSystem 是票务,我还想记录软件平台.例如WHMCS.我的直觉是创建一个名为 SupportPlatfo
..
我在执行我的计划时遇到了一些错误,如下所述.在这一点上,我对解决特定错误不太感兴趣,因为我很关心这是否是一个好主意. 所有具有历史功能的对象都来自具有单个属性的公共类 AuditableObject public Guid ID { get;放;}. 后代可能是: public class Taco : AuditableObject { public string Season
..
我有一个带有“用户"表的数据库,其中包含有关我的用户的数据.每个用户都将链接到一家公司或一所大学.我希望有两个单独的表“学院"和“公司",每个表都有一个字段“ID".那么如何将用户表中的每条记录链接到公司或大学? 基本的事情是我想在数据库中建立一个“或"关系. 解决方案 您可以使用子类型/超类型关系.保留组织表中的所有常见字段.College 和 company 表仅包含特定于这些实
..