"执行字符串"的存储过程中字符串的声明

本文描述了一次在执行存储过程时遇到的问题,由于声明的字符串长度不足,导致部分字符串被截断,进而引发程序错误。文章详细展示了如何通过增加字符串长度来解决此问题,并提供了具体的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

   今天遇到了一个麻烦,以期的程序老是报错仔细检查原来是错在了一个执行字符串的存储过程的字符串上,可检查了N遍字符串一点毛病没有。又是跟踪又是断点最后终于弄明白了原来是在存储过程里声明字符串的长度不够导致字符串的一部分被截掉了。所以说在执行字符串的存储过程中字符串的长度一定要足够长要不就很麻烦了,呵呵
   这里是原来的存储过程
   我的程序中字符串的声明过程如下:


None.gif      private   string  GetFilterString()
ExpandedBlockStart.gifContractedBlock.gif    
dot.gif {
InBlock.gif        
string str = " CheckID > 0 ";
InBlock.gif        
if (MothPicker1.SelectedIndex > 0)
ExpandedSubBlockStart.gifContractedSubBlock.gif        
dot.gif{
InBlock.gif            
string strDate = MothPicker1.Date.ToString("yyyy-MM");
InBlock.gif            str 
+= "and convert(varchar(20),dbo.T_DangerSource_Check.InDate,120) like '%%" + strDate + "%%' ";
ExpandedSubBlockEnd.gif        }

InBlock.gif        
if (ddlType.SelectedIndex > 0)
ExpandedSubBlockStart.gifContractedSubBlock.gif        
dot.gif{
InBlock.gif            str 
+= " and dbo.T_DangerSource_File.TypeID = " + ddlType.SelectedValue + " ";
ExpandedSubBlockEnd.gif        }

InBlock.gif        
if (txtSourceName.Text.Trim() != "" && !string.IsNullOrEmpty(txtSourceName.Text.Trim()))
ExpandedSubBlockStart.gifContractedSubBlock.gif        
dot.gif{
InBlock.gif            str 
+= " and dbo.T_DangerSource_File.SourceName like'%%" + txtSourceName.Text.Trim() + "%%' ";
ExpandedSubBlockEnd.gif        }

InBlock.gif        str 
+= "and dbo.T_DangerSource_File.DeptID = '" + deptID + "'";
InBlock.gif        
return str;
ExpandedBlockEnd.gif    }

None.gif

 


转载于:https://www.cnblogs.com/hongyuniu/archive/2007/08/15/856619.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值