测试数据:

CREATE TABLE #test(a VARCHAR(1))

INSERT INTO #test SELECT '11111111111111111111111'

SELECT * FROM #test

DROP TABLE #test 执行以上语句会出错并提示:

[Err] 22001 - [SQL Server]将截断字符串或二进制数据。

如果希望截断字符串并成功插入,通常的做法是在插入时检测长度并使用substring函数做截断处理,

也可使用触发器在插入前判断。此外,SQLServer也有系统参数可以控制是否自动截断:

SET ANSI_WARNINGS OFF

此设置只对当前会话有效。可通过以下方法查询当前设置状态:

DECLARE @ANSI_WARN VARCHAR(3) = 'OFF'

IF (8 & @@OPTIONS) = 8

SET @ANSI_WARN = 'ON'

SELECT @ANSI_WARN AS ANSI_WARNINGS

建库或修改库时可以指定该选项:

ALTER DATABASE temp SET ANSI_WARNINGS OFF

CREATE DATABASE temp SET ANSI_WARNINGS OFF

当然,强烈不推荐这么做。修改该选项后,可在系统库视图中查看:

SELECT name,is_ansi_warnings_on FROM sys.databases 全局的设定查看方法为:

sp_configure 'user options' 其中config_value=0则为无数据。设置方法为:

EXEC sp_configure 'user options', 8

RECONFIGURE

注意:

设置的优先级为:会话>全局>数据库选项

SQLServer2008以前的版本只能通过以下方式设置(并且该过程在2008被废弃):

sp_dboption '数据库名', 'ansi warnings', 1

参考:

php mssql 字符串截断,SQLServer 自动截断字符串相关推荐

  1. T-SQL字符串相加之后被截断的那点事

    本文出处:http://www.cnblogs.com/wy123/p/6217772.html 字符串自身相加, 虽然赋值给了varchar(max)类型的变量,在某些特殊情况下仍然会被" ...

  2. python字符串截取后拼接_Python字符串拼接、截断、搜索、替换,python,截取,查找

    熟练掌握字符串操作可以使我们的开发效率更高,接下来总结一下python字符串的操作 一.字符串拼接 1.字符串拼接,直接用加号即可, string1 = "Today is " s ...

  3. JavaScript 技术篇-js自动转换类型,自动转换为字符串,js避免自动转换的坑

    自动转换类型 当 JavaScript 尝试操作一个 "错误" 的数据类型时,会自动转换为 "正确" 的数据类型. 而往往这种隐式的转化可能给程序带来很多莫名奇 ...

  4. SQLServer常用的字符串函数梳理

    今天给大家分享一下SQLServer常用的字符串函数知识笔记,希望对大家能有所帮助! 1.ASCII(字符串表达式) 作用:返回表达式最左侧字符串的ASCII代码值. 示例:SELECT ASCII( ...

  5. mysql 配置自动截断_MySql超长自动截断实例详解

    MySql超长自动截断实例详解 小伙伴问到一个问题,为啥在项目中调用插入或者更新语句时超长的字无法自动截断,而在navicat中直接执行是可以自动截断的? 如下 CREATE TABLE `p_app ...

  6. char varchar nchar nvarchar 四者的区别是什么(为何SQL Server自动给字符串末尾加空格)...

    本着低碳的原则将几个变量声明为nchar,结果发现尾巴上每次都多一大串空格,C#中不得不多次Trim劳心费神易出错.上网一查原来四种字符串看似相近其实讲究很多,其中以本帖最为全面,特此转发. 原帖:h ...

  7. mysql 字符串用省略号_CSS截取字符串自动补充省略号

    在页面中截取字符串并不一定非得用程序来实现截取,用CSS一样是可以实现字符串的截取的.并且用程序截取中英文混合的字符串时会发生截取的长度长短不一的情况,而用css截取就不会有这种问题.下面和大家分享一 ...

  8. mysql 自动截断_MySql中关于超长自动截断的案例详解

    这篇文章主要介绍了MySql超长自动截断实例详解的相关资料,这里通过实例来说明如何实现自动截断的功能,需要的朋友可以参考下 MySql超长自动截断实例详解 小伙伴问到一个问题,为啥在项目中调用插入或者 ...

  9. mysql 配置自动截断_MySql超长自动截断

    小伙伴问到一个问题,为啥在项目中调用插入或者更新语句时超长的字无法自动截断,而在navicat中直接执行是可以自动截断的? 如下 CREATE TABLE `p_app_station` ( `WX_ ...

最新文章

  1. android base64编码
  2. OpenCV感兴趣区域Region of interest的实例(附完整代码)
  3. Asp.Net Core 快速邮件队列设计与实现
  4. Call to localhost/127.0.0.1:9000 failed on connection exception:java.net.ConnectException的解决方案
  5. Atitit webshell java 实现 命令行输出读取问题总结 1.1. 读取组赛 或者读取了一部分。。使用cmd /c 模式,强制关闭刷新缓冲区 1 1.2. 乱码解决 1 1.3. /h
  6. 弹性均质圆环法计算过程_盾构隧道衬砌管片计算方法的比较
  7. 服务器信号满格网速很慢,信号满格网速太慢是什么原因
  8. linux基本权限例子,Linux-3 文件权限-基本权限
  9. 403,404,503等 HTTP状态码(HTTP Status Code)
  10. 求解袋鼠过河问题(dp)
  11. geoip php 获取城市,Laravel 中利用 GeoIP 获取用户地理位置信息
  12. QuantLib 金融计算——收益率曲线之构建曲线(1)
  13. Windows Server 2008 R2 3389端口更改
  14. 初学者奇怪的迷惑点:CTR模式,做实验的时候nonce的取值为啥啊固定?
  15. Kafka的监控指标
  16. Python3|Opencv——dst参数的含义和使用
  17. gremlin 语法
  18. android 4.2 webview,java-Android(4.4)WebView第二次加载时不显示ifra...
  19. python-pygame与pymunk-台球游戏
  20. 笔记本计算机接口类型,小白入门必看!笔记本电脑常见接口都在这了

热门文章

  1. i2c信号的ACK与NACK
  2. PhotoSwipe简介-专为移动触摸设备设计的相册/画廊.兼容所有iPhone、iPad、黑莓6+,以及桌面浏览器.底层实现基于HTML/CSS/JavaScript,是一款免费开源的相册产品
  3. 面试常问-Alpha测试和Beta测试
  4. Neural Turing Machines-NTM系列(三)ntm-lasagne源码分析
  5. FlinkSql中表的创建及查询
  6. Servlet+JSP一文完结
  7. 计算机专业调研报告图片,计算机专业毕业设计论文(计算机专业调研报告范文)...
  8. BRDF Explorer
  9. 目标检测算法——GHM
  10. nas 群晖 git 项目创建步骤