Я хотел бы знать, как я могу создать новую таблицу Microsoft Access из Windows DataGridView DataTable в C #.
- У меня уже есть база данных.(Например, Database.mdb или .accdb)
- Но я не создал таблицы в своем файле базы данных.
- У меня уже есть DataGridView, который отображает данные в таблице.
- Я хочу создать новую таблицу, точно такую же, что и DataGridView.
Пожалуйста, помогите мне решить эту проблему.Я пытался создать пустую таблицу.Но большинство моих утверждений в базе данных жестко закодированы.(Например, я делаю все свои столбцы с типами данных VARCHAR.) Я очень ценю.
Большое вам спасибо.:)
Это мои коды.
public void CreateDatabaseTable(string database, string dbTableName)
{
OleDbConnection con;
OleDbCommand cmd;
string queryStr = "";
try
{
con = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" + database);
con.Open();
queryStr = getDataGridViewHeaders().ToString();
cmd = new OleDbCommand("CREATE TABLE " + dbTableName +
"( [keyID] AUTOINCREMENT PRIMARY KEY NOT NULL," + queryStr + ")", con);
cmd.ExecuteNonQuery();
con.Close();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
public string getDataGridViewHeaders()
{
int colCount = dataGridView.Columns.Count;
string headerCols = "";
if (colCount > 0)
{
headerCols = "[" + dataGridView.Columns[0].HeaderText + "]" + " VARCHAR";
}
for (int col = 1; col < colCount; col++)
{
headerCols = headerCols + " , " + "[" + dataGridView.Columns[col].HeaderText + "]" + "VARCHAR";
}
Console.WriteLine(headerCols);
return headerCols;
}