KB2671078 – KORJAUS: Yritetään asettaa sarakkeen arvoksi NULL -virheilmoitus, kun käytät MERGE-lausetta SQL Server 2008:ssa, SQL Server 2008 R2:ssa tai SQL Server 2012:ssa

Käytetään kohteeseen
SQL Server 2008 Enterprise SQL Server 2008 Developer SQL Server 2008 Standard SQL Server 2008 Workgroup SQL Server 2008 Web SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Standard SQL Server 2008 R2 Web SQL Server 2008 R2 Workgroup SQL Server 2012 Business Intelligence SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Standard SQL Server 2012 Web SQL Server 2012 Enterprise Core

Microsoft jakelee Microsoft SQL Server 2008-, SQL Server 2008 R2- ja SQL Server 2012 -korjauksia yhtenä ladattavana tiedostona. Koska korjaukset ovat kumulatiivisia, jokainen uusi versio sisältää kaikki hotfix-korjaukset ja tietoturvakorjaukset, jotka sisältyivät aiempiin SQL Server 2008-, SQL Server 2008 R2- ja SQL Server 2012 -korjausversioihin

Ongelman ilmenemistapa

Mieti seuraavaa tilannetta:

  • Yrität suorittaa lisäystoimintoa kohdetaulukolle Microsoft SQL Server 2008-, Microsoft SQL Server 2008 R2- tai Microsoft SQL Server 2012 -tietokannassa.
  • Kohdetaulukossa on useampi kuin yksi viiteavainrajoitus.
  • Suorita lisäystoiminto käyttämällä MERGE-lauseketta.

Tässä skenaariossa näyttöön tulee seuraava virhesanoma:

Huomautus

Msg 681, taso 16, tila #, rivi #

Huomautus

Yritetään määrittää muun kuin tyhjäarvoisen sarakkeen arvoksi NULL.

Ratkaisu

Kumulatiiviset päivitystiedot

Ongelma korjattiin ensimmäisen kerran seuraavassa SQL Server kumulatiivisessa päivityksessä.

Cumulative Update 10 for SQL Server 2008 R2 SP2 /en-us/help/2908087

Tietoja SQL Serverin kumulatiivisista päivityksistä

Jokainen uusi SQL Server -kumulatiivinen päivitys sisältää kaikki edelliseen kumulatiiviseen päivitykseen sisältyvät hotfix-korjaukset ja tietoturvakorjaukset. Tutustu SQL Serverin uusimpiin kumulatiivisiin päivityksiin:

      

SQL Server 2012 Service Pack 1:n kumulatiivinen päivityspaketti 1Tämän ongelman korjaus julkaistiin ensin kumulatiivisessa päivityksessä 1. Saat lisätietoja tämän SQL Server 2012 Service Pack 1:n kumulatiivisen päivityspaketin hankkimisesta napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset lukemaan artikkelin Microsoft Knowledge Base -tietokanta -tietokannassa:

2765331 SQL Server 2012 Service Pack 1:n kumulatiivinen päivityspaketti 1Huomautus Koska koontiversiot ovat kumulatiivisia, jokainen uusi korjausversio sisältää kaikki SQL Server 2012:n aiempaan korjausversioon sisältyvät hotfix-korjaukset ja tietoturvakorjaukset. Suosittelemme, että otat käyttöön uusimman korjausversion, joka sisältää tämän hotfix-korjauksen. Lisätietoja saat napsauttamalla seuraavaa Microsoft Knowledge Base -tietokanta -artikkelinumeroa:

2772858 SQL Server 2012 -koontiversiot, jotka on julkaistu SQL Server 2012 Service Pack 1:n julkaisemisen jälkeen

SQL Server 2008 R2 Service Pack 1Tämän ongelman korjaus julkaistiin ensin kumulatiivisessa päivityksessä 8. Saat lisätietoja tämän SQL Server 2008 R2 Service Pack 1:n kumulatiivisen päivityspaketin hankkimisesta napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset lukemaan artikkelin Microsoft Knowledge Base -tietokanta -tietokannassa:

2723743 Kumulatiivinen päivityspaketti 8 SQL Server 2008 R2 SP1:lleKoontiversiot ovat kumulatiivisia, joten jokainen uusi korjausversio sisältää kaikki hotfix-korjaukset ja tietoturvakorjaukset, jotka sisältyivät edelliseen SQL Server 2008 R2 Service Pack 1:n korjausversioon. Suosittelemme, että otat käyttöön uusimman korjausversion, joka sisältää tämän hotfix-korjauksen. Lisätietoja saat napsauttamalla seuraavaa Microsoft Knowledge Base -tietokanta -artikkelinumeroa:

2567616 SQL Server 2008 R2 -koontiversiot, jotka julkaistiin SQL Server 2008 R2 SP1:n julkaisemisen jälkeen

