如果EXISTS记录在MS ACCESS中

时间:2013-06-25 01:17:27

标签: sql-server ms-access ms-access-2007

此MS SQL查询的MS Access版本是什么?

MS SQL QUERY:

IF EXISTS (SELECT 1 FROM Table1 WHERE Column1 = 1)
BEGIN

-- UPDATE QUERY

END
ELSE
BEGIN

-- INSERT QUERY

END

MS ACESS QUERY ???

提前致谢! :O)

2 个答案:

答案 0 :(得分:0)

Access没有存储过程。 '如果存在'是T-SQL。 Access具有查询,这大致等同于SQL Server中的视图。如果要使用ADO执行Select语句,则记录计数为0表示它不存在。否则ADO通常在记录计数中返回-1,表示结果集中有未知数量的记录。如果您在记录集上执行MOVELAST,则记录计数将更新以反映整个记录数。如果这是一个大组,MOVELAST可能需要一些时间来执行。

答案 1 :(得分:0)

Access确实有VBA,有点像T-SQL。但语法&可用的命令完全不同。它实际上是Visual Basic的衍生物。

Access查询可以调用VBA函数。

VBA可以执行查询。所以,举个例子:

Sub ProcessCode()
   Dim SQL As String
   Dim RS As Recordset
   SQL = "SELECT 1 FROM Table1 WHERE Column1 = 1"
   Set RS = CurrentDb.OpenRecordset(SQL)
   If Not RS.EOF Then
      'do what ever here
   End If
End Sub