2010-07-02 7 views
3

asp를 사용하여 msaccess 데이터베이스에 누락 된 경우 업데이트 또는 삽입하고 싶습니다. 잘 작동 자체로update insert 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 :

내가 좋아하는 뭔가를 시도하고 있었다. 하지만 둘 중 하나를 사용하면 실패합니다.

답변

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가 레코드를 반환하면 (필드가 고유하므로) 커서가 선택한 레코드에 있습니다.

커서가있는 위치의 레코드를 업데이트하는 것보다

1

Access에서 한 번에 두 개의 SQL 문을 실행할 수 없습니다. 두 개의 별도 조작으로 갱신하고 삽입해야합니다.

관련 문제