sql - Inserting into multiple tables with identity column -


insert [dbo].[transactions] ([partnerid], [transactionid], [ver], [insertedby], [inserteddatetime], [savedby], [saveddatetime])     select              [partnerid], [transactionid], [ver], [insertedby],         [inserteddatetime], [savedby], [saveddatetime]                      @partransaction;  set @transactionid = @@identity;  insert [dbo].[remittances] ([transactionid], [remittancetransactionid],[insertedby], [inserteddatetime], [savedby], [saveddatetime])     select          @transactionid, [remittancetransactionid], [insertedby],         [inserteddatetime], [savedby], [saveddatetime]                      @parremittance;  set @remittanceid = @@identity ; 

my issue here when there no record insert remittance table, @remittanceid getting identity value of transactions table.

so let's identity value inserted in transaction table 1, , there no records in remittance table, @transactionid , @remittanceid both set 1, want @transactionid value set 1 , @remittanceid null.

is there way if there no record inserted remittance table, @remittanceid value should set null.

you use @@rowcount here determine if update occurred within last statement.

  insert [dbo].[remittances]                            ([transactionid],[remittancetransactionid],[insertedby],[inserteddatetime],[savedby],[saveddatetime])                select                              @transactionid,[remittancetransactionid],[insertedby],[inserteddatetime],[savedby],[saveddatetime]                        @parremittance;                 set         @remittanceid =  @@identity ;        if(@@rowcount=0) set @remittanceid = null 

Comments

Popular posts from this blog

php - Permission denied. Laravel linux server -

google bigquery - Delta between query execution time and Java query call to finish -

python - Pandas two dataframes multiplication? -