Questions tagged «sql-server»

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

6
符合多个数据库的在线SQL语法检查器
关闭。此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗?更新问题,使其成为Stack Overflow的主题。 7年前关闭。 改善这个问题 在线上是否有任何站点可用于验证符合多个数据库的语法? 例如:如果我有一个带有'usage'关键字的SQL语句,那么该站点应该抛出一个错误,提示说'usage'关键字在MYSQL中已保留?

9
以编程方式检索与SQL Server Management Studio gui返回的源相同的SQL Server存储过程源吗?
关于如何从SQL Server 2005中以编程方式获取完全相同的存储过程源的任何指示,就像我在SQL Server Management Studio中右键单击该存储过程并选择“修改”一样? 我正在尝试使用SMO,但有一些文本差异。该过程始终具有CREATE而不是ALTER,并且标头中存在一些差异,例如,我以编程方式获取的版本中缺少GO。我可以解决这些问题,但是也许有更好的方法? 同样,我在SQL Server 2005中,使用SMSE。通过Visual Studio 8 2008使用SMO。 更新:得到了一些答案,这些答案讲述了如何检索存储过程的基础知识。我正在寻找的是检索与GUI生成的文本相同(或几乎相同)的文本。 示例:对于sp_mysp,请在Management Studio中右键单击,然后选择“修改”。这将产生: 使用[MY_DB] 走 / ******对象:StoredProcedure [dbo]。[sp_mysp]脚本日期:2009年1月1日17:43:18 ****** / 设置ANSI_NULLS ON 走 将QUOTED_IDENTIFIER设置为ON 走 -============================================ -作者: -创建日期: -说明: -============================================ 更改程序[dbo]。[sp_mysp] 我想以编程方式获取相同的内容(请注意标头中的GO,并且它是ALTER PROCEDURE的事实。理想情况下,我想以最小的编程方式修复所获取的源代码。 我很高兴只收到与脚本日期详细信息不同的内容。。。

14
您在SQL Server中做什么以进行创建或更改?
年份为2009,SQL Server没有CREATE或ALTER / REPLACE。这是我要做的。 IF EXISTS (SELECT 1 FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_NAME = 'SynchronizeRemoteCatalog' AND ROUTINE_SCHEMA = 'dbo' AND ROUTINE_TYPE = 'PROCEDURE') EXEC ('DROP PROCEDURE dbo.SynchronizeRemoteCatalog') CREATE PROCEDURE dbo.SynchronizeRemoteCatalog AS BEGIN -- body END 对于触发器,您必须依靠专有的系统视图。 这是目前最被接受的惯例吗? 编辑:正如n8wrl所建议的,官方用词表明此功能不是一个高度优先事项。因此是一个问题。
67 sql  sql-server  tsql 

10
无WHILE循环查询
我们有如下所示的约会表。每个约会都需要分类为“新”或“后续”。在首次预约(该病人)后30天内(针对该病人)的任何预约均为随访。30天后,约会再次为“新”。30天之内的任何约会都将成为“后续活动”。 我目前正在通过键入while循环来做到这一点。 如何在没有WHILE循环的情况下实现这一目标? 表 CREATE TABLE #Appt1 (ApptID INT, PatientID INT, ApptDate DATE) INSERT INTO #Appt1 SELECT 1,101,'2020-01-05' UNION SELECT 2,505,'2020-01-06' UNION SELECT 3,505,'2020-01-10' UNION SELECT 4,505,'2020-01-20' UNION SELECT 5,101,'2020-01-25' UNION SELECT 6,101,'2020-02-12' UNION SELECT 7,101,'2020-02-20' UNION SELECT 8,101,'2020-03-30' UNION SELECT 9,303,'2020-01-28' UNION SELECT 10,303,'2020-02-02'

6
从多个列获取最后日期
感觉应该很简单。如何获取不同列中的最新日期 DROP TABLE #indebtedness CREATE TABLE #indebtedness (call_case CHAR(10), date1 DATETIME, date2 DATETIME, date3 DATETIME) INSERT #indebtedness VALUES ('Key1', '2019-10-30', '2019-11-30', '2019-10-25') INSERT #indebtedness VALUES ('Key2', '2019-10-20', '2019-10-30', '2019-10-15') INSERT #indebtedness VALUES ('Key3', '2019-11-11', '2019-10-29', '2019-10-30') INSERT #indebtedness VALUES ('Key4', null , '2019-10-29', '2019-10-13') select call_case, ?? AS 'Latest Date' …

5
查找唯一的天数
我希望编写一个SQL查询来从表中查找每个员工的唯一工作日数times。 *---------------------------------------* |emp_id task_id start_day end_day | *---------------------------------------* | 1 1 'monday' 'wednesday' | | 1 2 'monday' 'tuesday' | | 1 3 'friday' 'friday' | | 2 1 'monday' 'friday' | | 2 1 'tuesday' 'wednesday' | *---------------------------------------* 预期产量: *-------------------* |emp_id no_of_days | *-------------------* | 1 4 | | …
11 sql  sql-server 

1
在Azure Data Studio中还原数据库备份时出现错误“集合被修改,枚举操作可能无法执行”
我对数据库非常陌生,因此请耐心等待。 我已经设置了在Docker容器上运行的本地SQL Server(使用Mac)。我正在尝试使用Azure Data Studio(v1.14.0)还原SQL数据库,但无法正常工作。 我在database.guide上使用了该指南,但是不断出错。我不知道这是什么意思。 还原数据库失败:集合已修改;枚举操作可能无法执行 我曾尝试从学校计算机(在PC上使用SQL Server Management Studio)上制作的备份中还原.bak文件,并尝试使用Database.guide中的bak文件进行还原。我还从当前的Azure数据库中进行了备份,并尝试还原该备份-也不起作用。

3
FTS无法正常处理带有点的电子邮件
我们正在将搜索作为更大系统的一部分进行开发。 我们有Microsoft SQL Server 2014 - 12.0.2000.8 (X64) Standard Edition (64-bit)这个设置: CREATE TABLE NewCompanies( [Id] [uniqueidentifier] NOT NULL, [Name] [nvarchar](400) NOT NULL, [Phone] [nvarchar](max) NULL, [Email] [nvarchar](max) NULL, [Contacts1] [nvarchar](max) NULL, [Contacts2] [nvarchar](max) NULL, [Contacts3] [nvarchar](max) NULL, [Contacts4] [nvarchar](max) NULL, [Address] [nvarchar](max) NULL, CONSTRAINT PK_Id PRIMARY KEY (Id) ); Phone …

8
查询执行非常缓慢,是否有任何方法可以进一步改善它?
我有以下查询,由于有很多SUM函数调用,我的查询运行太慢。我的数据库中有很多记录,我希望获得当年和去年(过去30天,过去90天和过去365天)的报告: SELECT b.id as [ID] ,d.[Title] as [Title] ,e.Class as [Class] ,Sum(CASE WHEN a.DateCol >= DATEADD(MONTH,-1,GETDATE()) THEN a.col1 ELSE 0 END) as [Current - Last 30 Days Col1] ,Sum(CASE WHEN a.DateCol >= DATEADD(MONTH,-1,GETDATE()) THEN a.col2 ELSE 0 END) as [Current - Last 30 Days Col2] ,Sum(CASE WHEN a.DateCol >= DATEADD(QUARTER,-1,GETDATE()) …
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.