Я предлагаю сначала установить SQLConnection на SQL-сервер и запросить нужные данные в DataTable.
using (SqlConnection conn = new SqlConnection("yourConnectionString"))
{
using (SqlCommand comm = new SqlCommand("Select columns from targetTable", conn))
{
SqlDataReader reader = comm.ExecuteReader();
DataTable tbl = new DataTable();
tbl.Load(reader);
}
}
После того, как у вас есть данные в вашей базе данных, создайте запрос для вашей команды вставки из него:зацикливание данных.
string insertCommandString = string.Empty;
for (int row = 0; row < tbl.Rows.Count; row++)
{
insertCommandString = "Insert into yourTableName(yourColumnNames) values(";
for (int column = 0; column < tbl.Columns.Count; column++)
{
if(tbl.Columns[column].DataType == typeof(String))
{
insertCommandString += "'" + tbl.Rows[row][column].ToString() + "'";
}
else
{
insertCommandString += tbl.Rows[row][column].ToString();
}
if (column < tbl.Columns.Count - 1)
{
insertCommandString += ",";
}
}
insertCommandString += ")";
System.Data.OleDb.OleDbCommand AccessCommand = new System.Data.OleDb.OleDbCommand(insertCommandString, AccessConn);
AccessCommand.ExecuteNonQuery();
}
Вы не должны экранировать символы из пароля.