标签: sql-server-2012

SQL Server IF EXISTS THEN 1 ELSE 2

使用Sql Server 2012.我有一个存储过程,其中一部分检查用户名是否在表中.如果是,则返回1,如果不是,则返回2.这是我的代码:

IF EXISTS (SELECT * FROM tblGLUserAccess WHERE GLUserName ='xxxxxxxx') 1 else 2
Run Code Online (Sandbox Code Playgroud)

但是,我一直收到以下错误:

'1'附近的语法不正确.

这是否可以通过IF EXIST实现?

问候,

迈克尔

sql sql-server stored-procedures if-statement sql-server-2012

32
推荐指数
5
解决办法
18万
查看次数

31
推荐指数
2
解决办法
14万
查看次数

如何在SQL Server中找到正在运行的跟踪?

有没有一种简单的方法来确定sp_trace_createSQL Server 2000上已设置了哪些跟踪?SQL Server 2005,2008,2012或2014怎么样?

sql-server sql-server-2005 sql-server-2008 sql-server-2012 sql-server-2017

31
推荐指数
1
解决办法
5万
查看次数

从SQL Server SEQUENCE获取当前值

我想从序列中获取当前值 - 与序列属性窗口SQL Server Management Studio中显示的值相同

在此输入图像描述

我的序列是用这个语句创建的:

CREATE SEQUENCE [OrderNumberSequence]
    as int
    START WITH 4000
    INCREMENT BY 1
    MINVALUE 0
    NO MAXVALUE
    NO CACHE;
GO
Run Code Online (Sandbox Code Playgroud)

从MSDN尝试过这个SQL - 但结果是每次运行查询时我的数字都会增加5

DECLARE  
  @FirstSeqNum sql_variant
, @LastSeqNum sql_variant
, @CycleCount int
, @SeqIncr sql_variant
, @SeqMinVal sql_variant
, @SeqMaxVal sql_variant ;

EXEC sys.sp_sequence_get_range
@sequence_name = N'[OrderNumberSequence]'
, @range_size = 5
, @range_first_value = @FirstSeqNum OUTPUT 
, @range_last_value = @LastSeqNum OUTPUT 
, @range_cycle_count = @CycleCount OUTPUT
, @sequence_increment = @SeqIncr OUTPUT
, …
Run Code Online (Sandbox Code Playgroud)

t-sql sequence sql-server-2012

31
推荐指数
1
解决办法
5万
查看次数

在SQL Server 2012上还原SQL Server 2000备份

我将备份从SQL Server 2000还原到最新版本时出现以下错误消息.我不知道旧版本,现在我使用的是SQL Server 2012(11.0.3128.0).

错误消息是:

消息3169,级别16,状态1,服务器FF101,行1
数据库在运行版本8.00.0760的服务器上备份.该版本与此服务器不兼容,该服务器运行的是版本11.00.3128.在支持备份的服务器上还原数据库,或使用与此服务器兼容的备份.

sql-server sql-server-2000 sql-server-2012

31
推荐指数
1
解决办法
5万
查看次数

Try_Convert for SQL Server 2008 R2

我正在使用SQL Server 2008 R2并且有一个VARCHAR我想要转换为DECIMAL(28,10)使用的列CONVERT.但是其中许多行格式错误,因此无法将它们解析为数字.在这种情况下,我只想通过将结果设置为0或NULL来跳过这些.

我知道SQL Server 2012(TRY_CONVERT())中有一个新的语句会很方便.

这可能是在2008年还是我必须等到我们更新到下一个版本的SQL 2012?

编辑

不幸的ISNUMERIC()是,在这种情况下不可靠.我试过了

ISNUMERIC(myCol) = 1
Run Code Online (Sandbox Code Playgroud)

对于CONVERT无法转换为的行,返回true DECIMAL.

sql sql-server sql-server-2008 sql-server-2012

31
推荐指数
5
解决办法
3万
查看次数

SQL Server连接字符串 - 点(".")或"(本地)"或"(localdb)"

我最近不得不安装SQL Server并将数据库恢复到2台笔记本电脑,第一次花了我几天时间弄明白,第二次我还在苦苦挣扎.

我两个都在这里得到这个错误:

建立与SQL Server的连接时发生与网络相关或特定于实例的错误.服务器未找到或无法访问.验证实例名称是否正确,以及SQL Server是否配置为允许远程连接.(提供者:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)

我仍然在第二次得到它.

我做了很多研究,并遵循StackOverflow和其他网站上列出的所有步骤,例如确保SQL Server运行TCP和命名管道,确保SQL Server允许远程连接,以及我能找到的所有其他故障排除步骤.

最后我发现我只是在第一台笔记本电脑上输入错误的连接字符串.(localdb)\MSSQLSERVER2012正如它在许多网站上所做的那样,我试图使用(或类似的东西).它在我使用时开始工作.\MSSQLSERVER2012.我以为他们都指向同一个地方,但显然不是.

我真的想再次避免这个问题,并弄清楚如何设置我的第二台笔记本电脑.我怎么知道我是否应该使用.\SQLSERVER2012,(local)\SQLSERVER2012,(localdb)\SQLSERVER2012等?有没有一种简单的方法可以使用命令行工具找到它SqlLocalDb?这首先是如何设置的?

database connection-string sql-server-2008 sql-server-2008-r2 sql-server-2012

31
推荐指数
1
解决办法
2万
查看次数

如何将SQL Server 2012数据库还原到SQL Server 2008 R2?

我正在尝试将从SQL Server 2012中获取的备份还原到SQL Server 2008 R2,并且它会出错

指定演员表无效.(SqlManagerUI)

如果您有任何解决方案,请发表评论

谢谢.

sql database sql-server sql-server-2008-r2 sql-server-2012

30
推荐指数
4
解决办法
12万
查看次数

事务是否会在同一SQL服务器中跨多个数据库工作?如果是这样,这是一个分布式事务吗?

事务是否会在同一SQL服务器中跨多个数据库工作?如果是这样,这是一个分布式事务吗?还是会基本BEGIN TRANSACTION工作?

t-sql sql-server transactions sql-server-2012

29
推荐指数
2
解决办法
1万
查看次数

维护计划执行选项显示为灰色

当我转到SQL Server Management Studio - >管理 - >维护计划 - >右键单击我要执行的维护计划但该选项显示为灰色.

在此输入图像描述

  • 我检查过并且SQL Server Integration Services正在运行.
  • 我可以执行其他维护计划.
  • 我甚至试图修改这个计划没有问题,但执行保持灰色.
  • 目前没有其他计划实例在运行.
  • 我也断开了SQL Server并连接回来,但这也没有帮助.
  • SQL代理正在运行.

sql-server maintenance-plan sql-server-2012

29
推荐指数
1
解决办法
1万
查看次数