小编Raj*_*ore的帖子

什么是柱状数据库?

我一直在仓库工作一段时间.

我对Columnar数据库以及它们为数据检索提供的速度感到好奇.

我有多部分问题:

  • Columnar数据库如何工作?
  • 它们与关系数据库有何不同?

sql database

91
推荐指数
2
解决办法
7万
查看次数

使用存在1或存在的子查询*

我以前写这样的EXISTS检查:

IF EXISTS (SELECT * FROM TABLE WHERE Columns=@Filters)
BEGIN
   UPDATE TABLE SET ColumnsX=ValuesX WHERE Where Columns=@Filters
END
Run Code Online (Sandbox Code Playgroud)

前一个DBA中的一个告诉我,当我做一个EXISTS条款时,请使用SELECT 1而不是SELECT *

IF EXISTS (SELECT 1 FROM TABLE WHERE Columns=@Filters)
BEGIN
   UPDATE TABLE SET ColumnsX=ValuesX WHERE Columns=@Filters
END
Run Code Online (Sandbox Code Playgroud)

这真的有所作为吗?

sql t-sql sql-server

84
推荐指数
4
解决办法
2万
查看次数

禁用事务日志

Oracle具有可以发出的SQL命令,因此不会记录事务.SQL Server 2008有类似的东西吗?

我的场景:我们需要服务器上的Tx日志(Dev,QA,Prod),但也许我们可以在开发者机器上没有它们.

sql-server sql-server-2008

73
推荐指数
3
解决办法
15万
查看次数

文件名中的批处理命令日期和时间

我在命令行上使用WinZip压缩文件.由于我们每天都会存档,因此我尝试为这些文件添加日期和时间,以便每次都自动生成一个新文件.

我使用以下命令生成文件名.将其粘贴到命令行,您应该看到一个带有日期和时间组件的文件名.

echo Archive_%date:~-4,4%%date:~-10,2%%date:~-7,2%_%time:~0,2%%time:~3,2%%time:~6,2%.zip
Run Code Online (Sandbox Code Playgroud)

产量

Archive_20111011_ 93609.zip
Run Code Online (Sandbox Code Playgroud)

但是,我的问题是AM vs PM.AM时间戳给我时间9(带有前导空格)与10自然占据两个空格.

我想我的问题将延续到头九天,前九个月等等.

我如何解决这个问题,以便包含前导零而不是前导空格,所以我得到了Archive_20111011_093609.zip

windows command-line cmd batch-file

67
推荐指数
6
解决办法
25万
查看次数

我想要Spy ++,但我没有Visual Studio

我只有SQL Server 2008客户端工具.我想使用Spy ++,但当然,它只附带Visual Studio安装.

我可以使用Spy ++有一个很好的替代品吗?

.net spy++

51
推荐指数
5
解决办法
7万
查看次数

您最有用的数据库标准是什么?

我有一些想法,有些是我随着时间的推移积累的,但我真的想知道在建模数据库时是什么让事情顺利进行:

  1. 表名与主键名和描述键匹配
  2. 模式是功能区域
  3. 尽可能避免使用复合主键(使用唯一约束)
  4. Camel Case表名和字段名
  5. 不要使用tbl_为表添加前缀,或者使用SP_为procs添加前缀(不使用匈牙利语表示法)
  6. OLTP数据库应该至少在BCNF/4NF中

sql database standards entity-relationship

44
推荐指数
11
解决办法
1万
查看次数

无法获取有关Windows NT组用户的信息

我正在使用脚本创建SQL Server复制.当我尝试执行时

The job failed. Unable to determine if the owner (STAR\moorer7) of job L3BPT2M-Atlas-14 has server access (reason: Could not obtain information about Windows NT group/user 'STAR\moorer7', error code 0x5. [SQLSTATE 42000] (Error 15404)).

这是由定义复制的脚本创建的作业.

我该如何调试?

sql sql-server replication sql-server-agent

39
推荐指数
3
解决办法
9万
查看次数

连接行值T-SQL

我试图将一些数据汇总到一个报告中,并需要连接其中一个表的行值.这是基本的表结构:

评测

 ReviewID  
 ReviewDate  
Run Code Online (Sandbox Code Playgroud)

评审

 ReviewerID  
 ReviewID  
 UserID  
Run Code Online (Sandbox Code Playgroud)

用户

UserID  
FName  
LName  
Run Code Online (Sandbox Code Playgroud)

这是M:M的关系.每个评论都可以有很多评论者; 每个用户都可以与许多评论相关联.

基本上,我想要看的是Reviews.ReviewID,Reviews.ReviewDate,以及该Review的所有相关用户的FName的串联字符串(逗号分隔).

代替:

ReviewID---ReviewDate---User  
1----------12/1/2009----Bob  
1----------12/1/2009----Joe  
1----------12/1/2009----Frank  
2----------12/9/2009----Sue  
2----------12/9/2009----Alice  
Run Code Online (Sandbox Code Playgroud)

显示这个:

ReviewID---ReviewDate----Users  
1----------12/1/2009-----Bob, Joe, Frank  
2----------12/9/2009-----Sue, Alice
Run Code Online (Sandbox Code Playgroud)

我发现这篇文章描述了一些方法,但是大多数方法似乎只处理一个表而不是多个; 不幸的是,我的SQL-fu不够强大,无法根据我的情况进行调整.我对该网站上使用FOR XML PATH()的示例特别感兴趣,因为它看起来最干净,最直接.

SELECT p1.CategoryId,
( SELECT ProductName + ', '
  FROM Northwind.dbo.Products p2
  WHERE p2.CategoryId = p1.CategoryId
  ORDER BY ProductName FOR XML PATH('')
) AS Products
FROM Northwind.dbo.Products p1
GROUP BY CategoryId;
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我一把吗?任何帮助将不胜感激!

sql t-sql sql-server concatenation

33
推荐指数
7
解决办法
5万
查看次数

将INT更改为BigInt

我有一个仓库表,里面有16吨数据.我有几个Integer列.我们必须为我们编写的每个查询将这些转换为BIGINT,因为SUM太大而不适合INT.

我们现在正在开发一个新的数据集市.所以我们想,为什么不将所有这些列更改为BIGINT,我们不必担心新的查询集.

由于数据已经加载,我想我会使用Management Studio并更改数据类型.但我首先得到一个警告:

Saving Definition Changes to tables with large amounts of data could take a considerable amount of time. While changes are being saved, table data will not be accessible.

然后我收到一个错误:

Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.

我该如何解决这个问题?

sql sql-server-2005

28
推荐指数
4
解决办法
7万
查看次数

正确的术语,我应该说索引或索引吗?

我对表上的索引有疑问,我把它放在Stack Overflow上.我有我的答案,但有人更改了字indicesindexes.

我们知道复数IndexIndices,但我们也知道几乎每个人都喜欢"错误"这个词.

这样的其他"错误"术语究竟应该是什么,但正在超越他们的"正确"同行?

indexing terminology indices

27
推荐指数
4
解决办法
1万
查看次数