欲洋先逸 2021-02-10 18:29 采纳率: 0%
浏览 20

动态网页如何实现上传一个文件即可批量导入数据的功能?

本人初学动态网页, 目前正在做一个练习, 要求在后台管理页面能够让管理员通过上传数据文件 (excel, access 之类的),就可以批量添加数据到网站的数据库, 或者直接覆盖原文件。

请问要用到什么代码 (python, JavaScript)?, 思路是什么? PHP 或 ASP 均可。

有什么工具或小程序可以使用的吗?

能 po 一段代码/经验贴的网址/ 参考书籍就更好啦

  • 写回答

1条回答 默认 最新

  • 榕树下的泥土 2021-02-10 20:06
    关注

    这个是C#的代码,希望能对你有用。  只要能循环读到excel,insert到目标数据库调用接口改一下就行了。

    string xlspath = @"d:\test\test.xls";
      test_Product pd = new test_Product();
      string conn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Extended Properties=Excel 8.0;" + "data source=" + xlspath;
      OleDbConnection Oleconn = new OleDbConnection(conn);
      Oleconn.Open();
      try
      {
          int t = 0, n = 0;
          OleDbCommand Olecommd = new OleDbCommand("select * from [Sheet1$]", Oleconn);
          OleDbDataReader reader = Olecommd.ExecuteReader();
          while (reader.Read() && reader.HasRows)
          {
              if (!DBFactory.Exists(test_ShopTable.ShopID.Equal(reader["ShopID"])))
              {
                  break;
              }
              if (!DBFactory.Exists(test_ProductTable.ProductName.Equal(reader["ProductName"])))
              {
                  pd.ProductName = reader["ProductName"].ToString();
                  pd.ProductCode = reader["ProductCode"].ToString();
                  pd.CategoryID = Convert.ToInt32(reader["CategoryID"]);
                  pd.ProductNum = Convert.ToInt32(reader["ProductNum"]);
                 
                  try
                  {
                      DBFactory.Add(pd);
                  }
                  catch (System.Data.SqlClient.SqlException ex)
                  {
                      throw new Exception(ex.Message);
                  }
                  t++;
              }
              else
              {
                  n++;
              }
          }
          MessageBox.Show("导入成功" + t + "条,失败" + n + "条!");
      }
      catch (System.Data.OleDb.OleDbException ex)
      {
          MessageBox.Show(ex.Message);
      }
      finally
      {
          Oleconn.Close();
          Thread.CurrentThread.Abort();
      }

    评论

报告相同问题?

悬赏问题

  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥30 python代码,帮调试,帮帮忙吧