以'开头的标识符太长。最大长度为128

我将数据库转移到MS SQL Server 2008 R2,当我尝试保存长字符串时,它给了我最大长度错误,而我将它替换后将该列的数据类型设置为“文本”与“

varchar(max)”,但那里没有解决方案。

请为我提供一个解决此问题的解决方案。我正在执行以下查询:

update hotel 

set hotel_policy =

"Overview of Park Central New York - New York

This hotel is making improvements.

The property is undergoing renovations. The following areas are affected:

Bar/lounge

Business center

Select guestrooms

Every effort will be made to minimize noise and disturbance.

Occupying a Beaux Arts building dating to 1927, Park Central New York Hotel is within a block of famed concert venue Carnegie Hall and within a 5-minute walk of Manhattan’s world-renowned Broadway theater district. Prefer the great outdoors to the Great White Way? Central Park is just 3 blocks from the hotel. There, you can rent a rowboat at the lake, play a game of tennis, or visit the Central Park Zoo. The international boutiques and flagship department stores of Fifth Avenue start within a 10-minute walk of the hotel. For travel to sights farther afield, there are 7 subway lines located within 3 blocks of the Park Central.

The hotel has a snack bar for guests' convenience, and coffee and tea in the lobby.

Retreat to your guestroom and sink into a bed with a pillowtop mattress and down comforter and pillows. Need to check email or finish up some work? You’ll find a desk with an ergonomic chair and wireless high-speed Internet access (surcharge). Unwind with a video game (surcharge) on the flat-panel HDTV."

where hotel_id = 1

我进行了很多搜索,但是找到的解决方案对我没有用。

谢谢!

回答:

根据ANSI SQL标准,对象标识符(例如,而不是字符串定界符())使用双引号(如有 必要 ),UPDATE "hotel"

...)"Overview of Park Central ..."SQL

Server在QUOTED_IDENTIFIERis时具有此行为ON

使用单引号和双引号作为对象标识符(包括列别名)的分隔符的用法如下所述:

                        Delimiter   Delimiter

for for

SET QUOTED_IDENTIFIER Object ID Alias ID StringDelimiter

ON " or [] " or ' or [] '

OFF [] " or ' or [] " or '

  • ON那么双引号可以用作对象标识符(包括列别名)的定界符,单引号可以用作字符串文字和/或列别名(SELECT Column1 AS 'Alias1' ....)标识符的定界符。
  • OFF那么双引号可以用作列别名的定界符(SELECT Column1 AS "Alias1" ...)和字符串文字的定界符(SELECT "String1" AS Alias1 ...)。单引号可以用作字符串定界符,也可以用作列别名的定界符(SELECT Column1 ASAlias1 ...)。

改用单引号:

update hotel 

set hotel_policy = 'Overview of Park Central ...'

where hotel_id = 1

以上是 以'开头的标识符太长。最大长度为128 的全部内容, 来源链接: utcz.com/qa/404473.html

回到顶部