SQL Server 2012 Tämän ongelman korjaus julkaistiin ensimmäisen kerran SQL Server 2012:n kumulatiivisessa päivityksessä 3. Saat lisätietoja tästä kumulatiivisesta päivityspaketista napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset lukemaan artikkelin Microsoft Knowledge Base -tietokanta -tietokannassa:

2723749 SQL Server 2012:n kumulatiivinen päivityspaketti 3 Koska koontiversiot ovat kumulatiivisia, jokainen uusi korjausversio sisältää kaikki SQL Server 2012:n aiempaan korjausversioon sisältyvät hotfix-korjaukset ja tietoturvakorjaukset. Microsoft suosittelee, että otat käyttöön uusimman kyseisen hotfix-korjauksen sisältävän korjausversion. Lisätietoja saat napsauttamalla seuraavaa Microsoft Knowledge Base -tietokanta -artikkelinumeroa:

2692828 SQL Server 2012 -koontiversiot, jotka on julkaistu SQL Server 2012:n julkaisemisen jälkeen Sinun on asennettava SQL Server 2012 -hotfix-korjaus SQL Server 2012:n asennukseen.

SQL Server 2008 Service Pack 3 Tämän ongelman korjaus julkaistiin ensin SQL Server 2008 Service Pack 3:n kumulatiivisessa päivityksessä 6. Saat lisätietoja tästä kumulatiivisesta päivityspaketista napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset lukemaan artikkelin Microsoft Knowledge Base -tietokanta -tietokannassa:

2715953 Kumulatiivinen päivityspaketti SQL Server 2008 Service Pack 3:lleHuomautus Koska koontiversiot ovat kumulatiivisia, jokainen uusi korjausversio sisältää kaikki edelliseen SQL Server 2008:n korjausversioon sisältyvät hotfix-korjaukset ja tietoturvakorjaukset. Microsoft suosittelee, että otat käyttöön uusimman kyseisen hotfix-korjauksen sisältävän korjausversion. Lisätietoja saat napsauttamalla seuraavaa Microsoft Knowledge Base -tietokanta -artikkelinumeroa:

2629969 SQL Server 2008 -koontiversiot, jotka on julkaistu SQL Server 2008 Service Pack 3:n julkaisemisen jälkeen Microsoft SQL Server 2008:n hotfix-korjaukset on tarkoitettu tietyille SQL Server Service Pack -paketeille. SQL Server 2008 Service Pack 3 -asennukseen on asennettava SQL Server 2008 Service Pack 3 -korjaus. Oletusarvoisesti kaikki SQL Server Service Pack -pakettiin sisältyvät hotfix-korjaukset seuraavaan SQL Server Service Packiin.

SQL Server 2008 R2
Tämän ongelman korjaus julkaistiin ensin kumulatiivisessa päivityksessä 14. Saat lisätietoja tämän SQL Server 2008 R2:n kumulatiivisen päivityspaketin hankkimisesta napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset lukemaan artikkelin Microsoft Knowledge Base -tietokanta -tietokannassa:

2703280 SQL Server 2008 R2:n kumulatiivinen päivityspaketti 14 Huomautus Koska koontiversiot ovat kumulatiivisia, jokainen uusi korjausversio sisältää kaikki SQL Server 2008 R2:n aiempaan korjausversioon sisältyvät hotfix-korjaukset ja tietoturvakorjaukset. Suosittelemme, että otat käyttöön uusimman korjausversion, joka sisältää tämän hotfix-korjauksen. Lisätietoja saat napsauttamalla seuraavaa Microsoft Knowledge Base -tietokanta -artikkelinumeroa:

981356 SQL Server 2008 R2 -koontiversiot, jotka julkaistiin SQL Server 2008 R2:n jälkeen

SQL Server 2008 Service Pack 2Tämän ongelman korjaus julkaistiin ensimmäisenä SQL Server 2008 Service Pack 2:n kumulatiivisessa päivityksessä 9. Saat lisätietoja tämän kumulatiivisen päivityspaketin hankkimisesta napsauttamalla seuraavaa artikkelin numeroa, jolloin pääset lukemaan artikkelin Microsoft Knowledge Base -tietokanta -tietokannassa:

2673382 Kumulatiivinen päivityspaketti 9 SQL Server 2008 Service Pack 2:lleHuomautus Koska koontiversiot ovat kumulatiivisia, jokainen uusi korjausversio sisältää kaikki SQL Server 2008:n aiempaan korjausversioon sisältyvät hotfix-korjaukset ja tietoturvakorjaukset. Suosittelemme, että otat käyttöön uusimman korjausversion, joka sisältää tämän hotfix-korjauksen. Lisätietoja saat napsauttamalla seuraavaa Microsoft Knowledge Base -tietokanta -artikkelinumeroa:

2402659 SQL Server 2008 -koontiversiot, jotka julkaistiin SQL Server 2008 Service Pack 2:n jälkeen

Tila

Microsoft on vahvistanut tämän olevan ongelma niissä Microsoftin tuotteissa, jotka ovat listattuna Koskee seuraavia tuotteita -osiossa.