您的位置:程序门 -> .net技术 -> asp.net



for循环插入数据问题!在线等,急救


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


for循环插入数据问题!在线等,急救[已结贴,结贴人:caowenkai]
发表于:2007-04-30 16:25:13 楼主

                for   (int   i   =   0;   i   <   dt.rows.count;   i++)//取数据行记录
                {
                          for   (int   j   =   0;   j   <   dt.columns.count;j++   )//取数据列数
                                {
                                            //这里如何写,可以把数据逐行插入到数据裤中?
                                }
                 
                }
发表于:2007-04-30 16:34:291楼 得分:3
不明白你的意思.你是获取了一个数据集的记录。   想遍历所有集合.还是什么啊?
发表于:2007-04-30 16:43:292楼 得分:0
for   (int   i   =   0;   i   <   dt.rows.count;   i++)//取数据行记录
                {
                          for   (int   j   =   0;   j   <   dt.columns.count;j++   )//取数据列数
                                {
                                            //这里如何写,可以把数据逐行插入到数据裤中?
                                }
                 
                }
我就是要把几条数据逐行插到sql表里去,用循环逐条插。因为我这些数据是在excel表里的.
发表于:2007-04-30 16:44:553楼 得分:2
其实你不用循环列的啊。

  内循环:
datarow       dr       =       dt.newrow();      
    dr[j]   =   "内容 ";


外循环:    
    dt.rows.add(dr);
发表于:2007-04-30 16:46:464楼 得分:3
for   (int   i   =   0;   i   <   dt.rows.count;   i++)//取数据行记录
                {
                          for   (int   j   =   0;   j   <   dt.columns.count;j++   )//取数据列数
                                {
                                            //这里如何写,可以把数据逐行插入到数据裤中?
                                            string   kk= "insert   into   tabla   (aa,bb)   values   ( 'aa ', 'bb ') "
                                            sqlconnection   cn=new   sqlconnection();....
                                            sqlcommand   cmd=new   sqlcommand(cn,kk)
                                            cn.open();
                                            cmd.EXECutenonquery;
                                            cn.close();  
                                }
                 
                }
发表于:2007-04-30 16:50:255楼 得分:3
其实你不用循环列的啊。

  内循环:
datarow       dr       =       dt.newrow();      
    dr[j]   =   "内容 ";


外循环:    
    dt.rows.add(dr);


sqldataadapter.update
发表于:2007-04-30 16:50:586楼 得分:0
for   (int   i   =   0;   i   <   dt.rows.count;   i++)//取数据行记录
                {
                          for   (int   j   =   0;   j   <   dt.columns.count;j++   )//取数据列数
                                {
                                            //这里如何写,可以把数据逐行插入到数据裤中?
                                            string   kk= "insert   into   tabla   (aa,bb)   values   ( 'aa ', 'bb ') "
                                            sqlconnection   cn=new   sqlconnection();....
                                            sqlcommand   cmd=new   sqlcommand(cn,kk)
                                            cn.open();
                                            cmd.EXECutenonquery;
                                            cn.close();  
                                }
                 
                }错的离谱看清楚这取的是列for   (int   j   =   0;   j   <   dt.columns.count;j++   )//
如果有10列,你这个   string   kk= "insert   into   tabla   (aa,bb)   values   ( 'aa ', 'bb ') "
                                            sqlconnection   cn=new   sqlconnection();....
                                            sqlcommand   cmd=new   sqlcommand(cn,kk)
                                            cn.open();
                                            cmd.EXECutenonquery;
                                            cn.close();  
