C#Excel을 만들고 mdb 데이터베이스를 읽으며 Excel 데이터를 쓰고 mdb의 모든 표 이름을 가져와 여러 파일을 선택합니다

3375 단어 C#

C#Excel을 만들고 mdb 데이터베이스를 읽으며 Excel 데이터를 쓰고 mdb의 모든 표 이름을 가져와 여러 파일을 선택합니다


1. Excel 테이블을 만들고 OleDbCommand 클래스를 사용하여 SQL 문장을 실행하면 됩니다. 코드는 다음과 같습니다.
      /// 
        ///  
        /// 
        ///  Excel 
        public void createExcel(string excelName)
        {
            string exportDataSql = "CREATE TABLE Test ([ ] VarChar)";// SQL , Test excel sheet ,[ ] VarChar 
            string DataPath = "C:\\Users\
jtq\\Desktop\\convert\\ \\";// excel String sConnectionString = "Provider=Microsoft.ACE.OleDB.15.0;" + "Data Source=" + DataPath + ""+excelName+".xls;" +"Extended Properties=Excel 8.0;"; OleDbConnection cn = new OleDbConnection(sConnectionString);// Excel cn.Open(); cmdTable = new OleDbCommand(exportDataSql, cn); //// //cmdTable =cn.CreateCommand(); //cmdTable.CommandText = exportDataSql; cmdTable.ExecuteNonQuery();// SQL } }

2. mdb 데이터베이스를 읽고 OleDbConnection을 사용하여 mdb 데이터베이스에 연결합니다. 마찬가지로 OleDbCommand 클래스를 사용하여 SQL 문장을 실행하고 OleDbDataReader 데이터를 얻어 DataTable 데이터로 전환합니다. 코드는 다음과 같습니다.
String connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + sourceFile + ";";//sourceFile  mdb 
OleDbConnection conn = new OleDbConnection(connectionString);// mdb 
conn.open();
OleDbCommand cmd = conn.CreateCommand();// OleDbCommand 
string sql = "select * from " + TableName;//sql , TableName mdb 
cmd.CommandText = sql;
OleDbDataReader dataReader = cmd.ExecuteReader();// sql 
DataTable table = new DataTable();
table.Load(dataReader );//OleDbDataReader  DataTable
string data = "";
data = table.Rows[i][" "].ToString();// i “ ” 
 conn.Close();

3. Excel 테이블을 작성하는 것과 유사하게 Excel에 데이터를 기록합니다.
 string sql = "INSERT INTO " + fileSheetName +" VALUES('" + interData + "');// sql , fileSheetName  Excel sheet ,interData 。 , verCahr '';
cmd.CommandText = sql;//cmd OleDbCommand , 
cmd.ExecuteNonQuery();// 

4. mdb에 있는 모든 표의 이름을 가져옵니다.
public List getAllTableName(OleDbConnection con)
        {
            List AllTableName = new List();
            DataTable dt = con.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
            for (int i = 0, maxI = dt.Rows.Count; i < maxI; i++)
            {
                //  i Access 
                string sTempTableName = dt.Rows[i]["TABLE_NAME"].ToString();
                AllTableName.Add(sTempTableName);
            }
            return AllTableName;
        }

5, OpenFileDialog 클래스를 사용하여 여러 파일 선택
 OpenFileDialog OpenDg = new OpenFileDialog();
 OpenDg.Title = " ";
 OpenDg.Multiselect = true;// 
 OpenDg.Filter = "mdb (*.mdb)|*.mdb";// 
 OpenDg.RestoreDirectory = true;// 
 if (OpenDg.ShowDialog() == DialogResult.OK)// 
 {
 foreach (string file in OpenDg.FileNames)// foreach  
     {
        //file + 
         int position = file.LastIndexOf("\\");// \\ 
         fileName = file.Substring(position + 1);// 
     }
 }

좋은 웹페이지 즐겨찾기