首页 文章
  • 180 votes
     answers
     views

    SQL Server 2005如何创建唯一约束?

    如何在SQL Server 2005中的现有表上创建唯一约束? 我正在寻找TSQL以及如何在数据库图表中完成它 .
  • 2 votes
     answers
     views

    空表INSERT [sql-server]抛出UNIQUE约束异常

    我的INSERT语句在尝试将新记录添加到空表( Attribute )时失败(尚未记录) . 我对系统引发的错误感到惊讶: 违反UNIQUE KEY约束'CK_Attribute_Name_IDproject' . 无法在对象'dbo.Attribute'中插入重复键 . 重复键值为(dummy,55) . 该表的创建脚本如下所示 CREATE TABLE [dbo].[Attribute](...
  • 0 votes
     answers
     views

    T-SQL和事务流 - 从头到尾

    假设我有表 TabA 列: col1 - 主键(但不是标识) col2 - 外键 col3 - 具有唯一约束 col4 - 带检查约束 col5 - 带有NOT NULL约束 此外, TabA 有2个触发器: INSTEAD OF INSERT - 这个取消插入到 TabA (当然),但在它自己的代码中插入新行到 TabA . 此新行中所有列的值保证正确 ...
  • 7 votes
     answers
     views

    Unique Constraint列只能包含一个NULL值

    可以在包含NULL的列上创建唯一约束 . 但是,最多只有一行可能在该列中包含NULL . 我不明白为什么会这样,因为根据定义,NULL不等于另一个NULL(因为NULL实际上是一个未知值,一个未知值不等于另一个未知值) . 我的问题:1 . 为什么会这样? 2.这是针对MsSQL的吗? 我有一个预感,因为Unique Constraint可以充当外键的引用字段,并且如果存在多个具有NULL的记录,...
  • 0 votes
     answers
     views

    为没有UNIQUE约束的列生成唯一的数字/值

    我有这个实体(在数据库和实体框架中): public class LanguageValue { public int ID { get; set; } public long Key { get; set; } // bigint in database public int LanguageID { get; set; } // FK with a Language t...
  • 1 votes
     answers
     views

    MERGE也插入NULL记录

    我使用以下语句来更新/插入记录 . 问题是我已经给出了条件 SOURCE.Name IS NOT NULL ,但仍然在insert语句中出现错误: 无法将值NULL插入列'Name',表'TEST2';列不允许空值 . 更新失败 . 那是因为TARGET表中的Name列有一个 NOT NULL 约束 . 我只是想要更新TAGRET表中Name为NULL的任何行 . MERGE TEST2 AS...
  • 1 votes
     answers
     views

    使用SqlBulkCopy时,在错误的列上违反了唯一约束

    我试图使用 SqlBulkCopy 作为一次执行多个INSERT的方法但由于某种原因,我在运行 WriteToServer(DataTable) 时遇到了一个唯一的约束违规 . 关于这个 SqlException 的奇怪之处在于它是这么说的 . 我的表架构: CREATE TABLE Product ( ID INT IDENTITY (1, 1) PRIMARY KEY, Name ...
  • -1 votes
     answers
     views

    无法在对象dbo.aspnet_Users中插入重复的键行

    我正在尝试将 loweredUsername 更新为用户的电子邮件地址 . 在尝试运行更新语句时,我看到了这个错误: 无法在具有唯一索引'aspnet_Users_Index'的对象'dbo.aspnet_Users'中插入重复的键行 . 重复键值为(AAAAAAAA-AAAA-AAAA-AAAA-1234A1234a12,test @ test.com) User_id 列具有主键 . 这是...
  • 0 votes
     answers
     views

    在SQL Server中查找重复记录,但也返回每个记录的唯一键集

    我有一个SQL Server数据库,其中包含一个唯一的键列和49列数据元素(名称/地址/等......) . 我有“重复”条目,但有不同的键,我想找到那些重复条目 . 作为一个例子,我可能在表中有两次“John Smith”(其他47列信息) . 两个John Smith条目都将具有不同的唯一键列,但除此之外,所有其他列将是相同的 . 包括如果列中的一个为NULL,则对于两个John Smith条...
  • 182 votes
     answers
     views

    在SQL Server的select语句中使用带有TOP的变量而不使其动态[重复]

    这个问题在这里已有答案: Dynamic SELECT TOP @var In SQL Server 6个答案 declare @top int set @top = 5 select top @top * from tablename 可能吗? 或任何想法这样的逻辑(我不想使用动态查询)?
  • 3 votes
     answers
     views

    SQL替换年份排序

    现有数据: RowId Title Year 1 Aaa 2002 2 Bbb 2003 3 Ccc 2004 4 Ddd 2004 5 Eee 2005 6 Fff 2006 7 Ggg 2007 8 Hhh 2008 我需要根...
  • 0 votes
     answers
     views

    选择忽略空值的记录,日期介于某个范围之间

    我只想要那些特定日期之间必须存在记录的记录 . 对于例如如果给出的日期在2013-7-1和2013-7-17之间,并且我在购买表中注明了日期:2013-6-5,并且在2013-7-17的销售表中输入特定产品的条目 . 它应忽略这些行,并仅选择在所需日期范围内进行销售和购买的那些行 . 我的以下查询无法正常工作 . 由于上面定义的情况除以零异常发生 . 请帮助我 . SELECT o....
  • 6 votes
     answers
     views

    如何在SQL中按日期范围连接多个表?

    我对SQL比较陌生 . 我一直在努力构建一个返回单行的非常简单的查询 . 我正在尝试从几个不同的表中选择多个列值计数,每个计数在相同的日期范围内被拉出 . 我的数据库中的表类似于: | CreationDate | LastName | EventType | |:--------------------|------------:|:------------:| ......
  • 0 votes
     answers
     views

    SQL - 查找列日期是否至少部分包含日期范围

    我需要创建一个报告,我正在努力使用SQL脚本 . 我要查询的表是一个company_status_history表,其中包含以下条目(我无法弄清楚的那些) 表company_status_history 列: | id | company_id | status_id | effective_date | 数据: | 1 | 10 | 1 | 2016-12-30 00:00:00.000 |...
  • 86 votes
     answers
     views

    SQL Server查询的最大大小? IN子句?有更好的方法[重复]

    可能重复:T-SQL WHERE col IN(...) SQL Server查询的最大大小是多少? (字符数) IN子句的最大大小?我想我看到有关于Oracle有1000项限制的东西,但你可以用ANDing 2 INs来解决这个问题 . SQL Server中的类似问题? UPDATE 那么,如果我需要从另一个系统(非关系数据库)中获取1000个GUID并对SQL Server执行“JOI...
  • 5 votes
     answers
     views

    不使用NewID的SQL上的随机数()

    您好我想使用以下语句生成一个唯一随机数: Convert(int, (CHECKSUM(NEWID()))*100000) AS [ITEM] 因为当我在“from”上使用连接子句时,它会使用NEWID()生成双重寄存器 我使用的是SQL Server 2000 PD:当我使用Rand()时,它可能会重复1次100,000的概率,但这是非常重要的,所以它必须是重复生成的随机值的概率的0% 我...
  • -1 votes
     answers
     views

    选择查询的下一行

    我正在使用SQL SERVER 2008.我有以下查询: SELECT Row_number() OVER ( partition BY ru.rul_icontfk ORDER BY rut.rut_isortorder, cnt.ctr_caltcode3, rut.rut_crultype, ru.rul...
  • 0 votes
     answers
     views

    插入一个表值进行查询

    表 myTbl 具有值 ID Number 1 12458 2 45896 3 12458 4 87456 有如下查询: SELECT TOP 1 n.abonent_name , ad.address FROM dbo.names n INNER JOIN dbo.addresses ad on n.address_id = ad.id WHERE n.numb...
  • 0 votes
     answers
     views

    存储过程中的T-SQL游标

    我正在使用存储过程,我想使用游标插入新数据(如果数据存在,我想更新) ALTER Procedure [dbo].[conn] @ResellerID int, @GWResellerID int, @UserName varchar(50), @Password varchar(50), @URL varchar(100), @ServiceTyp...
  • 3 votes
     answers
     views

    调用sp_send_dbmail的存储过程

    我'm trying to create a stored procedure in SQL Server 2008 that sends emails, that were inserted into an outbound table. I'm使用 sp_send_dbmail . 它已经发送了's using a cursor to loop thru the outbound table...
  • 0 votes
     answers
     views

    为什么不在SQL Server的一列中为记录存储未知数量的属性?

    我有一个重要的问题所以我搜索并发现了类似的问题,阅读它们并找不到合理的理由 . 所以在评论中问道,没有人回答我 . 因此,我很抱歉,如果这是重复的,我会自己写两个重复发现,但如果可以,请帮助 . 这是我发现的两个类似的问题,但没有帮助我: Storing multiple choice values in database https://serverfault.com/questions...
  • 286 votes
     answers
     views

    T-SQL语句中前缀N的含义是什么?

    我在一些插入T-SQL查询中看到了前缀N.在将值插入表中之前,许多人使用了 N . 我搜索了,但是我无法理解在将任何字符串插入表格之前包含 N 的目的是什么 . INSERT INTO Personnel.Employees VALUES(N'29730', N'Philippe', N'Horsford', 20.05, 1),
  • 10 votes
     answers
     views

    如何从Mac主机连接到Win7虚拟机中的SQL Server?

    我在Virtualbox下的Windows 7虚拟机中将MSSQL备份恢复到SQL Server Express . 我正在尝试使用具有要连接凭据的导入数据库中的用户从主机(Mac OS)连接到此SQL Server实例 . 虚拟机配置为使用仅主机适配器 . SQL Server Express在WIN7VM / SQLEXPRESS端口1433的VM内部运行 . 我能够从Mac主机端口8080...
  • 1 votes
     answers
     views

    在SQL Server存储过程中获取oracle数据库列

    我在SQL Server 2005中有一个现有的存储过程 . 该存储过程由SSRS报告使用 . 它显示来自SQL Server的以下列 - Emp Name , Emp ID , Dept ID , Dept Name . 现在我需要在报告中添加另一列 - 名为 Business Unit . 但是这个专栏是在Oracle 8i数据库中 . 在SQL Server存储过程中检索此列信息的最...
  • 6 votes
     answers
     views

    使用sql查询选择最近30天

    我在寻找过去30天内周一,周二,周三,周四,周五,周六,周日的数量 . 我可以在没有实际数据库表的情况下选择最近30天的日期和星期几吗?就像是 SELECT --everything between convert(date,GETDATE()), DATENAME(DW, GETDATE()) --and convert(date,GETDATE() - 30), DATENAME(DW, GE...
  • 2 votes
     answers
     views

    在具有前一个星期日值的表中填写一周的工作日

    我需要一个表格,显示一周中几天的前一个星期日值 . 该表是从另一个表构建的,该表具有每天的值 . 我有一周中的一周(作为数字)和月份包含在表格中 . 我正在使用SQL Server 2012 . 太阳100 星期一100 周二100 周三100 周四100 周五100 周六100 太阳300 星期一300 周二300 谢谢我
  • -1 votes
     answers
     views

    如何在VB.NET中将Date与DateTime进行比较?

    我只需要将用户输入的日期与存储在我的数据库中的 DateTime 进行比较 . 我试过将 DateTime 转换为 Date ,如下所示: select CONVERT(date, startdate) from myTable 但是,当信息显示在我的 GridView 中时,日期仍然存在时间 . (显示的时间是12:00:00 . )当从数据库中提取信息或将 Date 与 DateTime ...
  • 0 votes
     answers
     views

    vb.net SQL Server数据库使用2 DateTime Picker基于日期范围检索所有结果

    我正在编写一个vb.net编程,可以根据日期范围从SQL Server DB中检索所有相关数据,例如 . 2016年10月3日至2016年10月7日 . 我有两个DateTime选择器分别作为“Date From”和“Date To”,到目前为止,下面的代码能够根据我在DateTime选择器上设置的内容检索数据 . Dim dFrom As DateTime = dtDateFrom.Value...
  • 26 votes
     answers
     views

    CTE或CTE

    一直坚持使用SQL2000太长时间了,我并没有真正接触过Common Table Expressions . 我给出的答案是here (#4025380)和here (#4018793),因为他们没有使用CTE而违背了这一流程 . 我很感激,对于递归它们是beez kneez,并且有一些查询可以通过它们的使用大大简化,但在什么时候它们的使用只是轻浮?与子查询或联接相比,它们是否具有很好的性能优势?...
  • 0 votes
     answers
     views

    公用表表达式或子查询? [重复]

    这个问题在这里已有答案: Is there a performance difference between CTE , Sub-Query, Temporary Table or Table Variable? 4个答案 下面有两个查询,提供相同的结果,唯一的区别是第一个查询带有子查询,第二个查询带有公用表表达式 . 问题是这两种方式(子查询和CTE)之间的“性能”差异是什么? 从我所读到的...

热门问题