可以在数据库中写个函数,比如:Create Function GetAStr(@OriStr varchar(8000),@AppendStr varchar(8000),@len int) Returns varchar(8000) AS Begin While (Len(@OriStr)<@len) Set @OriStr = @OriStr + @AppendStr Return Left(@OriStr,@len) End Go第1个参数 是即将被填充或截断的字符串, 第2个参数 是若第一个字符串长度用何字符串补齐 第3个参数 是规定的截取长度假设你原来的SQL语句是Select A From tb现在变成Select dbo.GetAStr(A,"登记表",18) From tb --注意一个汉字两个长度,第3个参数应该 = 第2个参数.length * 2 即可 ————————————————————————————————————————当然也可以在前端DataGrid的RowDataBound里面做,方法类似
if (document.gnmssq.textfield1.value.length<=1)
{
window.alert("用户名长度不能小于2");
gnmssq.textfield1.focus();
return false
}
{
for(int i=0;i<dt.Rows.count;i++)
{
if(dt.Rows[i]["yourColumn"].ToString().Length > MAX_ALLOW_LENGTH)
{
dt.Rows[i]["yourColumn"] = dt.Rows[i]["yourColumn"].ToString().SubString(0,MAX_ALLOW_LENGTH);
}
}
}
注 dt 是 DataTable 的对象
Returns varchar(8000)
AS
Begin
While (Len(@OriStr)<@len)
Set @OriStr = @OriStr + @AppendStr Return Left(@OriStr,@len)
End
Go第1个参数 是即将被填充或截断的字符串,
第2个参数 是若第一个字符串长度用何字符串补齐
第3个参数 是规定的截取长度假设你原来的SQL语句是Select A From tb现在变成Select dbo.GetAStr(A,"登记表",18) From tb --注意一个汉字两个长度,第3个参数应该 = 第2个参数.length * 2
即可
————————————————————————————————————————当然也可以在前端DataGrid的RowDataBound里面做,方法类似