问题标签 [ms-access]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
3900 浏览

debugging - Microsoft JET SQL 查询日志或“如何调试客户的程序?”

问题:

我们使用我们最大的客户编写的程序来接收订单、预订运输和做其他与订单相关的事情。我们没有其他机会,只能使用该程序,当涉及到他们的程序问题时,客户非常不支持。我们只需要接受这个程序。

现在这个程序在有两个或更多用户使用时,大部分时间都非常慢,所以我试图在幕后寻找问题的根源。

到目前为止我发现的程序的一些要点:

  • 它是用 VB 6.0 编写的
  • 它使用一个受密码保护的 Access-DB (Access 2000 MDB),它位于一个用户机器上的一个文件夹中。
  • 该文件夹通过网络共享并由所有其他用户使用。
  • 它使用 msjet40.dll 版本 4.00.9704 与访问进行通信。我猜是ADO?

我还使用Process Monitor来监视文件访问,并找出程序如此缓慢的原因:即使程序处于空闲状态,它也在对 mdb 文件执行数千次读取操作。在网络上,这当然非常慢:

进程监视器跟踪 http://img217.imageshack.us/img217/1456/screenshothw5.png

真正的问题:

有没有办法监控负责读取活动的查询?我可以设置跟踪标志吗?挂钩 JET DLL 的?我猜该程序正在执行一些昂贵的查询,导致 JET 在此过程中读取大量数据。

PS:我已经尝试将mdb放在我们公司的文件服务器上,成功访问它甚至比通过本地共享还要慢。我还尝试更改客户端上的锁定机制(机会锁定),但没有成功。

我想知道发生了什么,需要为我们客户的开发人员提供一些确凿的事实和建议,以帮助他/她更快地完成程序。

0 投票
8 回答
47468 浏览

sql - sql语句中的[]括号

sql语句中的括号有什么作用?

例如,在声明中:

另外,如果表名在括号中,它会做什么?

0 投票
1 回答
1543 浏览

ms-access - 通过 MS Access 中的 FileDialog 保存时如何过滤报表对象

我正在尝试使用 FileDialog 保存 rtf 文件,并希望使用 where 子句进行过滤。这就是我所拥有的:

关于如何在不更改报告的情况下添加 where 子句的任何想法?

0 投票
2 回答
851 浏览

ms-access - 如何在 MS Access 中创建(类型、ID)(又名“多态”)-外键列?

在 Ruby-on-Rails 中,这称为“多态关联”。

我的应用程序中有几Commentable件事,每个表格如下:

我想添加一个Comments表格,如下所示:

我知道我以这种方式失去了数据库的引用完整性,但唯一的其他选择是拥有多个Comments表:PostComments, PersonComments, PhotoComments, ...

现在的问题:

我如何构建一个表单来了解如何进行查找,首先是从获取表名Comments.commentable_type,然后从获取 id Comments.commentable_id

0 投票
2 回答
135 浏览

database - 如何从 Web 更新 Access 数据库?

我正在寻找一种创建在线表单的方法,该表单将更新只有几个表的 Access 数据库。有谁知道一个简单的解决方案?

0 投票
5 回答
45857 浏览

ms-access - 删除数据库内容后 MS Access(.mdb) 文件大小不会减小吗?

我正在使用 JDBC-ODBC 驱动程序将数据插入 MS Access 数据库。空白 mdb 文件为 2KB。填充此数据库后,大小增加到 155MB。然后我正在删除数据。但是我发现 mdb 的大小仍然是 155MB。我没有收到任何错误。但是这样正常吗?我希望文件大小会减小。如果是这样设计的,它背后的想法是什么?谢谢

0 投票
3 回答
3748 浏览

ms-access - 同时运行 Access 2003 和 2007 是否安全?

我关于在 Access 2003 和 2007 之间切换时的重新配置延迟的问题发表了评论:

顺便说一句,您无法避免在 Access 2007 和早期版本之间进行重新配置。Access 2007 使用一些与早期版本相同的注册表项,并且在打开 Access 2007 时必须重写它们。

如果是这样,那么同时在两个版本中运行/开发数据库实际上是否安全?注册表更改是否会影响 Access 启动后的操作。例如重新编译/保存对对象的更改?

0 投票
4 回答
8918 浏览

ms-access - 在 MS Access 中解析文本

我有包含字符串的列。该列中的字符串如下所示:

第一串/第二串/第三串

我需要解析这个,所以我有两个值:

值 1:FirstString/SecondString 值 2:ThirdString

我实际上可以有更长的字符串,但我总是需要它像 [string1/string2/string3/...][stringN] 那样分开

我需要结束的是:

第 1 列:[string1/string2/string3/etc....] 第 2 列:[stringN]

我无论如何都找不到这样做的权限。有什么建议么?我需要正则表达式吗?如果是这样,有没有办法在查询设计器中做到这一点?

更新:这两个表达式都给我这个错误:“您输入的表达式包含无效的语法,或者您需要将文本数据括在引号中。”

0 投票
5 回答
24161 浏览

ms-access - MS Access 中查询的字段默认值

我在 MS Access 中的表上有一个字段 tblMyTable.SomeID,我想在 tblUserPref.DefaultSomeID 中将默认值设置为用户首选项。看来我不能设置默认值以在 tblMyTable 的表定义中使用查询。我有一个表格,其中记录输入到 tblMyTable。我尝试在表单上设置字段的默认值,但似乎也不接受查询。所以,作为最后的手段,我试图用 VBA 来做。我可以在 VBA 中查询我想要的值,但我不知道要将代码附加到哪个事件。

每当在表单中打开新的空白记录时,我想在用户开始输入之前运行代码。我不想在打开或编辑现有记录时运行代码。但是,如果代码同时针对新的空白记录和现有记录运行,我可能可以围绕它编写代码。到目前为止,我在现场和表单本身上尝试过的所有事件都没有按照我的意愿运行。谁能建议我应该使用哪个事件,以及在哪个对象上?

0 投票
3 回答
1939 浏览

sql-server - 如何创建指向字段名称中带有句点的 SQL Server 视图的 Jet ODBC 链接?

我需要创建一个从 Access 2003 (Jet) 数据库到 SQL Server 托管视图的 ODBC 链接,其中包含包含句点的别名字段名称,例如:

在视图后面的 SQL 源代码中,字段名称用方括号括起来......

...所以 SQL Server 不会抱怨创建视图,但是当我尝试从 Jet DB(以编程方式或通过 Access 2003 UI)创建指向它的 ODBC 链接时,我收到错误消息:

'Seq.Group' 不是有效名称。确保它不包含无效字符或标点符号,并且不要太长。

不幸的是,我无法修改视图的结构,因为它是另一个产品的一部分,所以我坚持使用字段名称的方式。我可以使用无标点符号的字段名称添加自己的视图,但我真的宁愿根本不修改 SQL Server,因为那样每次升级、修补程序等时,这都会成为另一个维护点。有谁知道更好的解决方法?