自从我使用Classic ASP和Microsoft Access进行一些编程以来,我们使用"Microsoft.Jet.Oledb"驱动程序来访问和显示数据已经很多年了.
我被要求使用"Microsoft.Ace.Oledb"访问MS Excel数据.我发现这是"Microsoft Access 2010引擎可再发行组件"下载的一部分.
我想知道"Microsoft.Jet.OleDb"是否已取代"Microsoft.Ace.Oledb"驱动程序并且基本相同或者它们是完全不同的东西?
另外,购买MS Access 2010时,您通常会获得"Microsoft.Ace.Oledb"驱动程序吗?
我有一个查询这是相当大的,在加盟十几张桌子,我想拉回来基于一个id字段记录(如:between nStartID and nEndID).
我创建了两个参数并将它们作为标准进行测试,它们运行良好.
问题是,我需要在主查询中运行来自此主查询的插入查询,并且需要它们所在的参数.所以,我需要以编程方式将参数传递给它.
任何人都知道如何做到这一点?
谢谢.
我在MS-Access 2010中工作,我正在尝试查看在VBA代码中定义的变量,它已经达到了一个断点.监视窗口中Watches窗口中的值文本框具有设置大小的问题,换句话说,如果值为long,则在Watches窗口中切断值
如何查看变量中的整个值?
我有一个查询,我想对表执行.结果我想做点什么.在我的脑海中,伪代码是:
var q = "select * from table where some condition";
var results = db.getResults(q);
foreach (row r in results )
do something with result
Run Code Online (Sandbox Code Playgroud)
我怎么会这样与vba类似?
我有一个表格输入记录到表格.我希望它打开一个空的添加(新)而不是显示表的第一个记录.由导航表单使用,从按钮打开输入表单.
我们最近将访问数据库迁移到SQL服务器上.完成后,我们开始使用我们的前端访问数据库测试数据库(我们之前的设置涉及两个访问文件,一个用于前端,一个用于后端.)我们几乎立即收到错误.
Microsoft访问数据库引擎停止了该过程,因为您和另一个用户正在尝试同时更改相同的数据.
现在我们确实有多个人在这些前端工作,但在收到此消息时,我是唯一访问数据的人.我测试它的一般过程是使用表单插入数据.然后尝试删除数据.我知道一个事实,数据正在进入桌面,我知道我是唯一一个查看或尝试编辑此信息的人,我们使用ODBC连接将SQL服务器连接到前端.非常感谢任何建议或帮助,我会严重监控这个主题,所以期待你有任何问题要求我得到相对较快的回答.
我正在寻找一种从ms访问中导入数据的好方法,并将其绑定到MVC模式的任何模型
这是我们想要遵循的方法
方法1:
方法2:
哪种方法更好,我如何实施?
更新: 我已经实施了方法2,它的工作正常,有没有人知道如何实现方法1
import model-view-controller asp.net-mvc ms-access-2010 c#-4.0
我遇到了SQLite数据库的问题.我正在使用http://www.ch-werner.de/sqliteodbc/中的SQLite ODBC . 安装了64位版本并使用以下设置创建了ODBC:

我打开Access数据库并链接到数据源.我可以打开表,添加记录,但不能删除或编辑任何记录.有没有什么我需要修复ODBC端允许这个?我尝试删除记录时遇到的错误是:
Microsoft Access数据库引擎停止了该过程,因为您和另一个用户正在尝试同时更改相同的数据.
当我编辑记录时,我得到:
自您开始编辑以来,其他用户已更改该记录.如果保存记录,则将覆盖其他用户所做的更改.
保存记录已禁用.只能复制到剪贴板或删除更改.
我正在尝试打开一个超时的查询.我试过设置超时属性,但它似乎不想接受它.
使用MS-SQL Server Management窗口(SQL Server 2005)执行查询需要34秒,所以我知道我需要增加超时.
当前代码:
Public Function retRecordSet(StrSQL)
Dim cmd ' as new ADODB.Command
Dim rs 'As New ADODB.Recordset
Set cmd = CreateObject("ADODB.Command")
Set rs = CreateObject("ADODB.Recordset")
cmd.ActiveConnection = CurrentProject.Connection
cmd.CommandText = StrSQL
cmd.CommandTimeout = 0
Set rs = cmd.Execute
Set retRecordSet = rs
End Function
Run Code Online (Sandbox Code Playgroud)
我也试过设置连接本身的超时CurrentProject.Connection.CommandTimeout = 120,但如果我在此命令后立即查询该值,它仍然保持在30
连接属性:
Provider = Microsoft.Access.OLEDB.10.0; Persist Security Info = False; Data Source = MyServer; Integrated Security = SSPI; Initial Catalog = MyDatabase; Data Provider = SQLOLEDB.1
Data Source …Run Code Online (Sandbox Code Playgroud) 我希望在我的SQL查询中有三个表,但是我收到一条错误消息.
我有这个sql代码:
SELECT warehouse.expiry_date, pharmacy.expiry_date, drugs.active_substance,
drugs.strength, drugs.strength_type, drugs.dosage_form, drugs.minimum_quantity,
SUM(warehouse.in_quant)+SUM(pharmacy.in_quant)-SUM(warehouse.out_quant)-
SUM(pharmacy.out_quant) AS Total_available_stock
FROM drugs as a
INNER JOIN warehouse as b
ON a.ID = b.drug_id
INNER JOIN pharmacy as c
ON b.drug_id = c.drug_id
GROUP BY warehouse.expiry_date, pharmacy.expiry_date, drugs.active_substance,
drugs.strength, drugs.strength_type, drugs.dosage_form, drugs.minimum_quantity;
Run Code Online (Sandbox Code Playgroud)
我得到错误:
Syntax error (missing operator) in query expression in 'a.ID = b.drug_id
INNER JOIN pharmacy as c
on b.drug_id = c.drug_i'.
Run Code Online (Sandbox Code Playgroud)
有什么帮助吗?
ms-access-2010 ×10
ms-access ×8
vba ×4
access-vba ×2
adodb ×1
asp.net-mvc ×1
c#-4.0 ×1
import ×1
ms-office ×1
odbc ×1
parameters ×1
sql ×1
sqlite ×1
sqlite-odbc ×1