CREATE TABLE语句中的语法错误使用Create Table AS时

时间:2017-12-25 02:04:06

标签: c# sql asp.net ms-access

对于项目,我需要从模板中复制表,但在执行SQL代码时,响应是CREATE TABLE语句中的语法错误。

   OleDbConnection conn = new OleDbConnection();
        conn.ConnectionString = ConfigurationManager.ConnectionStrings["LoginDataB"].ToString();
        OleDbCommand cmd = new OleDbCommand();
        cmd.Connection = conn;


    cmd.CommandText = "CREATE TABLE 'TEST' AS SELECT * INTO 'TEST' FROM 
    buttonstemplate";

这是我用过的代码。然而,当我使用像W3schools这样的在线SQL编辑器时,它运行得很好。 我正在使用MS Access 2016并在ASP.net中编程

我刚刚开始学习编码,所以我希望有人可以帮助我。

2 个答案:

答案 0 :(得分:1)

试试这个:

SELECT * INTO TEST FROM BUTTONSTEMPLATE

将表复制到另一个数据库中,例如: externaldb.mdb

SELECT * INTO TEST IN 'externaldb.mdb' FROM BUTTONSTEMPLATE

答案 1 :(得分:0)

...我不认为SQL在W3 Editor中正常运行(就像你的问题所说)。 :-)

w3notworking

我确定您已经意识到第一步是确保SQL将在其上运行。

您正在组合两种不同类型的SQL语句来创建表:

CREATE TABLE用于定义新表。例如:

CREATE TABLE Persons
(
PersonID int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);

如果要根据另一个表的结果创建表:

INSERT INTO table2
SELECT * FROM table1
WHERE condition; 

...所以也许你可以使用:

INSERT INTO TEST
SELECT * FROM buttonstemplate