当前位置:编程学习 > C#/ASP.NET >>

SqlParameter指定了 size属性,并不会截取啊!size起了什么作用?



          public static string getstr(string str)
    {
        SqlParameter mypa =new SqlParameter("@username", SqlDbType.NVarChar, 3);
        mypa.Value = str;
        return mypa.Value.ToString();
    }



我指定了3的长度,比如调用

getstr("aaaaaaaaaaaaaaaaaaaaaaaaaaaaa");

返回值还是"aaaaaaaaaaaaaaaaaaaaaaaaaaaaa" 啊,这里SIZE到底起了什么作用? --------------------编程问答-------------------- 存到数据库里好像是截取了,楼主试试先 --------------------编程问答--------------------
引用 1 楼 imfor 的回复:
存到数据库里好像是截取了,楼主试试先
刚试过,好像 是的,不指定存数据库会报错,指定之后存数据库截取了 --------------------编程问答-------------------- Mark --------------------编程问答-------------------- 你数据库里不是指定大小了吗 --------------------编程问答-------------------- 大小须和数据库指定的一样,要么就干脆不指定嘛,可以这样子,SqlParameter mypa =new SqlParameter("@username","值"); --------------------编程问答-------------------- 恩 字符串截取了 --------------------编程问答-------------------- --------------------编程问答-------------------- 图像太搞人了 --------------------编程问答-------------------- 数据库截取了
其实这个问题我也考虑过,就是把前台ASP。NET要插入数据库的变量的类型定义和数据库中相应字段的类型定义完全一致就可以避免问题的发生了!!! --------------------编程问答--------------------
引用 5 楼 myhope88 的回复:
大小须和数据库指定的一样,要么就干脆不指定嘛,可以这样子,SqlParameter mypa =new SqlParameter("@username","值");
你这种方法插入数据时如果超出数据库字段长度会报错的,不信自己试试 --------------------编程问答-------------------- SqlDbType.NVarChar---》SqlDbType.VarChar --------------------编程问答--------------------
引用 11 楼 wonderfuly 的回复:
SqlDbType.NVarChar---》SqlDbType.VarChar


+ --------------------编程问答-------------------- 获取或设置列中数据的最大大小(以字节为单位)。 
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,