【问题标题】:Argument data type ntext is invalid for argument 1 of isjson function参数数据类型 ntext 对 isjson 函数的参数 1 无效
【发布时间】:2019-09-30 09:03:51
【问题描述】:

我有现有的数据库表,我无法更改它的结构,因为它是实时的并且正在运行一些关键系统。我有一个 ntext 字段,它有一个 json 的 blob 我想使用 sql server 在那个 json 上查询。当我尝试查询时,我得到了错误:

消息 8116,第 16 级,状态 1,第 63 行 参数数据类型 ntext 对 json_query 函数的参数 1 无效。

因此,经过一番挖掘,似乎 ntext 字段不支持 json 操作。那么我可以做些什么来解决这个问题而不必改变我的表结构?

【问题讨论】:

  • 您是否尝试转换为NVARCHAR
  • 您可以将CAST 设为nvarchar(MAX)。鉴于 ntext 已被弃用近 15 年,最好将架构更改为 nvarchar(MAX)
  • 这只是为什么不使用 15 年前被更好的东西取代的东西的众多原因之一。 :)

标签: json sql-server


【解决方案1】:

所以根据建议转换为 nvarchar(max) 就可以了

【讨论】:

    猜你喜欢
    • 2017-03-22
    • 2016-07-29
    • 1970-01-01
    • 2021-08-07
    • 1970-01-01
    • 1970-01-01
    • 2014-05-06
    • 1970-01-01
    • 2022-11-09
    相关资源
    最近更新 更多