database-design相关内容

MySQL - 一对一的关系?

我正在努力实现“一对一"MySQL 数据库中的关系.例如,假设我有一个用户表和一个帐户表.我想确保一个用户只能拥有一个帐户.并且每个用户只能有一个帐户. 我为此找到了两个解决方案,但不知道该使用什么,还有其他选择吗. 第一个解决方案: DROP DATABASE IF EXISTS 测试;创建数据库测试CHARSET = utf8 COLLATE = utf8_general_ci; ..
发布时间:2021-12-26 21:20:29 数据库

SQL Server:如何限制表包含单行?

我想在我的应用程序的配置表中存储一行.我想强制此表只能包含一行. 强制执行单行约束的最简单方法是什么? 解决方案 您确保其中一列只能包含一个值,然后将其设为主键(或应用唯一性约束). 创建表 T1(锁定字符(1)不为空,/* 其他列 */,约束 PK_T1 PRIMARY KEY(锁定),约束 CK_T1_Locked CHECK (Lock='X')) 我在各种数据库中有许多这 ..
发布时间:2021-12-26 21:20:22 数据库

PHP 分布式系统剖析

我遇到了一个问题,让我很难找到理想的解决方案,为了更好地解释它,我将在这里公开我的场景. 我有一个接收订单的服务器来自几个客户.每个客户都会提交一组重复性任务应该在某个指定的时间执行间隔,例如:客户端 A 提交任务AA 应该每次执行2009-12-31 和 2009-12-31 之间的分钟2010-12-31;所以如果我的数学是对的大约有 525 600 次操作一年,给予更多的客户和任务让服 ..
发布时间:2021-12-26 21:20:12 PHP

Django 中的多租户 SAAS

我已经在 PHP/Laravel 中开发了多租户 SAAS 应用程序,但最近我在 Django/Python 中开发了一个挑战.不过,我仍在学习 Django,而且我真的很喜欢 Django rest 框架 (DRF).但是我很难弄清楚下面突出显示的区域,如果有人显示出一些亮光,我会很高兴: 如何处理子域/域并选择合适的租户数据库 如何在django中管理和动态处理不同的数据库 多租户应 ..
发布时间:2021-12-26 21:20:05 Python

SQL Server 中数据库范围的唯一但简单的标识符

首先,我知道这个问题,以及建议(使用GUID) 不适用于我的情况. 我想要简单的 UID,以便我的用户可以轻松地通过电话传达此信息: 您好,订单有问题1584 相对于 你好,订单有问题4daz33-d4gerz384867-8234878-14 我希望它们是唯一的(数据库范围内),因为我有几种不同类型的“对象"……有订单 ID、交货 ID 和账单 ID,因为没有一对一 ..
发布时间:2021-12-26 21:19:56 数据库

单列表是好的设计吗?

一张只有一列的表格可以吗?我知道这在技术上并不违法,但它被认为是糟糕的设计吗? 编辑: 这里有几个例子: 您有一个包含 50 个有效美国州代码的表格,但您无需存储详细的州名. 电子邮件黑名单. 有人提到添加关键字段.在我看来,这一列应该是主键. 解决方案 是的,以最高效的方式设计表格无疑是一种很好的设计.“糟糕的 RDBMS 设计"通常以低效率为中心. 但是 ..
发布时间:2021-12-26 21:19:51 其他开发

在数据库中存储枚举的最佳方法

使用 C# 和 Visual Studio 以及 MySQL 数据连接器在数据库中存储枚举的最佳方法是什么. 我将创建一个包含 100 多个枚举的新项目,其中大部分必须存储在数据库中.为每个转换器创建转换器将是一个漫长的过程,因此我想知道 Visual Studio 或其他人是否有任何我没有听说过的方法. 解决方案 [Required]公共虚拟 int PhoneTypeId{得到 ..
发布时间:2021-12-26 21:19:46 C#/.NET

创建一个线程私人消息系统,如 facebook 和 gmail

我正在创建一个类似于 gmail 和 facebook 的线程消息系统,其中收件箱列出了显示主题、发件人姓名和最新消息时间戳的最新线程. 这是我的表的设置方式: 用户:用户身份用户名线:线程ID标题to_id保持读书from_idfrom_keep日期信息:message_id线程IDto_idfrom_id消息文本日期 我现在正在做的是当用户创建一条新消息时,它在线程表中创建一个新线程 ..
发布时间:2021-12-26 21:19:38 PHP

我看到 VARCHAR(255) 经常使用(而不是其他长度)是否有充分的理由?

在多个课程、书籍和工作中,我看到定义为 VARCHAR(255) 的文本字段是“短"文本的默认值.除了 一个不错的整数?是否是过去某个时候有充分理由(无论今天是否适用)的坚持? 我当然意识到,如果您以某种方式知道字符串的最大长度,那么更严格的限制会更理想.但是,如果您使用的是 VARCHAR(255),这可能表明您不知道最大长度,只知道它是一个“较短"的字符串. 注意:我发现了这个问题 ..
发布时间:2021-12-26 21:19:27 其他开发

“徽章"的数据库架构系统&任意标准 (MySQL/PHP)

