小编Han*_*sUp的帖子

在MS Access中,ADO相当于NZ功能?

我有以下命令对象:

ADODB::_CommandPtr pCmd("ADODB.Command");

pCmd->ActiveConnection = pConn;
pCmd->CommandType = ADODB::adCmdText;
pCmd->CommandText = L" select ID, NZ(PaymentAmount, 0) from Contracts;";

ADODB::_RecordsetPtr pRS = pCmd->Execute(NULL, NULL, ADODB::adCmdText);
Run Code Online (Sandbox Code Playgroud)

当我运行它时,它会报告NZ功能不存在的错误.

我自己研究,发现我不能NZ在ADO查询中使用.

题:

ADO是否等同于此功能?

c++ sql ms-access ado ms-access-2007

3
推荐指数
1
解决办法
242
查看次数

(ColdFusion + Access)数据库查询错误"参数太少".

我准备用这个撕掉我的头发了.

Error Executing Database Query.
[Macromedia][SequeLink JDBC Driver][ODBC Socket][Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 3.

The error occurred in [WITHHELD]: line 19

17 :                 WHERE      FNAME = #FORM.first#
18 :                 AND            LNAME = #FORM.last#
19 :                 AND            PASS = #FORM.pass#
20 :             </cfquery>
21 :         

SQLSTATE      07002
SQL        SELECT * FROM JUDGES WHERE FNAME = [WITHHELD] AND LNAME = [WITHHELD] AND PASS = [WITHHELD]
VENDORERRORCODE       -3010
DATASOURCE    honors
Run Code Online (Sandbox Code Playgroud)

我已经阅读了一些类似的问题,其中有一些拼写错误,但我已经检查并重新检查拼写,甚至更改了列和表名,并再次尝试.

coldfusion ms-access

2
推荐指数
1
解决办法
1235
查看次数

是否可以将字符串转换为对象引用?

我试图在Access 2K7数据库中做一些更通用的东西.我有一个表单,我将一些信息传递给使用OpenArgs.我正在传递表单名称,子表单名称和字段名称,因此可以填充该字段.

我遇到了"重建"对该领域的引用的麻烦.我试过以下,但VBA不喜欢它:

Dim strForm, strField, strSubForm As String
Dim frm As Form

strForm = Left(Me.OpenArgs, InStr(Me.OpenArgs, "|") - 1)
Brk1 = Mid(Me.OpenArgs, InStr(Me.OpenArgs, "|") + 1)
strField = Left(Brk1, InStr(Brk1, "|") - 1)
strSubForm = Mid(Brk1, InStr(Brk1, "|") + 1)

X = "Forms!" & strForm
Y = X & "!" & strSubForm
Z = Y & "!" & strField
frm(Z) = Me.Calendar0.Value
Run Code Online (Sandbox Code Playgroud)

这个练习的目的是将日历的值(Me.Calendar0.Value)传递给子表单上的字段(Forms!strForm!strSubForm!strField).我只是无法弄清楚如何以VBA接受它的方式编写它.我得到一个"对象变量或没有设置块变量"错误.

ms-access ms-access-2007 access-vba

2
推荐指数
1
解决办法
5265
查看次数

MS 访问溢出错误

当此行运行时,我在 Access 中收到溢出错误

intAT = Nz(DLookup("at_ID", "qryAT", "at_sc_ID=" & Me.sc_ID & " AND at_OT=0"), 0)
Run Code Online (Sandbox Code Playgroud)

如果我Debug.Print Nz(DLookup("at_ID", "qryAT", "at_sc_ID=" & Me.sc_ID & " AND at_OT=0"), 0)在该行之前添加,它会很好地打印 id 号,但在下一行的分配过程中仍然出错。

我还可以通过向查询添加一个条件来使其工作,该条件将所有结果限制为在特定日期和时间之前发生的结果。它只能将查询限制在该特定时间之前,而不是在更早的时间之后。如果包含该时间之后的任何记录,它将再次溢出。我查看了在那之后输入的数据,一切看起来都很好,但我不确定我应该寻找什么。在at_ID与导致它失败的记录相关联是32838没有什么帮助的。

ms-access vba

2
推荐指数
1
解决办法
6628
查看次数

AutoExec 模块未启动

我的数据存储表单有一个新模块 (AutoExec),用于在打开表单时测试与 SQL 服务器数据库的连接。只是它在打开时不会触发。我想知道我的代码中是否有什么东西导致了这个,这是我的第一个模块,所以我还不熟悉正确的形式。

Public Sub AutoExec()
Dim cnn As ADODB.Connection
Dim localrst As New ADODB.Recordset
Dim remoterst As New ADODB.Recordset

Set cnn = New ADODB.Connection
cnn.Open "Provider=SQLOLEDB; Data Source=DB\P003,49503; Initial Catalog=HRLearnDev;" _
    & "User Id=USERNAME; Password=PASSWORD;"

If cnn.State = adStateOpen Then

    MsgBox ("You have an established connection.")
  Else
    MsgBox ("Cannot connect to remote server. Data will be stored locally  to CDData Table until application is opened again.")

End If

cnn.Close
Dim rst As New ADODB.Recordset


End Sub
Run Code Online (Sandbox Code Playgroud)

ms-access vba module

2
推荐指数
1
解决办法
8307
查看次数

从另一个表单打开一个表单并通过命令单击关闭原始表单

我创建了一个登录表单,当单击“打开数据库”按钮时会打开另一个表单。我试图在单击按钮打开另一个表单时关闭原始表单“UserInformation”。我正在尝试各种 VBA 代码,但似乎没有任何效果。我通过向导创建了按钮,然后将宏转换为 vba 代码。

Private Sub cmdOpenDatabase_Click()

If IsNull(Me.txtFirstName) Then
MsgBox ("Please enter First Name")
Me.txtFirstName.SetFocus
Cancel = True
Exit Sub
End If

If IsNull(Me.txtLastName) Then
MsgBox ("Please enter Last Name")
Me.txtLastName.SetFocus
Cancel = True
Exit Sub
End If

If IsNull(Me.txtEmployee) Then
MsgBox ("Please enter Employee ID")
Me.txtEmployee.SetFocus
Cancel = True
Exit Sub
End If

On Error GoTo cmdOpenDatabase_Click_Err

    DoCmd.OpenForm "Standards", acNormal, "", "", , acNormal

cmdOpenDatabase_Click_Exit:
    Exit Sub

cmdOpenDatabase_Click_Err:
    MsgBox Error$
    Resume cmdOpenDatabase_Click_Exit

End Sub
Run Code Online (Sandbox Code Playgroud)

forms ms-access vba

2
推荐指数
1
解决办法
1万
查看次数

使用autonumber访问create table的sql

我正在尝试使用AutoIncrement为Yes的列创建一个表.这是我的查询不确定它有什么问题

CREATE TABLE testallcols(SOCycle Text(3),   AutoKey integer AUTOINCREMENT  NOT NULL, SOData LongBinary   NOT NULL)
Run Code Online (Sandbox Code Playgroud)

如何将AutoKey列设置为自动增量整数?

c# ms-access

2
推荐指数
1
解决办法
2499
查看次数

为什么运行时错误“ 3061”。参数太少。预期1?Access 2010

我已经研究了所有的STACKOVERFLOW问题,但是无法使其正常工作。我有一个简单的表:

在此处输入图片说明

和形式:

在此处输入图片说明

我想从表T:ActityRoster中提取字段,并从表单中提取“活动日期”,然后将它们“添加”到表T:ActivityHistory中。

在此处输入图片说明

一个STACKOVERFLOW专家帮助了我一些代码,但它甚至没有设置第一个记录集:rsIn

Dim ActID As Integer, actDate As Date, val1 As Long, val2 As Long, val3 As Boolean, val4 As Currency

Dim db As Database, rsIn As Recordset, rsOut As Recordset

Dim strSQL As String

Set db = CurrentDb

ActID = Me.cboActivityName.Column(0)

strSQL = "SELECT * FROM T:ActivityRoster WHERE [ActivityID] = ActID"

Debug.Print strSQL

Set rsIn = db.OpenRecordset(strSQL, dbOpenDynaset, dbReadOnly)

rsIn.MoveLast

Set rsOut = db.OpenRecordset("T:AttendanceHistory", dbOpenDynaset, dbEditAdd)

rsOut.MoveLast

actDate = Me.ActivityDate.Value  ' retrive the date from the form …
Run Code Online (Sandbox Code Playgroud)

ms-access access-vba ms-access-2010

2
推荐指数
1
解决办法
2万
查看次数

VBA中的SQL语句

我试图在ACCESS 2013 VBA中运行以下SQL语句,但由于格式错误而导致错误(在这种情况下,我从语句结尾处得到"分号(;)缺失").有人可以告诉我,我在下面的代码中做错了吗?

Dim dbs As dao.Database

Set dbs = CurrentDb()

dbs.Execute "INSERT INTO TEMP2 ([Study_Date], [Created_By], [Part_Number], 
[Upper_Tolerance], [Lower_Tolerance], [ID21_Number]) VALUES ([Study_Date], 
[Created_By], [Part_Number], [Upper_Tolerance], [Lower_Tolerance], [ID21_Number]) 
FROM RAC_DATA_ENTRY 
WHERE [RAC_CAP_VALS] = '" & Me.[RAC_CAP_VALS] & "'"
Run Code Online (Sandbox Code Playgroud)

sql ms-access vba access-vba ms-access-2013

2
推荐指数
1
解决办法
159
查看次数

在 Access 中的链接表中更改表名

我正在尝试更改 Access 中的表的名称。我去了链接管理器并完成了该过程。它将更改为我放置的服务器,但它永远不会更改表名称(以黄色突出显示)。

在此处输入图片说明

ms-access vba ms-access-2007 ms-access-2010

2
推荐指数
1
解决办法
3336
查看次数