更新插入ms访问

时间:2010-07-02 21:44:11

标签: ms-access insert

我希望使用asp。

更新或插入msaccess数据库中

我正在尝试类似的事情:

IF EXISTS (SELECT * FROM Table1 WHERE Column1='SomeValue')
    UPDATE Table1 SET (...) WHERE Column1='SomeValue'
ELSE
    INSERT INTO Table1 VALUES (...)

UPDATE Table1 SET (...) WHERE Column1='SomeValue'
IF @@ROWCOUNT=0
    INSERT INTO Table1 VALUES (...)

INSERT或UPDATE自身工作正常。但当我使用其中一种方法时,它失败了。

2 个答案:

答案 0 :(得分:1)

您无法在Access中一次运行两个sql语句。您必须在两个单独的操作中更新和插入。

答案 1 :(得分:0)

Set db = CreateObject("ADODB.Connection")
set rs = Server.CreateObject("ADODB.Recordset")
        db.Open "DSN=name"
        rs.CursorLocation = 3
        rs.Open "SELECT * FROM Table WHERE Field="&Variable, db, 3, 3
        if rs.EOF then
        rs.AddNew
        end if
            rs("fieldName1") = Variable1
            rs("fieldName2") = Variable2
            rs("fieldName3") = Variable3
        rs.Update
        rs.Close

如果SELECT没有返回任何内容,则会添加记录。添加光标后,添加记录。 如果SELECT返回一条记录(因为Field是唯一的),则光标位于所选记录上。

并且它更新光标所在的记录:)