【问题标题】:Create a Make Table from Ms Access Into Sql-Server创建从 Ms Access 到 Sql-Server 的 Make 表
【发布时间】:2021-04-29 22:46:17
【问题描述】:

我在一家开始使用混合数据管理系统(Ms Access 前端,Sql-Server 后端)的公司工作。我们有很多很多人精通 Access(因为 Access 可以满足我们大约 90% 的需求),但我们开始遇到规模问题。在我们进行迁移时,我希望尽可能少地使用 T-SQL 代码,以允许人们继续他们当前的工作流程。对于少数拥有 Sql-Server 的项目,我使用 SSMA 将表从访问推送到 SQL Server,但我正在寻找一种更有效的方法来执行此操作。最终,我很想复制 MS Access 生成表查询的功效。我宁愿不使用耗时的方法:

Create Table Location_Sql_Test (
Column 1 varchar(50)
Column 2 varchar(50)
etc.
etc.)

有没有办法做类似下面的事情?请注意,我的 Sql-Server 数据库中尚不存在 Location_Sql_Test。

SELECT *
INTO
    [ODBC;DRIVER=SQL Server;SERVER="myserver";DATABASE="myproject";Trusted_Connection=yes].Location_SQL_TEST
FROM Location_SQL;

从字面上看,我可以通过 MS Access 在 Sql-Server 中创建表,而无需打开 SSMA 或 SSMS?

谢谢!

【问题讨论】:

    标签: ms-access


    【解决方案1】:

    你可以这样做:

    SELECT * INTO
    [ODBC;DRIVER=SQL 
    Server;SERVER="myserver";DATABASE="myproject";
    Trusted_Connection=yes].Location_SQL_TEST
    FROM Location_SQL;
    

    所以:

    SELECT * INTO
    [ODBC;DRIVER=SQL 
    Server;SERVER="myserver";DATABASE="myproject";
    Trusted_Connection=yes].MySQLServerNewTableName
    FROM MyLocalAccessTable;
    

    【讨论】:

    • 这与我所拥有的有何不同?错误仍然是 Location_SQL_TEST 不存在。
    • 它应该可以工作。只要您的连接字符串正确,那么我所拥有的对我有用。看看你的例子?表格部分被切断了——我没有向右滚动——但现在我有了?是的,它应该工作得很好。点击 ctrl-g,然后在调试窗口中输入 ? currentdb.TableDefs("a linked table to sql server").Connect(查看连接字符串 - 试试这吐出的内容)。完成此操作后,检查 sql server - 该表将会并且应该已经创建。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多