日期:2014-05-18  浏览次数:20832 次

SQL Server中在插入数据时提示将截断字符串或二进制数据?
存储过程  
PROCEDURE   PROC_INSERT_TABLE  
@TABLENAME   NVARCHAR(30),  
@VALUES   NVARCHAR(2000),  
@COLNAME   NVARCHAR(850)  

AS  
DECLARE   @SQLSTR   NVARCHAR(4000)  
SET   @SQLSTR=N 'INSERT   INTO   '+@TABLENAME+@COLNAME+N 'VALUES   '+@VALUES  

EXEC   SP_EXECUTESQL   @SQLSTR  

我想让所有表的插入功能都都用这个存储过程.  
现在的问题是,如果@VALUES使NVARCHAR(4000),当数据量稍微大一点,就会提示-----将截断字符串或二进制数据-----,并且数据插入失败.  
如果@VALUES使用NTEXT,当插入的VALUES值大于两个的时候,SQL会将两个插入的值认为是一个值,也就是说insert   into   table   (字段1,字段2)   values( '值1,值2 ')   而不是( '值1 ', '值2 '),并且NTEXT也不支持 "+ "运算  
哪位同仁知道有什么可以解决的方法吗?  
如果能给出更好的INSERT   存储过程的方法也可以啊,但目的是多个表在INSERT时使用这一个存储过程.  
小弟初学者,如果您觉得问题过于简单或滑稽,请不要笑我哦
小弟先在这谢谢各位师兄师姐了

------解决方案--------------------
up
------解决方案--------------------
用短信猫做短信平台,比较稳定,不受网络安全影响,响应及时,适合一些重要的安全性高的业务需求,但是发送速度有限制,一般是800条/小时
sp短信通道发送速度快,但是由于接入的开发商很多,在服务器不多的情况下,必然会排队,有时繁忙时提交一条短信,第二天才能收到,而且网络不正常时,也会影响使用
建议一些管理软件用短信猫做短信平台
1.方寸GSM-Modem 短信平台

GSM-Modem 短信平台,无需联网,只需一台电脑,一个短信猫(或手机),一个短信开发接口,就可轻松建立短信服务器,可实现短信收发,短信互动等功能,一台电脑可以连接多个短信猫硬件,从而提高吞吐量。

2.方寸短信数据库接口(手机短信接口,短信二次开发控件)

通过本数据库接口,能使你现有的系统(如OA、CRM、ERP等系统)轻松实现无线办公功能,无论你用的是哪种开发语言(VB\VC\VFP\asp\jsp\java\pb\delphi...),只要你的系统能读写数据库即可对接!你仅需要在指定的表中添加记录,本接口程序就自动进行发送短信了,收到的短信会自动保存到数据库里,所以,您不需要了解任何有关数据通信方面的知识,就可实现手机短信的收发等功能!
电话:0755-25996144
联系人:陈先生
网址:http://www.fcwww.com
qq:393376247

------解决方案--------------------
写入字符型列数据超长。
sp_dboption qbyy, 'ansi warning ', false可自动截断超过部分的字符串