Avatar billede joki Juniormester
06. marts 2013 - 09:21 Der er 4 kommentarer og
1 løsning

Merge

Hej

Jeg får fejlen "an expression of non boolean type specified in a context where a condition is expected"


BEGIN TRAN;
MERGE UNIT_SW_TABLE AS T
USING UNIT_TABLE AS S
    ON (T.UNIT_SW_TABLE_UNIT_TABLE_ID_SET = S.UNIT_TABLE_ID)
    WHEN MATCHED THEN
    --UPADTE
    WHEN NOT MATCHED THEN
        -- Insert statements for procedure here
        INSERT INTO UNIT_SW_TABLE(unit_sw_table_unit_table_id_set,
        unit_sw_table_os_table_id_set,
        unit_sw_table_browser_table_id_set,
        unit_sw_table_mail_table_id_set,
        unit_sw_table_antivirus_table_id_set)
        VALUES (@para_unit_id,@para_os_id,@para_browser_id,@para_mail_id,@para_antivirus_id);
ROLLBACK TRAN;
Avatar billede Syska Mester
06. marts 2013 - 09:48 #1
Uden præcis at være sikker og kende din tables.

Så ville den nok henvise til:
T.UNIT_SW_TABLE_UNIT_TABLE_ID_SET = S.UNIT_TABLE_ID

Eller kan det ske du ikke må have
    WHEN MATCHED THEN
    --UPADTE

Dette med siden du ikke har en expression ... da din "WHEN MATCHED THEN" er tom.
Avatar billede joki Juniormester
06. marts 2013 - 11:20 #2
Tak den godkendte nedenståden

BEGIN TRAN;
MERGE UNIT_SW_TABLE AS T
USING UNIT_TABLE AS S
    ON (T.UNIT_SW_TABLE_UNIT_TABLE_ID_SET = S.UNIT_TABLE_ID)
    WHEN MATCHED THEN
    UPDATE  SET unit_sw_table_OS_tABLE_id_set = @para_os_id,
unit_sw_table_browser_table_id_set = @para_browser_id,
unit_sw_table_mail_table_id_set = @para_mail_id,
unit_sw_table_antivirus_table_id_set = @para_antivirus_id
    WHEN NOT MATCHED THEN
        -- Insert statements for procedure here
        INSERT (unit_sw_table_unit_table_id_set,
        unit_sw_table_os_table_id_set,
        unit_sw_table_browser_table_id_set,
        unit_sw_table_mail_table_id_set,
        unit_sw_table_antivirus_table_id_set)
        VALUES (@para_unit_id,@para_os_id,@para_browser_id,@para_mail_id,@para_antivirus_id);
ROLLBACK TRAN;
Avatar billede joki Juniormester
06. marts 2013 - 11:20 #3
Hov smider du et svar
Avatar billede Syska Mester
06. marts 2013 - 11:29 #4
Antager at det så var den manglende "contition" efter "WHEN MATCHED".

mvh
Avatar billede joki Juniormester
06. marts 2013 - 13:18 #5
Ja det er korrekt :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester