我正在处理一个相当大的Oracle数据库项目(尽管我的问题同样适用于其他数据库)。我们有一个Web界面,允许用户搜索几乎任何可能的字段组合。 为了使这些搜索变得更快,我们正在为我们相信用户通常会搜索的字段和字段组合添加索引。然而,由于我们不知道客户将如何使用此软件,很难确定要创建哪些索引。 ...
什么情况下应该使用视图而不是实际的表格?这样做可以带来什么好处? 总体而言,使用视图相比于表格的优势是什么?难道我不应该一开始就按照视图所需要的方式设计表格吗?
我想在数据库表中存储时间,但只需要存储小时和分钟。 我知道可以使用DATETIME并忽略日期的其他部分,但最好的方法是什么,可以避免存储比实际需要更多的信息?
作为 "什么是索引,如何使用它们来优化数据库中的查询?" 的后续,我正在尝试了解索引,哪些列是良好的索引候选项?特别是对于 MS SQL 数据库? 经过一些谷歌搜索,我读到的所有内容都表明,通常递增且唯一的列会成为良好的索引(例如 MySQL 的自动递增),我理解这一点,但我正在使用 MS ...
很抱歉提出这样的初学者问题,但是在数据库中使用一对一关系是否有真正的必要?您可以在一个表格内实现所有必要的字段。即使数据变得非常大,您也可以在SELECT语句中枚举所需的列名,而不是使用SELECT *。那么什么情况下需要进行这种分离呢?
我需要创建一个数据库表来存储不同的变更记录/审计(当某些东西被添加、删除、修改等)。我不需要存储特别详细的信息,所以我考虑使用以下内容: id(事件ID) 触发事件的用户 事件名称 事件描述 事件时间戳 我有什么遗漏的吗?显然,我可以不断改进设计,尽管我不打算让它变得复杂(创建其他事件...
你知道一个学习如何设计SQL解决方案的好来源吗? 除了基本的语法之外,我还想找一些能帮助我理解以下内容的资料: 应该建立哪些表以及如何将它们链接起来 如何为不同规模的系统进行设计(从小型客户端APP到大型分布式网站) 如何编写有效/高效/优雅的SQL查询
这个例子是取自w3schools。CREATE TABLE Persons ( P_Id int NOT NULL, LastName varchar(255) NOT NULL, FirstName varchar(255), Address varchar(...
假设你有一个名为Orders的表格,其中有一个外键关联到一个Customer Id。现在,假设你想添加一个没有Customer Id的Order(这是否可行是另一个问题),你需要将外键设置为空值。这种做法是否不好,还是你更愿意使用Orders和Customers之间的链接表?虽然这种关系是一对...