如果我可以配置我的 MySQL 数据库结构并编写 CRUD 语句以直接使用它,那么需要数据库模式(嵌入在数据库中)吗?我从未使用过这些,但我假设它们仅用于性能优化?
我知道可以导出为生成数据库结构的 .sql 命令的模式图,例如使用MySQL Workbench。
如果我可以配置我的 MySQL 数据库结构并编写 CRUD 语句以直接使用它,那么需要数据库模式(嵌入在数据库中)吗?我从未使用过这些,但我假设它们仅用于性能优化?
我知道可以导出为生成数据库结构的 .sql 命令的模式图,例如使用MySQL Workbench。
你的问题对我来说并不完全清楚。如果您要问为什么有模式的可编辑图形表示,那么就不需要数据库结构的图形表示。
当您必须一目了然地了解数据库的布局或与其他人交流您的数据库设计时,它肯定会派上用场。有时编辑图形表示比使用 DDL 语句更容易。
如果您想知道模式存储在数据库中的哪个位置,它会通过标准INFORMATION_SCHEMA表公开。当然 DDL 在数据库中(否则数据库如何知道如何存储数据)
好吧,您可以将数据库中的每一列都创建为 VARCHAR(255),但结果会非常慢。
想想数据库进行查询的方式:它有一个索引(想想字典中的索引)。它通过索引查找并找到正确的记录(字典中的正确页面)。然后,它返回记录。
如果索引很小,则查找速度很快 - 因为索引的更多“页面”可以一次放入内存(想想看 - 如果字典索引是 2 页而不是 500 页,是不是更容易查看? )。因此,使用整数索引进行查询比使用字符串索引要快得多。