>>>>Hi,
>>>>
>>>>How do you INSERT (possibly) and UPDATE a table in one command? Here is what I am trying to do:
>>>>
>>>>I need set fields, say MyField1 and MyField2, to some values MyVal1 and MyVal2 in a table where field MyField3 is equal to ‘MyVal3’ But if the record where MyField3 = ‘MyVal3’ does not exist, I want to INSERT a record and set values of all three fields.
>>>>
>>>>TIA
>>>
>>>In SQL Server 2008 and up you need to use MERGE command. Start from looking at MERGE command examples in BOL.
>>>
>>>Otherwise the basic idea is to use IF NOT EXISTS (..) INSERT ELSE UPDATE pattern which may fail in multi-user environment.
>>
>>This code has to work for 2005 and 2008. So I will try your IF NOT EXISTS approach. Thank you.
>
>Glad to help. Check this blog post
>
http://sqlblog.com/blogs/alexander_kuznetsov/archive/2010/01/12/t-sql-tuesday-002-patterns-that-do-not-work-as-expected.aspxThank you.
"The creative process is nothing but a series of crises." Isaac Bashevis Singer
"My experience is that as soon as people are old enough to know better, they don't know anything at all." Oscar Wilde
"If a nation values anything more than freedom, it will lose its freedom; and the irony of it is that if it is comfort or money that it values more, it will lose that too." W.Somerset Maugham