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

问题描述 投票:0回答:2

对于项目,我需要从模板中复制表,但在执行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中编程

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

c# sql asp.net ms-access
2个回答
1
投票

试试这个:

SELECT * INTO TEST FROM BUTTONSTEMPLATE

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

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

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
© www.soinside.com 2019 - 2024. All rights reserved.