A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张少甫 中级黑马   /  2013-2-26 12:18  /  1512 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

数据库里的数据可以直接导出为excel,excel能直接导入数据库吗?或者简单的方法

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

4 个回复

倒序浏览
打开SQL,找个你要导入的数据库,右键选择任务,里面有导入数据和导出数据,点进去根据提示选就行了,注意设置列名和主键

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

回复 使用道具 举报
可以,不用写代码,直接操作就行了。
回复 使用道具 举报
首先随便点击一个数据库》》然后右击》》任务》》导入数据》》下一步》》数据源那里选择Microsoft Excel》》选择路径》》
选择版本》》下一步》》选择要导入的数据库》》下一步》》下一步》》然后按照提示来操作就ok了

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 汪振 于 2013-3-1 15:59 编辑

http://blog.csdn.net/zj_alex/article/details/8626504

我之前也捣鼓了好长时间,已经再用了,可行
  1. DataSet ds = new DataSet();
  2.             try
  3.             {
  4.                 //获取全部数据
  5.                 string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + excelFile + ";" + "Extended Properties=Excel 8.0;";
  6.                 OleDbConnection conn = new OleDbConnection(strConn);
  7.                 conn.Open();
  8.                 string strExcel = "";
  9.                 OleDbDataAdapter myCommand = null;
  10.                 strExcel = string.Format("select * from [{0}$]", sheetName);
  11.                 myCommand = new OleDbDataAdapter(strExcel, strConn);
  12.                 myCommand.Fill(ds, sheetName);
  13.                 //如果目标表不存在则创建
  14.                 string strSql = string.Format("if object_id('{0}') is null create table {0}(", sheetName);
  15.                 foreach (System.Data.DataColumn c in ds.Tables[0].Columns)
  16.                 {
  17.                     strSql += string.Format("[{0}] varchar(255),", c.ColumnName);
  18.                 }
  19.                 strSql = strSql.Trim(',') + ")";


  20.                 using (System.Data.SqlClient.SqlConnection sqlconn = new System.Data.SqlClient.SqlConnection(connectionString))
  21.                 {
  22.                     SqlCommand cmd = sqlconn.CreateCommand();
  23.                     cmd.CommandText = "drop table Sheet1";
  24.                     sqlconn.Open();
  25.                     cmd.ExecuteNonQuery();
  26.                     System.Data.SqlClient.SqlCommand command = sqlconn.CreateCommand();
  27.                     command.CommandText = strSql;
  28.                     command.ExecuteNonQuery();
  29.                     sqlconn.Close();
  30.                 }
  31.                 //用bcp导入数据
  32.                 using (System.Data.SqlClient.SqlBulkCopy bcp = new System.Data.SqlClient.SqlBulkCopy(connectionString))
  33.                 {
  34.                     bcp.SqlRowsCopied += new System.Data.SqlClient.SqlRowsCopiedEventHandler(bcp_SqlRowsCopied);
  35.                     bcp.BatchSize = 100;//每次传输的行数
  36.                     bcp.NotifyAfter = 100;//进度提示的行数
  37.                     bcp.DestinationTableName = sheetName;//目标表
  38.                     bcp.WriteToServer(ds.Tables[0]);
  39.                 }
  40.                 MessageBox.Show("数据导入成功");

  41.             }
  42.             catch (Exception ex)
  43.             {
  44.                 System.Windows.Forms.MessageBox.Show(ex.Message);
  45.             }
复制代码

q.jpg (57.77 KB, 下载次数: 23)

q.jpg

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马