代码之家  ›  专栏  ›  技术社区  ›  Ewan Makepeace

如何在SQL Server中禁用字符串截断错误?

  •  13
  • Ewan Makepeace  · 技术社区  · 15 年前

    如果插入或更新长度超过字段大小的字符串,我如何告诉SQL Server不要引发错误-我希望在此实例中进行静默截断。

    2 回复  |  直到 15 年前
        1
  •  33
  •   Rick van Lieshout    9 年前

    你要做的是将ANSI WARNINGS设置为OFF 你可以打电话来

    set ANSI_WARNINGS  OFF
    

    我还写了一个实际的例子:

    create table bla(id varchar(2))
    go
    
    insert bla values ('123') --fails
    
    
    set ANSI_WARNINGS  OFF
    
    insert bla values ('123') --succeeds
    

    完成后,请记住重新打开ANSI警告。 你可以打电话给:

    set ANSI_WARNINGS ON
    
        2
  •  2
  •   Craig    15 年前

    在插入变量之前,请尝试将其强制转换为精确的类型和长度。这可能会起到作用。铸造(和转换)更加灵活。:)