Would the database take a significant performance hit if I replaced a traditional insert with a blank insert and then update?It would reduce code complexity:- Only one SQL statement to list the fields- Only one SQL statement to test- Insert statements are more error prone. Fields names and values are in two separate places: both have to match and it doubles the risk of a misplaced comma.For example, replacing the old code with the new code:'Old Insert and UpdateSet cn = Server.CreateObject("ADODB.Connection")cn.Open Application(con)Select Case action Case "insert" sq = "INSERT INTO tblTest (Name, Address, City, time_create) SELECT 'MyName', 'MyAddres', 'MyCity', '" & Now() & "';" Case "update" sq = "UPDATE tblTest SET Name='MyName', Address='MyAddress', City='MyCity' WHERE ID=" & id & ";"End SelectIf sq <> "" Then cn.Execute(sq)cn.Close'New Insert and UpdateSet cn = Server.CreateObject("ADODB.Connection")cn.Open Application(con)If action = "insert" Then sq = "SET NOCOUNT ON; INSERT INTO tblTest (time_create) VALUES ('" & Now() & "'); SELECT id=@@IDENTITY; SET NOCOUNT OFF" Set rs = cn.Execute(sq) id = rs("id") action = "update"End IfIf action = "update" Then sq = "UPDATE tblTest SET Name='MyName', Address='MyAddress', City='MyCity' WHERE ID=" & id & ";" cn.Execute(sq)End Ifcn.Close