Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 如何将int转换为ntext_Sql_Tsql_Sql Server 2008 - Fatal编程技术网

Sql 如何将int转换为ntext

Sql 如何将int转换为ntext,sql,tsql,sql-server-2008,Sql,Tsql,Sql Server 2008,我需要将int字段(如1005转换为ntext类似的Alarm1005),但是CAST(ID为ntext)不起作用,那么如何将(CAST)int转换为ntext?转换(ID为nvarchar(10))为ntext) 编辑 正如gbn公正地暗示的那样,nvarchar(max)实际上是存储大型字符串数据更可取的类型 原因有二: 与那些可以处理ntext的相比,您在nvarchar上有很多这样的工作 不推荐使用ntext、text和image类型 还有一个很小的原因是,你不必重复施法。它将像CAST

我需要将
int
字段(如
1005
转换为
ntext
类似的
Alarm1005
),但是
CAST(ID为ntext)
不起作用,那么如何将(CAST)
int
转换为
ntext

转换(ID为nvarchar(10))为ntext)

编辑

正如gbn公正地暗示的那样,
nvarchar(max)
实际上是存储大型字符串数据更可取的类型

原因有二:

  • 与那些可以处理
    ntext
    的相比,您在
    nvarchar
    上有很多这样的工作
  • 不推荐使用
    ntext
    text
    image
    类型

  • 还有一个很小的原因是,你不必重复施法。它将像
    CAST(ID为nvarchar(10))
    CAST(ID为nvarchar(max))

    一样简单,不要使用
    NTEXT
    -它已被弃用(从SQL Server 2005开始),应该避免使用。使用
    NVARCHAR(MAX)
    instead我刚刚发现了这个问题,因为我有相同的问题。在我的例子中,我使用的是具有NTEXT列的SQLServer2000DB。除了尝试铸造或转化,我无法改变环境。
    ALTER TABLE MyTable ADD new_column NTEXT
    UPDATE MyTable SET new_column = cast(old_column as nvarchar(16))
    ALTER TABLE MyTable DROP COLUMN old_column