-
sql-server – 为什么表使用其主键作为自身的外键
所属栏目:[MsSql教程] 日期:2020-12-12 热度:182
通过查看数据库,我遇到了一个使用其主键作为自身外键的表. 我已经看到一个表可以有一个外键来构建一个层次结构,但是它会使用另一个列来引用主键. 由于主键是唯一的,在这种情况下行不能仅指向自身吗?这似乎是一个同义反复的联系,因为如果我已经有了这一行,那[详细]
-
sql-server – 安全地移动和创建新的tempdb文件
所属栏目:[MsSql教程] 日期:2020-12-12 热度:175
我想知道的两件事: 如何以最短的停机时间安全地移动tempdb? 您需要多少个tempdb文件? 每个核心是1个文件吗?那么四核= 4个tempdb文件,创建三个新文件? 解决方法 要移动tempdb文件,只需执行以下操作: alter database tempdbmodify file( name = tempdev,f[详细]
-
sql-server – 收缩Sql Server数据库
所属栏目:[MsSql教程] 日期:2020-12-12 热度:87
我的SQL Server 2008数据库文件(.mdf)文件接近24 MB,但日志文件增长到15 GB.如果我想缩小数据库,需要考虑的重点是什么? 缩小会导致任何索引碎片,是否会影响我的数据库性能? 解决方法 您的问题是您没有在事务日志上进行备份,因此它不能删除日志中的任何值.这[详细]
-
sql – 从已连接表的列表中选择唯一列名
所属栏目:[MsSql教程] 日期:2020-12-12 热度:155
我有一个表列表,可以通过相同的PK列连接在一起.由于这个表列表可能因项目而异,我想创建一个足够动态的查询来从这些表中提取所有唯一列. For example,I have three tables below:Table A (PK field,column1,column 2)Table B (PK field,column3,column 4)Table[详细]
-
sql-server – DL380p-Gen8 D2700适用于SQL 2012标准版的适用性
所属栏目:[MsSql教程] 日期:2020-12-12 热度:139
对于那些了解HP服务器性能和SQL的人来说,这个问题…… 我正在尝试指定具有以下要求的合适服务器: 运行SQL 2012 Standard Edition(我无法获得企业版的批准) 主数据库目前为600 GB,允许在未来3年内增长到1200 GB 主数据库的日志文件目前为120 GB,允许增长到300[详细]
-
sql-server – 在IF EXISTS中包装查询使得它非常慢
所属栏目:[MsSql教程] 日期:2020-12-12 热度:172
我有以下查询: select databasename from somedb.dbo.bigtable l where databasename ='someval' and source 'kt'and not exists(select 1 from dbo.smalltable c where c.source=l.source) 上述查询在三秒钟内完成. 如果上面的查询返回任何值,我们希望存储[详细]
-
sql-server – 这个NO JOIN PREDICATE警告我应该感到警惕吗?
所属栏目:[MsSql教程] 日期:2020-12-12 热度:127
我正在对一个性能不佳的存储过程的各个部分进行故障排除.该程序的这一部分是抛出NO JOIN PREDICATE警告 select method = case methoddescription when 'blah' then 'Ethylene Oxide' when NULL then 'N/A' else methoddescription end,testmethod = case meth[详细]
-
sql-server – 可能攻击我的SQL服务器?
所属栏目:[MsSql教程] 日期:2020-12-12 热度:105
检查我的SQL Server日志我看到几个这样的条目: Date: 08-11-2011 11:40:42Source: LogonMessage: Login failed for user 'sa'. Reason: Password did not match for the login provided. [CLIENT: 56.60.156.50]Date: 08-11-2011 11:40:42Source: LogonMessa[详细]
-
sql-server – COALESCE与ISNULL的性能差异?
所属栏目:[MsSql教程] 日期:2020-12-12 热度:53
我见过很多人使用COALESCE函数代替ISNULL.从互联网搜索中,我发现COALESCE是ANSI标准,因此我们知道使用它时会有什么期望.然而,ISNULL似乎更容易阅读,因为它似乎更清楚它正在做什么. 我也意识到ISNULL有点棘手,因为它在不同的数据库服务器和不同的语言中表现不[详细]
-
数据库设计 – 在逻辑/布尔数据库字段中使用[0,1]与[“Y”,“N”
所属栏目:[MsSql教程] 日期:2020-12-12 热度:134
出于好奇,缺乏明确的答案… 我只是在看一些从第三方发给我们的数据,他们的“性别”字段是[0,1],表示女性(0)或男性(1). 在[“F”,“M”]上使用[0,1]有什么更好的理由吗? 这取决于场景和场景与其价值之间的直观性吗? 数据访问速度和/或大小限制? 如果月亮满[详细]
-
sql-server – 如何使用外部SQL数据库中的数据填充SharePoint列
所属栏目:[MsSql教程] 日期:2020-12-12 热度:63
这是它是否属于Stack Overflow或Server Fault之间的折腾(但由于我不是开发人员,我正在寻找无代码解决方案,我从SF开始). 是否有一种简单的方法可以使用外部SQL数据库中的数据填充SharePoint列表?在SharePoint设计器中,创建与SQL数据库的连接以使用数据视图Web[详细]
-
sql-server – 如何将SQL Server死锁报告中的密钥转换为值?
所属栏目:[MsSql教程] 日期:2020-12-12 热度:173
我有一个死锁报告,告诉我有一个涉及waitresource =“KEY:9:72057632651542528(543066506c7c)”的冲突,我可以看到: keylock hobtid="72057632651542528" dbid="9" objectname="MyDatabase.MySchema.MyTable" indexname="MyPrimaryKeyIndex" id="locka8c6f41[详细]
-
sql-server – SQL Server如何确定缺失索引请求中的键列顺序?
所属栏目:[MsSql教程] 日期:2020-12-12 热度:105
SQL Server如何确定查询计划缺少索引建议中的键列顺序? 解决方法 当SQL Server为特定查询计划创建缺少索引建议时,它会将可能的键列分为2组.第一组包含属于EQUALITY谓词的所有推荐列.第二组包含属于INEQUALITY谓词的所有推荐列. 在每个集合中,列根据表定义按[详细]
-
sql-server – 找出导致最大网络流量的查询
所属栏目:[MsSql教程] 日期:2020-12-12 热度:91
在生产SQL服务器上,我看到数据流量出现间歇性的巨大高峰.高达200Mbit / s导致NETWORK IO等待,从而导致查询超时.如何找出返回大结果集的查询? 解决方法 你可以从 DMVs找到这个: SELECT session_id,num_writes,st.text AS statement_textFROM sys.dm_exec_con[详细]
-
sql-server – 为什么在列大小增加后创建索引需要更长的时间?
所属栏目:[MsSql教程] 日期:2020-12-12 热度:76
我们的供应商几乎在整个数据库的每一列上都更改了列宽.该数据库大约有7TB,9000个表.我们正在尝试在具有55亿行的表上创建索引.在供应商升级之前,我们可以在2小时内创建索引.现在需要几天时间.他们所做的是将任何varchar(xx)大小增加到varchar(256).所以大多数[详细]
-
sql-server-2005 – 为什么有人会在查询中放置`where 1 = 1`?
所属栏目:[MsSql教程] 日期:2020-12-12 热度:118
我今天在我们的数据库中遇到了一个视图,其中where子句中的第一个语句是1 = 1.对于每个记录,这不应该返回true吗?如果没有过滤任何记录,为什么会有人写这个? 解决方法 一些动态查询构建器包含这种条件,因此可以使用AND添加任何“实际”条件而不进行检查,如果([详细]
-
SQL – CTE与VIEW
所属栏目:[MsSql教程] 日期:2020-12-12 热度:53
我的问题是CTE和SQL中的View有什么区别.我的意思是在哪种情况下我应该使用CTE以及哪种情况下使用View.我知道两者都是某种虚拟表,但我无法区分它们的用途. 我发现了类似的问题here,但它是关于性能的. 更新1: 例如:我有一个充满交易的数据库(tbl_trade).我需[详细]
-
sql-server – 何时可以缩小数据库?
所属栏目:[MsSql教程] 日期:2020-12-12 热度:194
我知道缩小是魔鬼:它颠倒了页面顺序,并导致皮肤癌,数据碎片和全球变暖.列表继续……话虽如此,说我有一个100 GB的数据库,我删除50 GB的数据 – 不是在一张桌子上,而是在数据库范围内对旧数据进行一般修剪,覆盖90%的数据表 – 这是否构成缩小数据库的适当用例[详细]
-
sql-server – 模仿group_concat()与GROUP BY结合使用
所属栏目:[MsSql教程] 日期:2020-12-12 热度:110
我有一张像这样的预订表: booking_id,date,client,sponsor 我正在尝试获得每月摘要: SELECT MONTH(date) AS M,Sponsor,Client,COUNT(booking_id) AS cFROM bookingGROUP BY M,Client 现在我想知道客户在哪些日期预订.我尝试使用STUFF()(在这篇文章中引用:S[详细]
-
数据库设计 – 列名称命名约定和最佳实践
所属栏目:[MsSql教程] 日期:2020-12-12 热度:125
在列命名方面,我想就最佳实践提出一些专家意见. 背景是according to Wikipedia,语法如下, SELECT ... FROM Employees JOIN Timesheets USING (EmployeeID); 效率比 SELECT ... FROM Employees JOIN Timesheets ON (Employees.EmployeeID = Timesheets.Employe[详细]
-
初学者SQL问题:具有多个COUNT(*)结果的算术
所属栏目:[MsSql教程] 日期:2020-12-12 热度:75
继续使用Stack Exchange Data Explorer学习SQL的精神(参见: Can we become our own “Northwind” for teaching SQL / databases?),我决定尝试编写一个查询来回答一个简单的问题(关于元): What % of stackoverflow users have over 10,000 rep?. 这就是我所[详细]
-
什么是数据库的大?
所属栏目:[MsSql教程] 日期:2020-12-12 热度:117
我有一个伙伴为一个列出待售汽车的人运行一个网络应用程序.有几千个客户使用它,每个客户在数据库中有数百甚至数千行(有些已经持续了5年,每月销售数百辆汽车,每次销售10行(评论,消息,等等)).他在一个SQL Server数据库中运行这个系统,在一个物理服务器中运行20G[详细]
-
sql-server – SQL Server存储过程避免游标
所属栏目:[MsSql教程] 日期:2020-12-12 热度:186
我有以下SQL Server存储过程: BEGIN TRANCREATE TABLE #TempTable ( SampleOrderID int,SampleOrderNo varchar(512),ChallanNoAndChallanDate varchar(MAX) )CREATE NONCLUSTERED INDEX #IX_Temp2_1 ON #TempTable(SampleOrderID)DECLARE @SQL as varchar(MA[详细]
-
连接字符串或执行程序以防止SQL查询代码重复的替代方法?
所属栏目:[MsSql教程] 日期:2020-12-12 热度:143
免责声明:请与我一起承担只使用数据库一小部分工作时间的人. (大多数时候我在工作中进行C编程,但每个奇怪的月份我都需要在Oracle数据库中搜索/修复/添加内容.) 我一再需要编写复杂的SQL查询,用于即席查询和内置于应用程序中的查询,其中大部分查询只是重复“[详细]
-
sql-server-2008 – SQL 2008每10分钟执行一次CHECKDB,任何想法
所属栏目:[MsSql教程] 日期:2020-12-12 热度:85
我有一个每晚完整的备份运行以及2小时的事务日志记录.完整备份还会在运行时收缩并检查数据库的完整性. 除了我认为是SQL自动创建的作业的syspolicy_purge_history作业外,似乎没有任何其他作业运行. 谢谢 解决方法 一些事情. 1)关闭AUTO SHRINK.它的邪恶可能是[详细]