我在MS Access 2007工作。我的数据库结构如下:
FE 访问数据库,包含来自 2 个 BE 数据库的链接表:- BE DB 1 是另一个访问数据库,我正在创建要保存的记录- BE DB 2 是一个 SQL 数据库,我已从中链接了 ODBC 表
要创建我保存到 BE DB 1 中的信息,我需要创建临时表。为了避免我的 FE DB 膨胀,我正在尝试创建一个临时数据库,其中将创建和访问临时表。我正在使用此示例中的 UpdateTempTable 函数:
http://www.experts-exchange.com/articles/9753/Creating-and-using-Temporary-Tables-in-Microsoft-Access.html
我尝试运行的查询是:
SELECT zz.* INTO [temp_tbl_1] IN "C:DIRdb_Temp.accdb" FROM (SELECT t1.* FROM lw_PRODUCT t1) as zz;
db_Temp.accdb是我的临时数据库,lw_PRODUCT是我的 FE DB 中的 ODBC 链接表。当我尝试直接运行此查询时,它会请求链接表的用户 ID 和密码,当我输入它时,查询结果将正确输入到临时数据库中的临时表中。
我的问题是:当 ODBC 链接表用于创建临时表的查询时,如何以编程方式包含它们的密码和用户 ID?
如果我在我的 FE DB 中运行简单查询:
SELECT * FROM lw_PRODUCT;
系统未提示我输入 UID 或密码。
MS ACCESS中没有临时表这样的东西。所有表都是物理表。如果要使用临时表,则必须注意创建表,使用该表,最后删除表。
如前所述,您应该在前端执行此操作,因为仅对每个连接/会话使用临时表。
如果您正在考虑在其他用户之间共享临时表,那么您误解了临时表的概念。
您可以使用 ODBC(如果使用手动创建,则使用表定义和连接属性)简单地链接两个后端表,并将它们用作普通表,而无需输入登录详细信息。