在您的C#源代码或存储过程中保留SQL有哪些优点/缺点?我一直在与一位朋友讨论我们正在开发的一个开源项目(C#ASP.NET论坛).目前,大多数数据库访问都是通过在C#中构建SQL内联并调用SQL Server DB来完成的.所以我试图确定哪个特定项目最好.
到目前为止,我有:
代码中的优点:
存储过程的优点:
每次都设置一个新的SQL表或varchar向现有表添加一个新列,我想知道一件事:什么是最好的值length.
所以,比方说,你有一个名为nametype 的列varchar.所以,你必须选择长度.我想不出一个名字> 20个字符,但你永远不会知道.但不是使用20,而是总是向下舍入到下一个2 ^ n数字.在这种情况下,我会选择32作为长度.我这样做,因为从计算机科学家的角度来看,数字2 ^ n看起来even比其他数字更多,我只是假设下面的架构可以比其他更好地处理这些数字.
另一方面,当您选择创建varchar列时,MSSQL服务器将默认长度值设置为50.这让我想到了.为什么50?它只是一个随机数,还是基于平均列长,或者是什么?
它也可能 - 或者可能是 - 不同的SQL服务器实现(如MySQL,MSSQL,Postgres,...)具有不同的最佳列长度值.
我正在使用SQL Server 2008 Enterprise.我想看到任何活动的SQL Server连接,以及所有连接的相关信息,例如从哪个IP地址连接到哪个数据库或其他东西.
是否存在解决此问题的命令?
我已经阅读了MS数据透视表上的内容,但我仍然遇到问题.
我有一个正在创建的临时表,我们会说第1列是商店号,第2列是周数,最后第3列是某种类型的总和.周数也是动态的,商店数是静态的.
Store Week xCount
------- ---- ------
102 1 96
101 1 138
105 1 37
109 1 59
101 2 282
102 2 212
105 2 78
109 2 97
105 3 60
102 3 123
101 3 220
109 3 87
Run Code Online (Sandbox Code Playgroud)
我希望它作为一个数据透视表出来,像这样:
Store 1 2 3 4 5 6....
-----
101 138 282 220
102 96 212 123
105 37
109
Run Code Online (Sandbox Code Playgroud)
将数字存储在侧面,将数字存储在顶部.
a clustered和a 之间有什么区别non-clustered index?
我有一个start_date和end_date.我想获得这两个日期之间的日期列表.任何人都可以帮我指出我的查询中的错误.
select Date,TotalAllowance
from Calculation
where EmployeeId=1
and Date between 2011/02/25 and 2011/02/27
Run Code Online (Sandbox Code Playgroud)
这Date是一个datetime变量.
我意识到如果我的所有值都是固定宽度的话,建议使用CHAR.但是,那又怎样?为什么不为所有文本字段选择VARCHAR只是为了安全.
像这样的东西:
SELECT
*
FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
WHERE CONSTRAINT_NAME ='FK_TreeNodesBinaryAssets_BinaryAssets'
and TABLE_NAME = 'TreeNodesBinaryAssets'
Run Code Online (Sandbox Code Playgroud)
但对于索引.
我想编写一个SQL命令来从一个ALTER TABLE语句中删除单个表中的多个列.
来自MSDN的ALTER TABLE文档 ......
Run Code Online (Sandbox Code Playgroud)DROP { [CONSTRAINT] constraint_name | COLUMN column_name }指定从表中删除constraint_name或column_name.如果兼容级别为65或更早,则不允许使用DROP COLUMN.可以列出多个列和约束.
它说mutliple列可以在语句中列出,但语法不显示可选的逗号或任何甚至暗示语法的东西.
我应该如何编写SQL以在一个语句中删除多个列(如果可能)?
我试图找出SQL Server中列的十进制数据类型.我需要能够存储15.5,26.9,24.7,9.8等值
我分配decimal(18, 0)了列数据类型,但这不允许我存储这些值.
这样做的正确方法是什么?
sql-server ×10
sql ×8
t-sql ×3
alter ×1
c# ×1
datetime ×1
decimal ×1
indexing ×1
mysql ×1
pivot ×1
pivot-table ×1
postgresql ×1
types ×1