社区
C#
帖子详情
dataGrid中的数据如何存入另一个表中?
junsheng
2004-12-03 01:03:08
在数据库查找到数据后mydatable=new DataTable()建一个表逐行添加,最后在dataGrid1.DataSource=mydatable;显示,现在要把这个查找结果的表填入到另一个数据库表中,查找了资料几乎都是讲用DataAdapter,dataSet进行填入的,如果只是简单生成一个表用dataGrid显示没有用到适配器和数据集,如何填入另一个表?或者使用适配器和数据集应如何改写?
...全文
220
9
打赏
收藏
dataGrid中的数据如何存入另一个表中?
在数据库查找到数据后mydatable=new DataTable()建一个表逐行添加,最后在dataGrid1.DataSource=mydatable;显示,现在要把这个查找结果的表填入到另一个数据库表中,查找了资料几乎都是讲用DataAdapter,dataSet进行填入的,如果只是简单生成一个表用dataGrid显示没有用到适配器和数据集,如何填入另一个表?或者使用适配器和数据集应如何改写?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
junsheng
2004-12-08
打赏
举报
回复
问题己解决,是这样做的
for(int i=0;i<myDataTable.Rows.Count;i++)
{
string sqlstr="insert into //SQL语句,myDataTable中的数据一行一行插入。
SqlCommand command=new SqlCommand(sqlstr,conn);
command.ExecuteNonQuery();
}
不会更好的办法只好先这样了。
junsheng
2004-12-03
打赏
举报
回复
自己顶
junsheng
2004-12-03
打赏
举报
回复
谢谢各位,用到适配器也要用到SQL语句,另一个表是一个空表。我的问题也就是在dataGrid1中的表中显示的内容如何插入到数据库的表中的问题,说白了也就是表中显示的内容如何一行一行的插入到数据库中的另一个表中(对应的结构已经建好的表)51106354(大头)老兄您的关健处
//在这里写入你的insert语句可以是一个存储过程;能够在写明白一些就好了。
_jfeng(静心)老兄您的“若要存回数据库”这一部分好象没写完。
恕我愚钝,还请告知。
_jfeng
2004-12-03
打赏
举报
回复
如果只是简单生成一个表用dataGrid显示没有用到适配器和数据集,且不用存放回到数据库:
DataTabe dtold= new DataTable();
//..
DataTabe newdt = dtold.Copy();
若要存回数据库(可能字段名称不一样):
DataTabe newdt = new DataTable();
//自己添加和数据库表一样的字段,包括类型
newdt.Columns.Add("Table2_column1",typeof(System.string));
newdt.Columns.Add("Table2_column2",typeof(System.Decimal));
//..
foreach(DataRow dr in dtold)
{
DataRow drnew = newdt.NewRow();
drnew[Table2_column1]=dr["c1"];
drnew[Table2_column2]=dr["c2"];
//..
newdt.Rows.Add(drnew);
}
qingyuan18
2004-12-03
打赏
举报
回复
看来楼上的已经说得很清楚了~~`
51106354
2004-12-03
打赏
举报
回复
给你一个例子,是前两天我回答别的网友的问题,和你的相似,不过他是从一个表导入到另一个表的数据,也属于内存操作,你自己看看吧.
string Sql = "SqlServer查询";
string Sql1 = "Access查询";
SqlCommand cmd1 = new SqlCommand(Sql);
da.SelectCommand = cmd1;
DataSet ds = new DataSet;
DataTable NewSqlServer;
da = new SqlDataAdapter(ds,Conn1);
da.Fill(ds,"SqlServer表");
NewSqlServer= ds.Tables["SqlServer表"];//得到表结构
cmd1 = new SqlCommand(Sql1);
da.SelectCommand = cmd1;
DataTable ATable;
da = new SqlDataAdapter(ds,Conn1);
da.Fill(ds,"Access表");
ATable = ds.Tables["Access表"];//得到Access数据库表的数据
if(ATable.Rows.Count != 0)
{
DataRow NewRow;
for(int i=0;i<ATable.Rows.Count;i++)
{
NewRow = NewSqlServer.NewRow();
NewRow["ID"] = ATable.Rows[i]["ID"];
NewRow["PONO"] = ATable.Rows[i]["PONO"];
NewSqlServer.Rows.Add(NewRow);
}
}
//在这里写入你的insert语句可以是一个存储过程;
da.InsertCommand = cmd;
da.Update(NewSqlServer);
da.Dispose();
da = null;
Conn1.Close();
Conn1.Dispose();
yaopeng117
2004-12-03
打赏
举报
回复
可以用SqlDataBuilder。
当然也要用到SqlDataAdapter
river723
2004-12-03
打赏
举报
回复
没太明白你的意思,表复制是table1.Clone(),只复制结构是table1.Copy();
tonybaobao
2004-12-03
打赏
举报
回复
DataTable newTable = (DataTable)dataGrid1.DataSource;
//然后再用Adapter.Update()方法。你必须自己写Adapter.InsertCommand
//或者你可以foreach读取每DataRow,再读出每一个字段值,自己插入
VB6 设计带记忆的
DataGrid
数据
录入窗口.rar
VB6 设计带记忆的
数据
录入窗口,这种记忆实际上是将
DataGrid
临时输入的
数据
存入
到
数据
库
中
了,是
一个
数据
库应用范例,本例子
中
的
数据
库采用的Access。在本例
中
,用户临时对任意
DataGrid
行列操作时输入的内容,临时保存至
数据
库
中
,使用时及时读取,模拟
中
了记忆功能,方便了用户操作,不过未做测试,不知道
数据
量较大的时候,会不会对
数据
库造成压力,有心者可以自行测试哦。
利用
datagrid
view控件实现批量输入
数据
并
存入
数据
库
利用
datagrid
view控件实现批量输入
数据
并
存入
数据
库
EasyUI应用(项目实战)
jquery入门基础,jquery赋值取值,事件处理和绑定,提交
数据
,
datagrid
控件显示
数据
,分页,事件处理;Tabs控件动态创建多标签;datebox日期时间控件的赋值和取值;window弹出窗口应用;tree创建树形菜单,部门列表等,panel控件的使用;progressbar进度条的应用;dialog控件的使用;
C#
110,536
社区成员
642,578
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章