标签: nvarchar

在什么时候使用文本字段比在SQL Server中的nvarchar字段更有效?

在最好在SQL Server中使用文本字段之前,nvarchar字段需要多长时间?将一个或另一个用于可能会或可能不会被查询的文本内容的一般指示是什么?

sql t-sql sql-server nvarchar sql-server-2005

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

SQL Server - 更好的数据类型来存储大字符串值

我们有一个数据库表,有大约200,000条记录.其中包括3个ntext列,其中包含长度为4000-70000的字符串数据.但桌面上的一个选择只需要1分钟以上的时间来返回数据.甚至使用where条件和索引来为条件选择12000条记录需要40秒.

所以我们决定将这些数据类型更改为nvarchar(max),但仍然没有注意到主要区别,因为它会将数据存储在行之外,因为它太长了.有什么更好的方法可以提高我的表的性能?

sql sql-server varchar nvarchar query-optimization

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

SQL Server 中 NVARCHAR 列的按子句排序

我需要为该nvarchar列排序。问题是该列没有相同的条目模式,该列的某些行的示例是

12    
9     
TEF      
78F    
T2R
Run Code Online (Sandbox Code Playgroud)

如何按 order By 子句对此列进行排序?我唯一感到宽慰的是,该列仅包含数字和字母数字字符。

sql-server nvarchar sql-server-2005 sql-order-by

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

在sql server中将'nvarchar'转换为'datetime'时发生转换错误

我有这个代码:

DECLARE @StartDate nvarchar
SET @StartDate='22/10/2014'
SELECT CAST (@StartDate as datetime)
Run Code Online (Sandbox Code Playgroud)

它给了我这个错误:

从字符串转换日期和/或时间时转换失败.

任何人都可以提出更好的方法/至少没有错误的方法来做到这一点.

sql nvarchar sql-server-2008 datetime-conversion

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

将一些 UTF8 数据插入 nvarchar 时丢失重音

创建表:

SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

SET ANSI_PADDING ON
GO

CREATE TABLE [dbo].[StringsTest](
    [Id] [int] IDENTITY(1,1) NOT NULL,
    [Value] [nvarchar](max) NOT NULL,
PRIMARY KEY CLUSTERED 
(
    [Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO

SET ANSI_PADDING ON
GO
Run Code Online (Sandbox Code Playgroud)

插入数据(拉脱维亚语):

INSERT INTO [dbo].[StringsTest]
           ([Value])
     VALUES
           ('T?DS K?DU J?S')
GO
Run Code Online (Sandbox Code Playgroud)

选择:

SELECT * FROM [dbo].[StringsTest]
Run Code Online (Sandbox Code Playgroud)

结果失去了口音:

Id          Value
1           TADS KADU …
Run Code Online (Sandbox Code Playgroud)

sql-server nvarchar utf-8

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

存储在NVARCHAR(MAX)中的查询不适合

我有以下查询:

DECLARE @query AS NVARCHAR(MAX);
SET @query ='

SELECT

col1 [TÜR],
col2 [KOD],
col3 [BANKA/CAR?],
col4 [BANKA HESABI],
col5 [AÇIKLAMA],
col6 [VADE],
'+ @cols +'

FROM

(

(

SELECT
''LEAS?NG'' [col1],
 d.REGNR [col2],
 cl.DEFINITION_ [col3],
 '''' [col4],
 d.DESCRIPTION [col5],
 c.PAYMENTDATE [col6],
 a.KDVLI- Isnull(b.KDVLI,0) [AMOUNT],
 c.TRCURR [TRCURR],
 e.CURCODE [CURCODE]


FROM
(SELECT
LOGICALREF,
SUM(PAYMENTTOTAL) AS KDVSIZ,
SUM(INTTOTAL) AS FAIZ,
SUM(MAINTOTAL) AS ANAPARA,
SUM(VATINPAYMENTTOTAL-PAYMENTTOTAL) AS KDV,
SUM(VATINPAYMENTTOTAL) AS KDVLI

FROM LG_011_LEASINGPAYMENTSLNS
WHERE TRANSTYPE=0
GROUP BY LOGICALREF) a

LEFT OUTER JOIN

(SELECT
PARENTREF,
SUM(PAYMENTTOTAL) …
Run Code Online (Sandbox Code Playgroud)

sql sql-server stored-procedures nvarchar

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