当前位置: 代码迷 >> ASP.NET >> 怎样批量写入数据到 access 多谢
  详细解决方案

怎样批量写入数据到 access 多谢

热度:9823   发布时间:2013-02-25 00:00:00.0
怎样批量写入数据到 access 谢谢!
我有一个form 是自动生成的,如下:
<form name="form1" method="post" action="2.aspx">
<input name="chengji_002" type="text" id="chengji_002" />
<input name="chengji_003" type="text" id="chengji_003" />
<input name="chengji_004" type="text" id="chengji_004" />
<input name="chengji_005" type="text" id="chengji_005" />
.....
我不确定会生成多少个,但不会起过80个
还有上面出现的 name值 和 id值 是相同的,但我不确定出现的name值、id值是什么

<input type="submit" name="Button1" value="确定提交" id="Button1" />
</form>

请问我如何批量接收?
请问我如何批量写入access ?
请详细一点(C#),刚学,非常感谢!


------解决方案--------------------------------------------------------
给你2种参考方法
1 写个存储过程含id,name两个参数 里面就是一条插入语句
程序中循环控制调用存储过程添加记录

2 先循环将记录放到DataTable中
再用SqlDataAdapter.update()一次性上传到服务器

可能还有更好方法
等待高手
------解决方案--------------------------------------------------------
只要取到,然后使用ADO.NET写入ACCESS就可以了......

详细代码可以找资料参照下就OK了
------解决方案--------------------------------------------------------
1楼...楼主说的是Access...Access不支持SP...
------解决方案--------------------------------------------------------
如果你确定Input内容都是你要提交的可以采用一下方法

用javascript

首先找到所有的Input的名称
var inputArr = document.getElementsByTagName("INPUT");
var allInputName="";
for(i=i;i<inputArr.length;i++)
{
if(allInputName=="")
allInputName=inputArr[i].name;
else
allInputName+=","+inputArr[i].name;
}

这样就能得到所有的Input了,然后将allInputName赋值给一个隐藏的Hidden
document.getElementById("Hidden").value=allInputName;

接下来在服务器端接收处理
首先Request隐藏的值(Hidden)

string allInputName = Request.Forn["Hidden"].ToString();

进行分组处理 string[] ArrInput=allInputName.Split(new char[1]{','});

然后逐个接收
int i=0;
foreach(string InputName in ArrInput)
{
string getInputValue=Request.Form[InputName[i]].ToString();
//
//写数据库
//
i++;
}

------解决方案--------------------------------------------------------
如果name值是相同的话,那request("name")将是一个数组,你循环取其中的值保存到数据库即可。
------解决方案--------------------------------------------------------
foreach(string InputName in ArrInput) 

string getInputValue=Request.Form[InputName].ToString(); 
// 
//写数据库 
// 

写错了,没有i了
------解决方案--------------------------------------------------------
Access用的不多,帮顶了
------解决方案--------------------------------------------------------
多个插入语句以;分割。
insert into ;insert into ;insert into ;insert into ;
------解决方案--------------------------------------------------------

 同意 4 楼的..
------解决方案--------------------------------------------------------
我是好人哦 
我帮楼主写出来了
你的HTML页面不用改,给据你的form的action属性,我写了2.aspx的处理程序。

using System.Data.OleDb;

 protected void Page_Load(object sender, EventArgs e)
{
OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Server.MapPath("App_Data/wygl.mdb"));
conn.Open();
OleDbCommand cmd = new OleDbCommand();
for (int i = 0; i < this.Request.Form.Count; i++)
{
string name=Request.Form.GetKey(i).ToString();
string value = Request.Form[i].ToString();
  相关解决方案