如何制作一个" SELECT INTO"查询外部数据库中的新表?

时间:2017-05-28 19:22:24

标签: c# sql ms-access

我有两个数据库:MainDB(来源:C:\Test\MainDB.accdb),有一个表(MainDataTable):

|  ID  |  NAME  |  DATE  |  
|  01  | Peter  |09-08-17|  
|  02  | Paul   |02-08-17|  
|  03  | Peter  |20-08-17|  

PeterDB(来源:C:\Test\PeterDB.accdb),没有表格。

我希望将INSERT中的所有行MainDataTable转换为PeterDB Name = Peter的所有行。

这是我的代码:

OleDbConnection con = new OleDbConnection();
con.ConnectionString = @"Provider = Microsoft.ACE.OLEDB.12.0; Data source = C:\Test\MainDB.accdb";
con.Open();

OleDbCommand command = new OleDbCommand("SELECT * INTO PeterDB [IN C:\Test\PeterDB.accdb] FROM MainDB WHERE Name = 'Peter'; ", con);

try
{
    command.ExecuteNonQuery();
    con.Close();
}
catch (Exception ex)
{
    MessageBox.Show(ex.Message);
    con.Close();
}

但是我无法执行该查询(因为我认为是数据库源代码)

1 个答案:

答案 0 :(得分:0)

这应该有效:

SELECT * 
INTO [C:\Test\PeterDB.accdb].[NewTable] 
FROM [MainDataTable] 
WHERE [Name] = 'Peter'