sql server 2005 :我在employee表中有一个列empid,标识为on.if在向表中插入数据时出现错误.identity is incremented .i希望标识仅在插入记录时才增加如果我已经生成了从1到5的emp id,然后在第6个记录插入错误时ocurrs.and下一条记录插入时identity值将是7 .i希望它是6。
给定SQL Server 2005上的以下数据:
SectionID Name
1 Dan
2 Dan
4 Dan
5 Dan
2 Tom
7 Tom
9 Tom
10 Tom
如何从同名的另一节中选择sectionID必须为+-2或更多的记录。
结果将是:
1 Dan
4 Dan
2 Tom
7 Tom
9 Tom
感谢您的阅读!
我的access数据库中有表Customers,我正尝试将该表导入到SQL Server表中。
它总是抛出一个异常,它不能导出DOB列,这是一个MS Access日期列。
因此,我确实对该表运行了查询
select dob
from customers
where year(dob) < 1000
我得到了很多结果。但是当我检查MS Access表时,比如
select dob
from customers
where isdate(dob) = false
那些记录是不会出现的。所以函数ISDATE认为这些日期是有效的。
是否有其他方法可以从表Customers中抓取所
假设我有一个A、B、C、D和E列的表Foo,所有这些都是整数。让我们假设有一百万条记录,我们使用的是Server 2017。
存在以下指数:
create Nonclustered index IX_Foo on Foo ([A], [B]) include ([C], [D], [E])
如果我运行以下查询:
Select A, B, C, D, E from Foo where A = 1 and B = 2
这个查询会触发Foo中的键查找,因为索引的Include列表中没有包含A和B,还是SQL Server会意识到A和B位于密钥本身,并避免密钥查找?
我们有一个Visual C++ 6应用程序,它使用DAO将数据存储在Access数据库中。数据库类是基于CDaoRecordset使用ClassWizard创建的。
我们需要从Access迁移到SQL Server,因为一些客户端拥有巨大的(1.5Gb+)数据库,运行报告的速度非常慢(使用Crystal reports和不同的应用程序)。
我们并不太担心这个VC++应用程序的性能-它从数据记录器下载数据并将其放入数据库中。
我使用"Microsoft SQL Server Migration Assistant 2008 for Access“将我的数据库从Access迁移到SQL S
我在SQL Server中有以下表:
user_id, value, date, action_id
----------------------------------
1 A 1/3/2012 null
1 K 1/4/2012 null
1 B 1/5/2012 null
2 X 1/3/2012 null
2 K 1/4/2012 1
3 K 1/3/2012 null
3 L
我最近使用的是SQL Server 2012,它与我的SSMS (SQL Server Management Studio)连接正常。然后我昨天下载了SQL Server 2016并安装了它。
问题是,当我运行SSMS时,它打开的是SQL Server 2012而不是2016。如何让SSMS指向SQL Server 2016?
谢谢!
我正在使用Microsoft SQL Server
我正在尝试使用下面的sql命令来获取First_Name "Nilsen“和"Ram”之间的记录。
select * from persons where First_Name between 'Nilsen' and 'Ram'
但我得到的输出是名字分别为"nilsen“和”ram“的两条记录;而不是这两条记录之间的记录。
在另一个命令中,我尝试对姓氏做类似的事情。
select * from persons where Last_Name between 'Johan'
我在SQL Server 2008中遇到以下错误:
There is insufficient system memory in resource pool 'internal' to run this query.
我最近从SQL Server 2000迁移到SQL Server 2008,系统是Windows Server 2K8。
我们的MS SQL Server数据库有一个表T,其中包含以下字段和数据:
Name | Begin | End
-----------------------
A | 3 | 6
B | 2 | 4
C | 4 | 5
...................
我通常使用这样的查询:
SELECT *
FROM T
WHERE 5 BETWEEN Begin AND End
查找在"Begin“和"End”字段之间包含常量5的记录。执行计划是执行整个表扫描。如何设计表结构和索引以避免表扫描?谢谢!
请帮我理清一下下面这个问题。
最近我在SO上问了一个问题,关于通过LINQ to SQL从SQL Server DB立即更新WPF类的可能性:
从我得到的答案中,我知道这是一个相当复杂的问题,没有简单的方法来知道DB中到底什么时候发生了变化。最常见的方法是使用计时器的常量轮询DB。(答案是解决这个问题的其他方法,但作为变通解决方案,对于开发人员来说并不总是显而易见的)。
我的问题是(我认为这种情况在大多数连接数据库的应用程序中都很常见):
假设我在数据库中有一个包含50'000或100'000条记录的表,我将从该表中获取查询。
使用这个查询,我应该经常更新我的WPF应用程序中
我最近发布了一个关于如何在SQL Server Reporting Services中处理空值的问题。该问题位于。
应用WHERE @MyParam=MyCol OR @MyParam IS NULL会遇到一个问题,那就是如果我选择了单个非空值(从下拉列表中选择并将其作为SQL Server中的值传递),这也会带来空值记录。它应该只带来非空值的记录。
如果选择了非空记录,应如何避免空记录?
我在和一起练习。在Customers表中,我可以通过以下SQL选择每个国家的客户数量
select country, count(*) as NumOfCustomer
from Customers
group by country
order by NumOfCustomer Desc;
这给了我一个这样的结果:
如果我想选择拥有最多客户的前5个国家,我不能使用Limit 5,因为Germany and France有第二大客户,Mexico and Spain有第五最高的customers.Using限制,customers.Using限制5不包括Mexico and Spa
我有几个链接表,我正在尝试查找其中一个子表在一行中有3条(或一些用户设置的参数)记录的数据集,其中排序是按日期(在另一个链接表中)进行的。
Table1
ID LinkID Flag
AA1 AA 30
AA2 AA 30
AA3 AA 60
AA4 AA 30
BB1 BB 30
BB2 BB 30
BB3 BB 30
BB4 BB 40
Table2
TA1 CA 2/1/2013
TA2 CA 1/1
我想在我的桌子上只有一排。我使用SSSIS在单个表上填充从Server1到Server2的一行。我正在更新从server1中的表到server2中的表的执行结束时间。下面是用于填充的查询:
SELECT TOP 1 EXEC_END_TIME
FROM cr_stat_execution cse
WHERE cse.EXEC_NAME = 'ETL'
ORDER BY exec_end_time DESC
问题:我只想用最近的记录更新server2 2的表,或者重写前几天的数据。我不想在我的表中有历史记录,我如何修改我的查询,只将最近的数据从Serve
我正在使用SQL Server Management Studio,并且希望使用其他值更改表行的自动增量主键值。SQL Server Management Studio在打开表进行编辑后,当然会将所有行的此字段显示为灰色。
有可能吗?我想使用我们错误删除的行号,因此它是有效的(与其他主键值没有冲突),最重要的是,添加到数据库中的下一行应该有一个完整的自动增量值。
谢谢。
编辑:此行与此主键上其他表记录的链接丢失不是问题。我们可以手动恢复它。
假设我们有一个包含RowID和Call列的表
RowID Call DesiredOut
1 A 0
2 A 0
3 B
4 A 1
5 A 0
6 A 0
7 B
8 B
9 A 2
10 A 0
我想对最后一列DesiredOut进行SQL查询,如下所示:每次Call是'A‘,返回到'A’再次找到,并计数两个'A‘条目之间的记录数。
在Delphi中,我用"DataSnap服务器“向导创建了一个客户端-服务器应用程序。
在ServerMethodUnit中,我定义了一个带有sql属性的表,比如"Select * from TSQLQuery“。
我还在ServerMethodUnit中定义了一个名为ChangeSQL的函数,它通过示例SELECT * from TABLE where ID = 5来更改sql属性
当我通过TSQLServerMethod调用ChangeSQL窗体客户端应用程序时,ChangeSQL函数更改了ServerMethodUnit中的SQL属性,但当它离开函数ChangeSQL时,
我有两个具有一对多关系的表(例如,clients表和orders表;每个客户可能下了多个订单)。对于每个客户,我只需要检索一个订单,这是由特定标准定义的(例如,最近的订单)。
我需要在PostgreSQL 9.1和Microsoft SQL Server 2014中执行此操作(这两个系统中的数据不同,但问题完全相同)。这些表大约有250万条记录(客户端)和1000万条记录(订单)。
我在考虑在SQL server中使用PostgreSQL,在PostgreSQL中使用等级高于分区或横向连接,但对语法不太确定。
一个简单的max(order_date) ... group by clientid
我不知道如何通过VBA找到匹配的记录。在SELECT SQL中,它从表CFRRR中选择一个与program和language字段匹配的记录。在IF语句中,我想知道所选记录的caseid (也是CFRRR中的一个字段)是否与CFRRR上另一个记录的casedid匹配。我不确定是朝DLookup方向走还是往Match方向走。以下是我所处的位置:
strSQL = "SELECT CFRRRID, [Program], [language] FROM CFRRR
WHERE assignedto Is Null"
Set rs = db.OpenRecordset(str