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);//
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
WebView2를 Visual Studio 2017 Express에서 사용할 수 있을 때까지Evergreen .Net Framework SDK 4.8 VisualStudio2017에서 NuGet을 사용하기 때문에 패키지 관리 방법을 packages.config 대신 PackageReference를 사용해야...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.