相关疑难解决方法(0)

SQL Server中的转义字符

我想使用带有转义字符的引号.我能怎么做?

我在SQL Server中收到错误

字符串后面的未闭合引号.

我在varchar变量中编写sql查询但是我收到了这个错误:

字符串后面的未闭合引号.

我想用引号作为转义字符.

提前致谢

sql-server escaping char

82
推荐指数
5
解决办法
35万
查看次数

替换SQL Server中的单引号

我在SQL Server中使用此函数来替换单引号.

但是,当我插入单引号时,它会抛出一个错误Replace(@strip,''','')):

Create Function [dbo].[fn_stripsingleQuote]
    (@strStrip varchar(Max))
    returns varchar
as
begin
    declare @CleanString varchar(Max)
    SET @var=(Replace(@strip,'',''))

    return @var
end
Run Code Online (Sandbox Code Playgroud)

sql-server error-handling replace

45
推荐指数
4
解决办法
25万
查看次数

构建数据库项目时出现"不正确的SET选项"错误

我们使用Visual Studio和数据库项目来生成我们的数据库.

我刚刚进行了一些数据库更改(包括添加一个名为的新表Correspondence)将这些更改导入到数据库项目中,并尝试部署(重建)数据库.

当我这样做时,我收到以下错误:

创建[dbo].[通信] ...消息1934,级别16,状态1,服务器(服务器名称),行1 CREATE TABLE失败,因为以下SET选项具有不正确的设置:'ANSI_WARNINGS,ANSI_PADDING'.验证SET选项是否正确,以便与计算列和/或筛选索引和/或查询通知和/或XML数据类型方法和/或空间索引操作的索引视图和/或索引一起使用.

任何人都可以向我解释这个错误,并帮我解决它?这是数据库项目用于创建此表的脚本.

PRINT N'Creating [dbo].[Correspondence]...';
GO

SET ANSI_NULLS, QUOTED_IDENTIFIER ON;
GO

CREATE TABLE [dbo].[Correspondence] (
    [Id]                INT              IDENTITY (1, 1) NOT NULL,
    [WorkbookId]        INT              NOT NULL,
    [ProviderId]        UNIQUEIDENTIFIER NOT NULL,
    [MessageThreadId]   INT              NOT NULL,
    [MessageThreadType] AS               ((1)) PERSISTED NOT NULL
);
GO

SET ANSI_NULLS, QUOTED_IDENTIFIER OFF;
GO

PRINT N'Creating PK_Correspondence...';
GO

ALTER TABLE [dbo].[Correspondence]
ADD CONSTRAINT [PK_Correspondence] PRIMARY KEY CLUSTERED ([Id] ASC)
    WITH (ALLOW_PAGE_LOCKS = ON, ALLOW_ROW_LOCKS = ON, PAD_INDEX = …
Run Code Online (Sandbox Code Playgroud)

sql-server database-project sql-server-2008

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

如何在 SQL 中使用单引号作为字符串的一部分

我有一个使用字符串的 where 子句,

Where 
    pm.Alias = 'Toys'R'Us France'
Run Code Online (Sandbox Code Playgroud)

然而,部分字符串使用单引号,'R'

我如何将整个字符串包裹起来传递到我的Where子句中

我不能使用:

Where 
    pm.Alias = 'Toys''R''Us France'
Run Code Online (Sandbox Code Playgroud)

因为我需要封装整个字符串,所以我将在 Excel 中使用它来将其作为参数传递到我的查询中

sql sql-server string

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

在 JDBC 查询中使用表名作为参数的安全方法

如何将表名作为参数放入 SQL 查询中的安全方法是什么?您不能使用PreparedStatement将表名称作为参数。使用Statement连接字符串与动态表名执行查询是可能的,但不建议这样做,因为存在SQL注入的风险。做到这一点的最佳方法是什么?

java jdbc dynamic tablename

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

字符串 ')' 后的非封闭引号 - OPENQUERY

我有以下查询,执行OPENQUERY

    DECLARE @DOMAIN NVARCHAR = N'XXX'
    DECLARE @QUERY NVARCHAR(MAX)= '
    SELECT * FROM OPENQUERY( [XX\XX],''

    SELECT  CONCAT(CONCAT([Firstname],''),[Lastname]) AS [Owner]
           FROM [Employee] '')'
    EXECUTE XX_executesql @QUERY
Run Code Online (Sandbox Code Playgroud)

当我执行时,出现以下错误:

消息 102,级别 15,状态 1,第 4 行 ')' 附近的语法不正确。消息 105,级别 15,状态 1,第 5 行 字符串 ')' 后的非封闭引号。

t-sql sql-server

4
推荐指数
1
解决办法
2548
查看次数

如何在sql命令中使用单引号?

可能重复:
如何在sqlserver中转义单引号?

我在下面有一个脚本,从这个链接中删除数据库中的所有内容.我在这一行执行时会出错.

SET @statement = '
IF(@type = 'F') or (@type = 'C') or (@type = 'D') or (@type='F') or (@type='K')
Run Code Online (Sandbox Code Playgroud)

原因是因为单引号.我想知道如何解决此错误?

/*** drop (pretty much) everything before rebuilding the database ***/
DECLARE
    OBJECTS CURSOR FOR SELECT
        so.name,
        so.type,
        so.type_desc,
        p.name AS parentName
    FROM
        sys.objects AS so
    LEFT JOIN sys.objects AS p ON so.parent_object_id = p.object_id
    WHERE
        so.schema_id = 1
    ORDER BY
        CASE
    WHEN so.type = 'F' THEN
        0
    WHEN so.type = 'TR' THEN
        1
    WHEN so.type …
Run Code Online (Sandbox Code Playgroud)

sql sql-server

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

SQL特殊字符

我需要写一个查询,我需要找到'字符.

像Shivam一样 - 我需要找到'标记'.

select * from DTCountries where CountryCode like '%'%'
Run Code Online (Sandbox Code Playgroud)

sql sql-server

2
推荐指数
2
解决办法
204
查看次数

如何插入包含单引号字符的字符串?

insert在SQL Server 2008中遇到此查询的问题

insert into Book values('B0000001I002','C# 3.0: A Beginner's Guide')
Run Code Online (Sandbox Code Playgroud)

如何让SQL忽略单引号C# 3.0: A Beginner's Guide

insert sql-server-2008

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

如何在表中添加一行varchar类型列,一个带有倒置逗号的单词?

我有一个表dbo.AccountTypes,后面有两列

AccountTypeId    int         not null
AccountTypeName  varchar(50) not null
Run Code Online (Sandbox Code Playgroud)

我想为各列添加值为1Partner的Capital A/c的行.我试过跟随插入命令,但它不起作用.

insert into dbo.AccountTypes (AccountTypeId, AccountTypeName)
values (1, "Partner's Capital A/c")
Run Code Online (Sandbox Code Playgroud)

请注意合作伙伴资本账户中的倒置逗号

但它失败了.有什么建议?

sql sql-server

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

SQL Server:更新,在数据中使用撇号设置

由于 '' 中的 ',下面的更新语句会引发错误

UPDATE Table 
SET [Company Name] = 'O'Donald Media Inc' 
WHERE [Company Name] = 'O'Donald Media  Inc'
Run Code Online (Sandbox Code Playgroud)

有人有办法处理这个问题吗?

谢谢

sql sql-server

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

在SQL Server中声明引用字符串

我正在尝试运行SQL命令,但我收到错误消息" 非有效标识符".

如果我使用此命令,

EXEC xp_cmdshell N'mkdir C:\Users\PC\Desktop\Backup\1042012'
GO
Run Code Online (Sandbox Code Playgroud)

然后这个命令正常工作

但是,如果我使用此命令

DECLARE @CurrentDate varchar(50)
DECLARE @Path varchar(200)
DECLARE @Command varchar(200)

SET @CurrentDate = GETDATE()
SET @Path = N'C:\Users\PC\Desktop\Backup'
SET @Command = N'xp_cmdshell " ' + 'MKDIR' + ' '+ @Path + '\' +  @CurrentDate + '" '

EXEC @Command
GO
Run Code Online (Sandbox Code Playgroud)

我收到了该错误消息.是否与正确声明字符串有关.

sql sql-server

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