Questions tagged «sql-server»

Microsoft SQL Server是一个关系数据库管理系统(RDBMS)。将此标签用于所有SQL Server版本,包括Compact,Express,Azure,Fast-track,APS(以前称为PDW)和Azure SQL DW。请勿将此标签用于其他类型的DBMS(MySQL,PostgreSQL,Oracle等)。除非该标签与数据库直接相关,否则请勿将其用于软件和移动开发问题。




11
SQL“选择不在子查询中的位置”不返回结果
免责声明:我已经解决了这个问题(我认为),但是我想将此问题添加到Stack Overflow中,因为我无法(轻松地)在任何地方找到它。另外,有人可能比我有更好的答案。 我有一个数据库,其中一个表“ Common”被其他几个表引用。我想查看Common表中的哪些记录是孤立的(即,没有任何其他表的引用)。 我跑了这个查询: select * from Common where common_id not in (select common_id from Table1) and common_id not in (select common_id from Table2) 我知道有孤立的记录,但没有记录返回。为什么不? (如果需要的话,这是SQL Server。)
130 sql  sql-server  tsql 


3
WHERE子句中的引用别名(在SELECT中计算)
SELECT (InvoiceTotal - PaymentTotal - CreditTotal) AS BalanceDue FROM Invoices WHERE BalanceDue > 0 --error 在WHERE子句中不能使用在选定列的列表中设置为变量的计算值“ BalanceDue”。 有办法吗?在这个相关的问题(在Where子句中的MySQL Select Statment中使用变量)中,答案似乎是,实际上,不,您只需两次写出计算(并在查询中执行该计算),就没有这是令人满意的。
130 sql  sql-server  tsql 

4
SQL-搜索字符串时忽略大小写
我在表中有以下数据 PriceOrderShipped PriceOrderShippedInbound PriceOrderShippedOutbound 在SQL中,我需要编写一个查询来搜索表中的字符串。在搜索字符串时,应忽略大小写。对于下面提到的SQL查询 SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%PriceOrder%' 给出以上所有数据,而 SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME LIKE '%Priceorder%' 不给。 例如。当我搜索“ PriceOrder”或“ priceOrder”时,它起作用,但“ priceorder”或“ Priceorder”不起作用。我已尝试使用COLLATE使用以下查询,但无法正常工作。让我知道我哪里出错了。 SELECT DISTINCT COL_NAME FROM myTable WHERE COL_NAME COLLATE latin1_general_cs LIKE '%Priceorder%'



3
唯一约束的命名约定
命名约定很重要,并且主键和外键是常用且显而易见的约定(分别为PK_Table和FK_Table_ReferencedTable)。IX_Table_Column索引的命名也相当标准。 那UNIQUE约束呢?此约束是否有公认的命名约定?我看过UK_TableName_Column,UQ_TableName_Column和有人推荐AX_TableName_Column-我不知道那是哪里来的。 我通常使用过,UQ但我并不特别喜欢它,而且我不喜欢不得不针对UK倡导者来捍卫自己选择使用它的选择。 我只想看看是否在最普遍的命名上达成共识,或者关于一个人为什么比其他人更有意义的一个很好的理由。

16
GUID碰撞可能吗?
我正在使用SQL Server 2000中的一个数据库,该数据库为每个使用与其绑定的应用程序的用户使用GUID。不知何故,两个用户最终获得了相同的GUID。我知道微软使用一种算法来生成随机GUID,该GUID引起碰撞的可能性极低,但是碰撞仍然可能吗?
128 sql-server  guid 


12
SQL Server Management Studio替代品,用于浏览/编辑表和运行查询
从目前的情况来看,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我想知道微软的SQL Server Management Studio是否有其他选择? SSMS并没有什么问题,但是有时候它看起来太大了,我想做的就是浏览/编辑表并运行查询。
128 sql-server 

7
禁用为表启用触发器SQL Server
我想创建一个如下所示的proc,但是语法上有错误。有人可以指出问题吗? Create PROCEDURE [dbo].[my_proc] AS BEGIN DISABLE TRIGGER dbo.tr_name ON dbo.table_name -- some update statement ENABLE TRIGGER dbo.tr_name ON dbo.table_name END ** Error Message : Incorrect syntax near 'ENABLE'.

3
SQL脚本中的错误:每批只允许一个语句
我有4个SQL脚本,希望在PostDeployment中的DACPAC中运行,但是当我尝试为其中3个构建VS项目时,出现此错误: Only one statement is allowed per batch. A batch separator, such as 'GO', might be required between statements. 脚本仅包含INSERT数据库不同表中的语句。所有的结构都像这样 IF NOT EXISTS (SELECT 1 FROM dbo.Criteria WHERE Name = 'Mileage') INSERT INTO dbo.Criteria(Name) VALUES ('Mileage'); 仅在不同的表和不同的数据上。 我的问题是,当所有脚本的语法和操作都相同时,为什么VS会抱怨其中的3个? PS:由于错误提示,在语句之间添加“ GO”不会执行任何操作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.