• Excel导入数据到数据库(Sql2005 ,Access)


    1.在Sql2005创建对应的表"Roll"

    2.应用以下这段代码

    string execelConnectionStr = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\Book1.xls;Extended Properties=""Excel 8.0;HDR=YES;""";
                
    using (OleDbConnection conn = new OleDbConnection(execelConnectionStr))
                
    {
                    OleDbCommand cmd 
    = new OleDbCommand("select * FROM [Sheet1$]", conn);
                    conn.Open();
                    
    using (DbDataReader dr = cmd.ExecuteReader())
                    
    {
                        
    string sqlConnectionString = @"Data Source=.\sqlexpress;Initial Catalog=Northwind;Integrated Security=True";
                        
    // Bulk Copy to SQL Server 
                        using (SqlBulkCopy bulkCopy = new SqlBulkCopy(sqlConnectionString))
                        
    {
                            bulkCopy.DestinationTableName 
    = "Roll";
                            bulkCopy.WriteToServer(dr);
                        }

                    }

                }

    3.Excel导入、导出数据到access,使用Com组件
        public static void ExcelImportDB()
            
    {
                OleDbConnection conExcel 
    = new OleDbConnection();
                
    try
                
    {
                    ApplicationClass access 
    = new ApplicationClass();

                    access.Visible 
    = false;
                    access.OpenCurrentDatabase(Settings.Default.DBPath, 
    true"");

                    OpenFileDialog openFile 
    = new OpenFileDialog();
                    openFile.Filter 
    = ("Excel 文件(*.xls)|*.xls");

                    
    if (openFile.ShowDialog() == DialogResult.OK)
                    
    {
                        access.DoCmd.TransferSpreadsheet(AcDataTransferType.acImport, AcSpreadSheetType.acSpreadsheetTypeExcel12, 
    "Intergral", openFile.FileName, truenullnull);

                        access.CloseCurrentDatabase();
                        access.DoCmd.Quit(AcQuitOption.acQuitSaveAll);

                        Marshal.ReleaseComObject(access);

                        access 
    = null;

                        System.Windows.Forms.MessageBox.Show(
    "导入数据成功""导入数据", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }

                }

                
    catch (Exception ex)
                
    {
                    System.Windows.Forms.MessageBox.Show(ex.ToString());
                }

                
    finally
                
    {
                    conExcel.Close();
                }

            }


            
    public static void DBExportExcel()
            
    {
                
    try
                
    {
                    ApplicationClass access 
    = new ApplicationClass();

                    access.Visible 
    = false;
                    access.OpenCurrentDatabase(Settings.Default.DBPath, 
    false"");

                    SaveFileDialog saveFile 
    = new SaveFileDialog();
                    saveFile.Filter 
    = ("Excel 文件(*.xls)|*.xls");
                    
    if (saveFile.ShowDialog() == DialogResult.OK)
                    
    {
                        access.DoCmd.TransferSpreadsheet(AcDataTransferType.acExport, AcSpreadSheetType.acSpreadsheetTypeExcel9, 
    "Intergral", saveFile.FileName, truenullnull);

                        access.CloseCurrentDatabase();
                        access.DoCmd.Quit(AcQuitOption.acQuitSaveNone);

                        Marshal.ReleaseComObject(access);

                        access 
    = null;

                        MessageBox.Show(
    "导出数据成功""导出数据", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }

                }

                
    catch (Exception ex)
                
    {
                    MessageBox.Show(ex.ToString());
                }

            }
  • 相关阅读:
    table表框去掉相邻的间隔
    各种日期格式化返回
    校验金额、大小写字母、大写字母、合法uri、email
    vue js校验金钱、数字
    vue-router 动态添加 路由
    可视化-echarts流向图制作
    HTTP状态码
    二分查找
    编程语言的变量为啥不能是数字开头
    python位运算
  • 原文地址:https://www.cnblogs.com/RuiLei/p/1214418.html
Copyright © 2020-2023  润新知