快速问题: 总而言之,我对如何设计这样一个数据库感到有些困惑,该数据库允许无限期创建徽章规则,而不需要对数据库中先前存在的用户表进行结构更改. 存储徽章标题、标准等.该表会是什么样子? badge_id (1) badge_title(10K 徽章) badge_image (10k.jpg) badge_criteria ([posts] >= 10000) ... ..
发布时间:2021-12-26 21:19:16 其他开发

在 SQL Server 数据库中使用单行配置表.馊主意?

在开发购物车应用程序时,我发现我需要根据管理员的偏好和要求保存设置和配置.此信息可以是公司信息、运输帐户 ID、PayPal API 密钥、通知首选项等中的任何信息. 在关系数据库系统中创建一个表来存储单行似乎非常不合适. 存储这些信息的合适方式是什么? 注意:我的 DBMS 是 SQL Server 2008,编程层是用 ASP.NET(在 C# 中)实现的. 解决方案 ..

可视化数据库架构的好工具?

是否有任何好的工具可以将预先存在的数据库模式可视化?如果重要的话,我正在使用 MySQL. 我目前正在使用 MySQL Workbench 来处理 SQL 创建脚本转储,但它笨重、缓慢,并且需要手动拖动所有表(如果它不是那么慢也没关系). 解决方案 我发现 SchemaSpy 相当不错 -每次架构更改时您都必须运行脚本,但这没什么大不了的. 正如评论中所指出的,它还有一个 GU ..
发布时间:2021-12-26 21:18:57 数据库

每个开发人员都应该了解哪些有关数据库的知识?

无论我们喜欢与否,我们中的大多数开发人员要么经常使用数据库,要么有一天可能不得不使用数据库.考虑到滥用和滥用的数量,以及每天出现的数据库相关问题的数量,可以说开发人员应该了解某些概念——即使他们不设计或使用今天的数据库.所以: 开发人员和其他软件专业人士应该了解哪些有关数据库的重要概念? 响应指南: 保持清单简短. 每个答案一个概念最好. 要具体. “数据建模"可能是一 ..
发布时间:2021-12-26 21:18:48 其他开发

唯一目的是指定另一个表的子集的表

我正在设计的数据库有一个 employees 表;可以有多种类型的员工,其中一种是医疗员工.数据库还需要描述医务人员与其具备的能力之间的多对多关系. 是否可以创建一个只有 id 列的表 medical_employees,其唯一目的是指定哪些员工是医生?id 列有一个引用 employees 表的外键约束.下面的代码应该让我的问题更清楚: /* 定义一个通用员工 */CREATE TABL ..
发布时间:2021-12-26 21:18:40 数据库

对整个数据库使用共享列的主表是一种很好的做法吗?

下面,我将解释我正在处理的数据库的基本设计.因为我不是 DB,所以我担心我的轨道是好的还是坏的,所以我想把它放在堆栈上以获得一些建议.我找不到适合我的设计的类似讨论. 在我的数据库中,每个表都被视为一个实体.实体可以是客户帐户、个人、用户、一组员工信息、承包商信息、卡车、飞机、产品、支持票等.这是我当前的实体(表格)... 人 用户 帐户 帐户用户 地址 员工信息 承包商信 ..

基本数据库设计:类型实例列表

这是一个关于数据库设计的初学者问题.假设我们有一个有很多用户的博客网站,每个用户都有一些博客文章.我们希望快速找到给定用户撰写的所有文章.我们可以在 post 表中搜索所有具有给定用户 ID 的博客文章.我们还可以将用户表设计为包含用户帖子的列表.这可能意味着,存储一串逗号分隔的帖子 ID.这样做的正确方法是什么? 解决方案 您正在寻找 数据库规范化,一种防止: 冗余(多次存储相同的 ..
发布时间:2021-12-26 21:18:21 其他开发

子类型的表关系

我有一个名为“网站"的父表,其中包含有关网站的记录.我有一个名为“SupportSystem"的子表,它保存有关不同类型支持系统(例如电子邮件、电话、票务、实时聊天等)的记录.有一个中间表“Website_SupportSystem"以多对多关系连接这些表. 如果网站的 SupportSystem 是票务,我还想记录软件平台.例如WHMCS.我的直觉是创建一个名为 SupportPlatfo ..
发布时间:2021-12-26 21:17:54 数据库

EF Code-First 继承单个基类以实现简单的历史记录

我在执行我的计划时遇到了一些错误,如下所述.在这一点上,我对解决特定错误不太感兴趣,因为我很关心这是否是一个好主意. 所有具有历史功能的对象都来自具有单个属性的公共类 AuditableObject public Guid ID { get;放;}. 后代可能是: public class Taco : AuditableObject { public string Season ..

数据库设计:OR 关系

我有一个带有“用户"表的数据库,其中包含有关我的用户的数据.每个用户都将链接到一家公司或一所大学.我希望有两个单独的表“学院"和“公司",每个表都有一个字段“ID".那么如何将用户表中的每条记录链接到公司或大学? 基本的事情是我想在数据库中建立一个“或"关系. 解决方案 您可以使用子类型/超类型关系.保留组织表中的所有常见字段.College 和 company 表仅包含特定于这些实 ..
发布时间:2021-12-26 21:17:41 其他开发