不是要重复10次?
发表于:2007-04-30 16:53:377楼 得分:2
我没从EXECl读过数据。可不可以读到dataset   或者datatable里面.再去遍历.
发表于:2007-04-30 16:56:008楼 得分:6
for   (int   i   =   0;   i   <   dt.rows.count;   i++)//取数据行记录
                {
                          for   (int   j   =   0;   j   <   dt.columns.count;j++   )//取数据列数
                                {
                                            //这里如何写,可以把数据逐行插入到数据裤中?
                                            string   kk= "insert   into   tabla   (aa,bb)   values   ( 'aa ', 'bb ') "
                                            sqlconnection   cn=new   sqlconnection();....
                                            sqlcommand   cmd=new   sqlcommand(cn,kk)
                                            cn.open();
                                            cmd.EXECutenonquery;
                                            cn.close();  
                                }
                 
                }

发表于:2007-04-30 16:57:039楼 得分:3
没听明白你的意思~   你要从datatable里取出数据来,放到database里面去?
建议把你数据库的结构,和你表格的结构,以及你要把什么数据放到哪里,都写出来大家看看。

总感觉你的实现方法有问题~   你要读取数据的话,dt.row[i].item[j]就能读出来~
发表于:2007-04-30 17:01:3810楼 得分:0
我是这样的我上一个excel表,里面有多条数据,我要道到sql里,我已经把excel的记录放在一个datatable里了,我要循环插入到sql表里去,懂了吗?
发表于:2007-04-30 17:09:1411楼 得分:2
拼出一个字符串就是了
发表于:2007-04-30 17:11:2912楼 得分:2
sql   server   2005里边可以直接将excel的数据导入到数据库里边的
发表于:2007-04-30 17:11:5313楼 得分:2
为什么不直用sql   server的dts导入/导出功能,可以直接把excel导进数据啊
发表于:2007-04-30 17:17:1314楼 得分:0
道了,我有的是要做更新有的做添加撒.希望大家帮帮忙,               for   (int   i   =   0;   i   <   dt.rows.count;   i++)//取数据行记录
                {
                          for   (int   j   =   0;   j   <   dt.columns.count;j++   )//取数据列数
                                {
                                            //这里是写sql语句的,我的意思就是要在这里如何写sql
                                          我个人是知道excel表里的列有多少.其实可以直接写
                                }
                 
                }

for   (int   i   =   0;   i   <   dt.rows.count;   i++)//取数据行记录
                {
                          for   (int   j   =   0;   j   <   dt.columns.count;j++   )//取数据列数
                                {
                                            //这里是写sql语句的,我的意思就是要在这里如何写sql
                                          我个人是知道excel表里的列有多少.其实可以不要这里面个for循环就写
                                      string   str   =   dt.rows[i][0].tostring();
                                      string   str1   =   dt.rows[i][1].tostring();
                                      string   str1   =   dt.rows[i][3].tostring();  
                                这样之后在   insert   into   .....插入表里去,我的意思就是说那我如果不知道                       excel里有多少列的话,怎么做一个嵌套循环来逐条插?

                                }
                 
                }

发表于:2007-04-30 17:20:3415楼 得分:1
foreach(datarow   aa   in   datatable.select())
{
string   sqlstr   =   "insert   into   aa   values( "+aa[0]+ ", "+aa[1]+ "); "
cmd.EXECute();
}
发表于:2007-04-30 17:28:0016楼 得分:1
不用   循环,用sqlbulkcopy类就可以了一次全部导入datatable了,具体可查msdn
发表于:2007-04-30 17:30:1717楼 得分:0
可是我不是只有插入,我还有更新,有记录的我要做更新,没记录的才插入
发表于:2007-05-17 10:18:1618楼 得分:0
你这一题根本不需要循环,直接
  for   (int   i   =   0;   i   <   dt.rows.count;   i++)//逐行加
                {

                                string   lotno   =   dt.rows[i][1].tostring();                                  
                                string   enterprise   =   dt.rows[i][2].tostring();                          
                                string   cardnmae   =   dt.rows[i][3].tostring();                              
                                string   cardcode   =   dt.rows[i][4].tostring();                              

                       
                }


快速检索

最新资讯
热门点击