在线急等(datagrid).....
各位大虾:
我在datagrid的模版列中加入了一dropdownlist控件,dropdownlist的items有A,B,C,D四个选项,
当我选择完,单击提交后,我想将我选择的值写进数据库中,但是他提示出错了,请高手能帮小弟解决,毕业设计就要交了,万分感谢.
private void lbtnNext_Click(object sender, System.EventArgs e)
{
DaJuan D=new DaJuan();//我建立了一个DaJuan类
foreach(System.Web.UI.WebControls.DataGridItem dl in this.DataGrid1.Items)
{
DropDownList ddl=(DropDownList)dl.FindControl("DropDownList1");
D.daJuanContent=ddl.SelectedValue;
SqlConnection con=DB1.createConnection();
con.Open();
SqlCommand cmd=new SqlCommand("insert into selectedValue1 values(@daJuanContent)",con);//我在数据库中建立了一个selectedValue1表
SqlParameter para=new SqlParameter("@daJuanContent",SqlDbType.VarChar,5);
para.Value=D.daJuanContent;
cmd.Parameters.Add(para);
cmd.ExecuteNonQuery();
con.Close();
}
Response.Write("<script language='javascript'>alert('您的数据已经录入到数据库!');</script>");
}
运行后提示错误为:
“/Test”应用程序中的服务器错误。
--------------------------------------------------------------------------------
将截断字符串或二进制数据。语句已终止。
小弟真的很急,希望好心人能帮忙,小弟感激不尽!
问题点数:100、回复次数:12Top
1 楼shalen520(Love will keep us alive)回复于 2006-06-03 01:16:23 得分 0
你的表只有一个字段么?
看一下数据库中该字段的长度是多少,应该是输入的长度大于字段的长度导致输入的数据被截断报错Top
2 楼xaoxong(寒秋残月)回复于 2006-06-03 01:38:19 得分 0
("@daJuanContent",SqlDbType.VarChar,5);这个和你数据库里的字段设计一致吗?Top
3 楼xitie112()回复于 2006-06-03 02:37:27 得分 0
是一致的
我的表为:
create table selectedValue1
(
selected1 varchar(5)
)
Top
4 楼saucer(思归)回复于 2006-06-03 02:43:30 得分 0
try
para.Value= D.daJuanContent.Length <= 5? D.daJuanContent : D.daJuanContent.Substring(0,5);
by the way, enclosing the connection open/close in a loop like this is probably bad, you should do connection open/close outside the loop, and you might need use transactionTop
5 楼shixin1198(好好学习 天天上上)回复于 2006-06-03 08:25:16 得分 100
同上 看看 数据库中 字段长度 是否小与5
强烈建议 以后saucer(思归) 大哥 不要在回答这么简单的问题了 你把分 挣了 我们这些低分的找谁要分去!!! 在回答你就回答点有难度跟争议的问题ok? 我那有 好几个问题没人回答呢!!!Top
6 楼ilovejolly(有些伤感)回复于 2006-06-03 08:58:10 得分 0
同意楼上的Top
7 楼lengyubing_1983(ajax阿贾克斯是荷兰最久负盛名的球队)回复于 2006-06-03 09:05:56 得分 0
对呀,那种错误是数据库中字段小于你输入的值的长度,在字段中设长一点Top
8 楼sunnystar365(一个人的天空)回复于 2006-06-03 10:18:43 得分 0
这是因为你录入的数据的长度比数据库表中的字段的大小大,所以会出现这种情况,
建议把数据库中的表中的字段设置长一些。Top
9 楼wang355()回复于 2006-06-03 10:20:39 得分 0
把数据库的字段设置长点就可以了Top
10 楼shaominwww(米奇米尼)回复于 2006-06-03 10:33:56 得分 0
我昨天也遇到了。是数据库中字段的长度设的太短了!对于我们新手,可能不大知道,以后肯定记住了。Top
11 楼jyk(今天由我来写的代码,明天就让程序自己完成!喜欢编程。和气生财。共同提高。共同进步!)回复于 2006-06-03 10:44:49 得分 0
绑顶Top
12 楼xitie112()回复于 2006-06-03 11:50:19 得分 0
哦
四归大哥不好意思
我给分给错了
还能重新给吗
其实来者都应该给分的
感谢大家的帮助
我先试下
Top




