AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-2241

Thomas Stringer's questions

Martin Hope
Thomas Stringer
Asked: 2012-01-04 19:10:30 +0800 CST

检索日期范围的最有效方法

  • 18

使用这样的表结构检索日期范围的最有效方法是什么?

create table SomeDateTable
(
    id int identity(1, 1) not null,
    StartDate datetime not null,
    EndDate datetime not null
)
go

假设您想要StartDate和的范围EndDate。所以换句话说,如果StartDate落在 and 之间@StartDateBegin,@StartDateEnd并且EndDate落在 and 之间@EndDateBegin,@EndDateEnd那么做一些事情。

我知道有几种方法可以解决这个问题,但最建议的是什么?

sql-server performance
  • 2 个回答
  • 29934 Views
Martin Hope
Thomas Stringer
Asked: 2011-10-20 18:47:56 +0800 CST

类型字段的 INT 或 CHAR

  • 18

表的最佳设计是什么,Type字段是intor char(1)?换句话说,给定这个模式:

create table Car
(
    Name varchar(100) not null,
    Description varchar(100) not null,
    VehType .... not null
)

VehType成为 aint或 a是否更有效(在性能方面)char(1)?假设您有五种类型的汽车,您应该使用递增值 0 -> 4 还是类型的字符(例如,'v'、's'、'c'、't'、'm')?

如果不止于此,我会使用单独的 Type 表并具有外键关系,但我认为没有必要。

我注意到sys.objects目录视图使用一个字符作为type字段。这有什么原因吗?我只是在这里抓住空气,是我更舒服的吗?

sql-server database-design
  • 2 个回答
  • 6366 Views
Martin Hope
Thomas Stringer
Asked: 2011-10-12 10:03:00 +0800 CST

您是否应该在编写应用程序代码之前设计数据库?

  • 57

设计数据库最简单、最有效的方法是什么?从我的角度来看,应用程序的数据存储设计有两种选择:

  1. 在编写任何应用程序代码之前,尽可能最好地设计数据库。这为您提供了可以使用基本数据结构的优势。在我看来,这样做的缺点是,作为应用程序细节,您将有很多更改,这些更改会影响整个应用程序开发周期中数据更改的内容/位置/方式。
  2. 在应用程序实现时设计数据库。当您在编写应用程序时需要一些数据库对象时,您可以与应用程序并行(按时间顺序)开发数据库。正如我所见,优点是对数据库结构的更改较少。缺点是应用程序代码和数据库开发之间的时间和开发工作的分配。

根据您的经验,您认为什么是最有成效和最有效的方法?

database-design
  • 9 个回答
  • 13515 Views
Martin Hope
Thomas Stringer
Asked: 2011-09-26 10:16:25 +0800 CST

IntelliSense 不工作,但已启用

  • 34

这个问题确实被证明是一个棘手的问题(而且很烦人)。

在 SQL Server Management Studio 2008 中,直到几天前,我的 IntelliSense 都运行良好。然后突然停了下来。在工具栏菜单上启用的图标,在工具 -> 选项 -> 文本编辑器 -> T-SQL -> IntelliSense 下,它表示它已在此处启用。

我尝试使用 Ctrl-Shft-R 重新刷新 IntelliSense 缓存,但这也不起作用。

任何想法我的 IntelliSense 发生了什么以及我需要做些什么才能将其恢复?

sql-server sql-server-2008
  • 8 个回答
  • 142968 Views
Martin Hope
Thomas Stringer
Asked: 2011-09-05 08:55:54 +0800 CST

查询调优应该主动还是被动?

  • 23

作为软件开发人员和有抱负的 DBA,我在设计 SQL Server 数据库时尝试结合最佳实践(99% 的时间我的软件位于 SQL Server 之上)。我在开发之前和开发期间做出尽可能好的设计。

但是,就像任何其他软件开发人员一样,存在添加的功能、错误以及需要更改/创建数据库对象的需求更改。

我的问题是,查询调优应该主动还是被动?换句话说,在对代码/数据库进行大量修改后几周,我是否应该留出一天时间来检查查询性能并据此进行调整?即使它看起来运行正常?

或者我应该只知道低于平均水平的性能应该是数据库检查并返回众所周知的黑板?

查询调优可能会占用大量时间,而且根据初始数据库设计,它的收益可能微乎其微。我很好奇公认的作案手法。

performance query
  • 5 个回答
  • 1244 Views
Martin Hope
Thomas Stringer
Asked: 2011-08-31 13:11:39 +0800 CST

为什么我们不应该允许 NULL?

  • 139

我记得读过一篇关于数据库设计的文章,我还记得它说你应该有 NOT NULL 的字段属性。我不记得为什么会这样。

我所能想到的似乎是,作为应用程序开发人员,您不必测试 NULL和可能不存在的数据值(例如,字符串的空字符串)。

但是对于日期、日期时间和时间(SQL Server 2008),您会怎么做?你必须使用一些历史性的或触底的日期。

对此有什么想法吗?

database-design null
  • 8 个回答
  • 66384 Views
Martin Hope
Thomas Stringer
Asked: 2011-08-19 19:10:38 +0800 CST

抽象存储结构上的数据库放置

  • 6

很多时候我们都听到同样的话。关于在何处放置 OLAP/OLTP 数据库、在何处放置tempdb、在何处放置事务日志等的建议。

但是假设您所处的环境中存储的物理定义对您来说是个谜。换句话说,你肯定能看到逻辑驱动器,你可以给系统管理员打电话并要求更多空间,但你永远不知道什么是不同的物理驱动器(比如幕后有 SAN 或 NAS)。如果您实际上并不知道这一点,那么如何通过将遭受重创的tempdb数据库放在不同的物理驱动器上来遵循最佳实践呢?

这方面的最佳做法是什么?

sql-server sql-server-2008
  • 2 个回答
  • 188 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve