我经常使用 SSMS 来测试我的慢速存储过程是否缺少索引。每当我看到“缺少索引(影响 xxx)”时,我的下意识反应就是创建新索引。据我所知,这每次都会导致更快的查询。
为什么我不应该继续这样做?
在数据库中定义外键还是在应用程序的代码部分中定义外键更好?
除了使用 SQL Server Profiler 之外,还有什么方法可以跟踪正在使用的存储过程,或者至少是上次执行它们的时间?
将来自其他 DBMS 的表迁移到 Oracle 时,标准任务之一是将所有VARCHAR(n)字段替换为VARCHAR2(n)字段(前提是 n <= 4000)。
为什么 Oracle 称这种数据类型VARCHAR2而不是VARCHAR像其他 DBMS 一样?
我的主要技能是使用 SQL Server,但有人要求我对 Oracle 查询进行一些调整。我编写了以下 SQL:
declare @startDate int
select @startDate = 20110501
Run Code Online (Sandbox Code Playgroud)
我得到这个错误:
declare @startDate int
select @startDate = 20110501
Error at line 1
ORA-06550: line 1, column 9:
PLS-00103: Encountered the symbol "@" when expecting one of the following:
begin function package pragma procedure subtype type use
<an identifier> <a double-quoted delimited-identifier> form
current cursor
Run Code Online (Sandbox Code Playgroud)
如何在 Oracle 中声明和使用变量?
我在 SSMS 周围闲逛,注意到我的INT列的“大小”是 4 个字节(预期),但看到我的BIT列是一个完整字节时,我有点震惊。
我误解了我在看什么吗?
我正在尝试在 Management Studio 中创建一个表,在阅读了新的(从 SQL 2005 开始)NEWSEQUENTIALID()函数后,我想试一试。
这就是我正在做的:

但它不让我。我得到的错误信息是:
'FormTemplate (Forms)' table - Error validating the default for column 'FormTemplateId'.
Run Code Online (Sandbox Code Playgroud)
我在这里错过了一个技巧吗?我肯定在运行 SQL Server 2008 R2。
我正在更新我的IDENTITY溢出检查脚本以考虑DECIMAL和NUMERIC IDENTITYcolumns。
作为检查的一部分,我计算每一IDENTITY列的数据类型范围的大小;我用它来计算该范围的百分比已用完。因为DECIMAL和NUMERIC 该范围的大小2 * 10^p - 2p是精度在哪里。
我用DECIMAL和NUMERIC IDENTITY列创建了一堆测试表,并尝试按如下方式计算它们的范围:
SELECT POWER(10.0, precision)
FROM sys.columns
WHERE
is_identity = 1
AND type_is_decimal_or_numeric
;
Run Code Online (Sandbox Code Playgroud)
这引发了以下错误:
Msg 8115, Level 16, State 6, Line 1
Arithmetic overflow error converting float to data type numeric.
Run Code Online (Sandbox Code Playgroud)
我将它缩小到IDENTITY类型的列DECIMAL(38, 0)(即具有最大精度),然后我POWER()直接尝试对该值进行计算。
以下所有查询
SELECT POWER(10.0, 38.0);
SELECT CONVERT(FLOAT, (POWER(10.0, 38.0)));
SELECT CAST(POWER(10.0, 38.0) …Run Code Online (Sandbox Code Playgroud) 对您 DBA 等人的问题:您如何在没有“亲自”或在职培训的情况下学习成为 DBA 的技能?
我在 DB 工作中的经验是通过 MyPHPAdmin 或类似的东西来处理 MySQL。没有做大量的深入工作。
上课?SQL 书籍?
我是埃因霍温 Fontys 大学的学生,我目前正在进行一系列采访以帮助开发 SQL Server 工具,我想从该领域的专家那里得到反馈。
我的问题之一是:
您在使用 SQL Server 实例时遇到的前 3 个性能问题是什么?您如何确定这些问题?
我对用于衡量这一点的脚本和工具特别感兴趣。
sql-server ×5
datatypes ×3
oracle ×2
ssms ×2
career ×1
foreign-key ×1
index ×1
oracle-10g ×1
performance ×1
statistics ×1
syntax ×1
t-sql ×1