Te tautuhi i nga hapa me te kore e tukinotia
Ko te TRY ... CATCH te korero i roto i te Transact- SQL e kitea ana, e whakatau ana i nga tikanga hapa i roto i to tono tono paparangi. Ko tenei korero ko te kokonga o te mahinga SQL me te haumarutanga o te Kaiwhakamahi SQL, he waahanga nui hoki o te whakawhanake i nga tono paerewa pakari. TRY ... CATCH e pā ana ki te Tūmau SQL e tīmata ana ki te 2008, Database Azure SQL, Azure SQL Data Warehouse, me te Raraunga Waitohu Raraunga.
Whakatairangatia TRY..CATCH
TRY ... CATCH e mahi ana ma te tuku ia koe ki te tautuhi i nga taurangi Transact-SQL: tetahi e hiahia ana koe ki te "tamata" me tetahi atu ki te "hopu" i nga hapa ka puta ake. A, no te taetae a SQL Server ki te korero TRY ... CATCH, ka whakahaere tonu ia i te tauäkï i roto i te waahi TRY. Mena kei te angitu te korero a te TRY, ka neke tonu te Tūmau SQL. Engari, ki te whakaputahia e te korero a te TRY he hapa, ka tukuna e te SQL Server te korero a CATCH kia pai te hapai i te hapa.
Ko te raupapa o te tuhipoka ko tenei puka:
WHAKATAHI RANGI [sql_statement | statement_block} WHAKAMAHI KAUPAPA KAUPAPA [{sql_statement | statement_block}] END CATCH [; ]TRY ... CATCH tauira
He mea tinowari ki te mohio ki te whakamahinga o tenei korero ma te whakamahi i te tauira. Whakaarohia ko koe te kaiwhakahaere o te paatai raraunga rauemi tangata kei roto i te ripanga e huaina ana "Nga kaimahi," kei roto i nga korero mo ia kaimahi i roto i to whakahaere. E whakamahi ana te ripanga i te tau ID tauwhäiti hei tau matua . Ka ngana koe ki te whakamahi i te korero i raro nei hei whakauru i tetahi kaimahi hou ki roto i to papamahi:
WHAKAMAHI I roto i nga kaimahi (id, te tuatahi, te ingoa, te ingoa whakamutunga, te whakawhānui) WHAKAMAHI (12497, 'Mike', 'Chapple', 4201)I raro i nga wa e tika ana, ka whakaurua e tenei taurangi he rarangi ki te tepu kaimahi. Engari, mehemea kei te noho tetahi kaimahi ki te ID 12497 i roto i te paataka raraunga, ka takahia te rarangi o te raupapa matua matua me te hua i te hapa e whai ake nei:
Msg 2627, Taumata 14, Taupoko 1, Raina 1 Te whakakore i te WHAKAHI WHAKAMAHI WHAKAMAHI 'PK_employee_id'. Kaore e taea te whakauru i te matua taapiri ki te ahanoa 'dbo.employees'. Kua mutu te korero. Ahakoa e whakarato ana tenei hapa ki a koe i nga korero e hiahia ana koe ki te raruraru i te raru, e rua nga take ki a ia. Tuatahi, ko te karere he tangi. Kei roto i nga waehere hapa, nga tau raina, me etahi atu korero kaore i te marama ki te kaiwhakamahi toharite. Tuatoru, me te mea nui ake, na te mea ka puta te korero kia uru atu ai, ka taea ai te whiu i tetahi tono.
Ko te rerekētanga ko te roropi i te korero i roto i te korero TRY ... CATCH, pera me te whakaatu i raro nei:
I tenei tauira, ka whakaaturia nga hapa katoa e puta ana ki te kaiwhakamahi e whakahaere ana i te whakahau me te wahitau ī-mēra hr@foo.com. Ko te hapa i whakaaturia ki te kaiwhakamahi kei raro nei:
Hapa: Te whakakore i te kaha o te mana o te 'PK_employee_id'. Kaore e taea te whakauru i te matua taapiri ki te ahanoa 'dbo.employees'. Menara Mēra.Ko te nuinga o te mea, ko te mahi tono ka haere tonu, ka taea e te kaiwhakarato te whakahaere i te hapa. Te whakamahinga o te TRY ... Ko te korero a CATCH he huarahi tino ataahua ki te kimi me te hapai i nga hapa e puta ana i nga tono paerewa SQL.
Ako atu
Mena e hiahia ana koe ki te ako atu mo te Reo Uiui Taiao, tuhia te Whakataki ki te SQL .