请问我下面这个段关于2维数组的代码那里错了?(我的目的是把查询出来的记录先保存到数组然后再插入到另外一个表中)
sql_select="select xh,xm,xqmc,lybh,fh,sj_cb,kdf,blf from fygl_kdblf where jfbz='0'";
sql_select=sql_select+strserch+" order by sj_sf desc";
OleDbCommand cmd3=new OleDbCommand(sql_select,PubF.cn);
OleDbDataReader dt3=cmd3.ExecuteReader();
ArrayList al = new ArrayList();
while(dt3.Read())
{
al.Add(new string[]{count.ToString(),dt3[1].ToString()});
al.Add(new string[]{count.ToString(),dt3[2].ToString()});
al.Add(new string[]{count.ToString(),dt3[3].ToString()});
al.Add(new string[]{count.ToString(),dt3[4].ToString()});
al.Add(new string[]{count.ToString(),dt3[5].ToString()});
al.Add(new string[]{count.ToString(),dt3[6].ToString()});
al.Add(new string[]{count.ToString(),dt3[7].ToString()});
count=count+1;
}
dt3.Close();for(int i=0;i<count;i++)
{
xh=PubF.GetSystemNumber("fygl_jflsb","xh");
sql_insert="insert into fygl_jflsb(xh,id,xm,xqmc,lybh,fh,sj_cb,kdf,blf,bs) values('"+xh+"',"+"'"+al[i,0]+"','"+al[i,1]+"',"+al[i,2]+"','"+al[i,3]+"','"+al[i,4]+"',to_date('"+al[i,5]+"','yyyy-mm-dd'),"+"to_number('"+al[i,6]+"'),to_number('"+al[i,7]+"'),'3')";
PubF.ExSQL(sql_insert);
}
这里运行后报错说:
c:\inetpub\wwwroot\wygl\fygl\jf.aspx.cs(217): 重载“this”方法未获取“2”参数
说明:在sql_inset语句里的al[i,0]报错说未获取“2”参数
sql_select="select xh,xm,xqmc,lybh,fh,sj_cb,kdf,blf from fygl_kdblf where jfbz='0'";
sql_select=sql_select+strserch+" order by sj_sf desc";
OleDbCommand cmd3=new OleDbCommand(sql_select,PubF.cn);
OleDbDataReader dt3=cmd3.ExecuteReader();
ArrayList al = new ArrayList();
while(dt3.Read())
{
al.Add(new string[]{count.ToString(),dt3[1].ToString()});
al.Add(new string[]{count.ToString(),dt3[2].ToString()});
al.Add(new string[]{count.ToString(),dt3[3].ToString()});
al.Add(new string[]{count.ToString(),dt3[4].ToString()});
al.Add(new string[]{count.ToString(),dt3[5].ToString()});
al.Add(new string[]{count.ToString(),dt3[6].ToString()});
al.Add(new string[]{count.ToString(),dt3[7].ToString()});
count=count+1;
}
dt3.Close();for(int i=0;i<count;i++)
{
xh=PubF.GetSystemNumber("fygl_jflsb","xh");
sql_insert="insert into fygl_jflsb(xh,id,xm,xqmc,lybh,fh,sj_cb,kdf,blf,bs) values('"+xh+"',"+"'"+al[i,0]+"','"+al[i,1]+"',"+al[i,2]+"','"+al[i,3]+"','"+al[i,4]+"',to_date('"+al[i,5]+"','yyyy-mm-dd'),"+"to_number('"+al[i,6]+"'),to_number('"+al[i,7]+"'),'3')";
PubF.ExSQL(sql_insert);
}
这里运行后报错说:
c:\inetpub\wwwroot\wygl\fygl\jf.aspx.cs(217): 重载“this”方法未获取“2”参数
说明:在sql_inset语句里的al[i,0]报错说未获取“2”参数
解决方案 »
- Repeater控件里如何找到Label控件
- asp.net 中二级联运菜单怎么做
- 配置错误 如何解决?
- 如何,使list可以变成可以手工输入的呢?修改什么属性呢?
- 奇了怪了,怎么直接用ie打开一个aspx文件好好的,
- DataGrid的問題
- 如何在服务端获取页面javascript变量的值?
- VS.net2003IDE有时候在代码页面中所有的代码都变成黑色,没有不同代码的颜色区别,而且不能够自动感知属性和方法,撤销操作就会报错,现在编
- 我想在删除记录时出现提示窗口,该怎样实现?
- 关于得到asp.net 客户端 计算机名的问题
- 求助!一个关于编码的问题,VB代码转换成C#代码的
- 两个很菜的问题
string sql_select = sql_select + strserch + " order by sj_sf desc";
OleDbCommand cmd3 = new OleDbCommand(sql_select, PubF.cn);
OleDbDataReader dt3 = cmd3.ExecuteReader();
ArrayList al = new ArrayList();
while (dt3.Read())
{
al.Add(new string[] { dt3[0].ToString(),
dt3[1].ToString() ,
dt3[2].ToString() ,
dt3[3].ToString() ,
dt3[4].ToString() ,
dt3[5].ToString() ,
dt3[6].ToString() });
}
dt3.Close(); for (int i = 0; i < al.Count; i++)
{
xh = PubF.GetSystemNumber("fygl_jflsb", "xh");
string[] tmp = (string[])al[i];
string sql_insert = "insert into fygl_jflsb(xh,id,xm,xqmc,lybh,fh,sj_cb,kdf,blf,bs) values('" + xh + "'," + "'" + al[i, 0] + "','" + tmp[0] + "'," + tmp[1] + "','" + tmp[2] + "','" + tmp[3] + "',to_date('" + tmp[4] + "','yyyy-mm-dd')," + "to_number('" + tmp[5] + "'),to_number('" + tmp[6] + "'),'3')";
PubF.ExSQL(sql_insert);
}
而且你的循环仅添加了7个值,而后面的取数的循环却要取8个值
string sql_select = sql_select + strserch + " order by sj_sf desc";
OleDbCommand cmd3 = new OleDbCommand(sql_select, PubF.cn);
OleDbDataReader dt3 = cmd3.ExecuteReader();
ArrayList al = new ArrayList();
while (dt3.Read())
{
al.Add(new string[] { dt3[0].ToString(),
dt3[1].ToString() ,
dt3[2].ToString() ,
dt3[3].ToString() ,
dt3[4].ToString() ,
dt3[5].ToString() ,
dt3[6].ToString() ,
dt3[7].ToString() });
}
dt3.Close(); for (int i = 0; i < al.Count; i++)
{
xh = PubF.GetSystemNumber("fygl_jflsb", "xh");
string[] tmp = (string[])al[i];
sql_insert="insert into fygl_jflsb(xh,id,xm,xqmc,lybh,fh,sj_cb,kdf,blf,bs) values('"+xh+"',"+"'"+tmp[0]+"','"+tmp[1]+"',"+tmp[2]+"','"+tmp[3]+"','"+tmp[4]+"',to_date('"+tmp[5]+"','yyyy-mm-dd'),"+"to_number('"+tmp[6]+"'),to_number('"+tmp[7]+"'),'3')";
PubF.ExSQL(sql_insert);
}