Database 一个数据库中可以接受多少个表?

Database 一个数据库中可以接受多少个表?,database,database-design,Database,Database Design,我目前正在为文件共享服务设计一个数据库。在此服务上创建的每个文件夹都将有自己的表(文件夹)。每个文件夹也将添加到包含文件夹及其所有者的表中 这是坏习惯吗?原因是我有几个功能,我想纳入这项服务,这需要我有一个表,为每个文件夹,即权限/不同的访问级别 e、 g文件夹A的所有者添加了3个用户,他们对文件夹User1、User2和User3具有不同的访问级别 User1只有查看权限 User2具有编辑权限 User3具有完全访问权限 除了为每个文件夹创建一个表之外,我看不到其他方法的原因是,如果我有一个

我目前正在为文件共享服务设计一个数据库。在此服务上创建的每个文件夹都将有自己的表(文件夹)。每个文件夹也将添加到包含文件夹及其所有者的表中

这是坏习惯吗?原因是我有几个功能,我想纳入这项服务,这需要我有一个表,为每个文件夹,即权限/不同的访问级别

e、 g文件夹A的所有者添加了3个用户,他们对文件夹User1、User2和User3具有不同的访问级别

User1只有查看权限

User2具有编辑权限

User3具有完全访问权限

除了为每个文件夹创建一个表之外,我看不到其他方法的原因是,如果我有一个具有常用属性的文件/文件夹表,我可以将有权访问该文件夹的用户及其权限级别放在哪里?另外,User1如何通过搜索整个数据库等方式查看他们可以访问的文件夹


我认为这不是一个好做法的原因,是数据库中的表的数量?

我建议一个表用于文件夹,另一个表用于用户,第三个表用于用户文件夹权限。如果要生成多个表,且所有表都具有相同的列,则可能没有正确地进行规范化

Table: Folders
    FolderId
    FolderName
    OwnerUserId     -- references Users table to identify the owner
    (additional columns as necessary to describe a single folder)

Table: Users
    UserId
    UserName
    (additional columns as necessary to describe a single user)

Table: FolderUsers
    FolderId    -- references Folders table
    UserId      -- references Users table
    Permission  -- (ViewOnly, Edit, Full, etc)

FolderUsers表称为连接表,它允许文件夹和用户之间存在多对多关系,只需为每个文件夹/用户组合添加一行即可。

我建议为文件夹创建一个表,为用户创建另一个表,为用户文件夹权限创建第三个表。如果要生成多个表,且所有表都具有相同的列,则可能没有正确地进行规范化

Table: Folders
    FolderId
    FolderName
    OwnerUserId     -- references Users table to identify the owner
    (additional columns as necessary to describe a single folder)

Table: Users
    UserId
    UserName
    (additional columns as necessary to describe a single user)

Table: FolderUsers
    FolderId    -- references Folders table
    UserId      -- references Users table
    Permission  -- (ViewOnly, Edit, Full, etc)

FolderUsers表称为连接表,它允许文件夹和用户之间存在多对多关系,只需为每个文件夹/用户组合添加一行即可。

在问题以基于意见的方式结束之前,我建议您绘制ER图。。。您将能够更好地完成表。每个文件夹使用一个表只是为了避免有权限表?文件夹----权限--作为应用程序正常操作的一部分,需要更改数据库架构是一个简单的问题。你应该(几乎)不想/不需要这样做。回答标题中的问题,我认为在1万亿个表之后,数据库会变得有些笨拙。在问题以基于意见的方式结束之前,我建议你绘制ER图。。。您将能够更好地完成表。每个文件夹使用一个表只是为了避免有权限表?文件夹----权限--作为应用程序正常操作的一部分,需要更改数据库架构是一个简单的问题。回答标题中的问题,我认为在一万亿个表之后,数据库会变得有些笨拙。