KB2518808-FIX: "výraz: (pCopySrc-Command) <= (int) cmdLength" chyba pri pridávaní stĺpca do tabuľky uverejnenej v publikácii s transakčnými akciami v SQL Server 2008 R2

Microsoft distribuuje Microsoft SQL Server 2008 R2 opravy ako jeden súbor na stiahnutie. Pretože opravy sú kumulatívne, každé nové vydanie obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli zahrnuté do predchádzajúceho SQL servera 2008 R2 opraviť uvoľnenia.

Príznaky

Zoberme si nasledujúcu situáciu:

  • Môžete vytvoriť transakčné publikácie v SQL Server 2008 R2.

  • Do publikácie pridáte tabuľku ako článok.

  • Inicializujte transakčnú publikáciu a vytvoríte začiatočnú snímku.

  • Pokúšate sa spustiť dotaz na pridanie nového stĺpca do tabuľky. Pokúsite sa napríklad spustiť nasledovný dotaz na Pridanie stĺpca <názov stĺpca> do tabuľky <názov tabuľky> :

    Alter table <table name> add <column name> int null

V tomto scenári sa dotaz nespustí a zobrazí sa chybové hlásenie podobné nasledujúcemu:

Lokalita: replschema. cpp: 1305Expression: (pCopySrc-Command) <= (int) cmdLengthSPID: <číslo SPID>ID procesu: <proces ID>

MSG 4902, úroveň 16, štát 1, Riadková 2Cannot vyhľadajte objekt <názov tabuľky> , pretože neexistuje alebo nemáte povolenia. Keď sa vyskytne tento problém, v súbore denníka chýb servera SQL Server sa zaznamená toto chybové hlásenie.

Alebo sa môžu vyskytnúť nasledujúce mierne odlišné chyby:

MSG 3624, úroveň 20, štát 1, postup sp_replflush, Kontrola systémových tvrdení na úrovni 1A zlyhala. Podrobnosti nájdete v denníku chýb servera SQL Server. Zlyhanie pri tvrdení zvyčajne spôsobuje chybu softvéru alebo poškodenie údajov. Ak chcete skontrolovať poškodenie databázy, zvážte spustenie príkazu DBCC CHECKDB. Ak ste súhlasili s odoslaním výpisov do spoločnosti Microsoft počas inštalácie, na spoločnosť Microsoft sa odošle mini výpis. Aktualizácia môže byť k dispozícii od spoločnosti Microsoft v najnovšom balíku Service Pack alebo v QFE z technickej podpory.

Okrem toho sa do denníka chýb zapíšu tieto položky:

2011-03-25 08:56:14.71 spid55 error: 17066, závažnosť: 16, štát: 1.2011-03-25 08:56:14.71 spid55 SQL Server tvrdení: file: <replschema. cpp>, Link = 1305 zlyhalo tvrdenie = ' (pCopySrc-Command) <= (int) cmdLength '. Táto chyba môže byť súvisiaca s časovaním. Ak chyba pretrváva aj po opätovnom spustení výkazu, použite príkaz DBCC CHECKDB na kontrolu databázy pre štrukturálnu integritu alebo reštartujte server, aby sa zabezpečilo, že nie sú poškodené údajové štruktúry v pamäti. 2011-03-25 08:56:14.92 spid55 error: 3624, závažnosť: 20; stav: 1.2011-03-25 08:56:14.92 spid55 kontrola systému. Podrobnosti nájdete v denníku chýb servera SQL Server. Zlyhanie pri tvrdení zvyčajne spôsobuje chybu softvéru alebo poškodenie údajov. Ak chcete skontrolovať poškodenie databázy, zvážte spustenie príkazu DBCC CHECKDB. Ak ste súhlasili s odoslaním výpisov do spoločnosti Microsoft počas inštalácie, na spoločnosť Microsoft sa odošle mini výpis. Aktualizácia môže byť k dispozícii od spoločnosti Microsoft v najnovšom balíku Service Pack alebo v QFE z technickej podpory.

Riešenie

Kumulatívna aktualizácia informácií

SQL Server 2008 R2 Service Pack 1

Oprava tohto problému bola prvýkrát vydaná v kumulatívnej aktualizácii 1 pre SQL Server 2008 R2 Service Pack 1. Ďalšie informácie o možnostiach získania tohto balíka kumulatívnych aktualizácií nájdete v článku databázy Microsoft Knowledge Base, ktorý sa zobrazí po kliknutí na nasledovné číslo článku:

2544793 Kumulatívna aktualizácia balíka 1 pre SQL Server 2008 R2 Service Pack 1Poznámka: Pretože zostavy sú kumulatívne, každé nové vydanie opraviť obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúceho SQL servera 2008 R2 opraviť uvoľnenia. Odporúčame, aby ste zvážili uplatnenie najnovších opráv, ktoré túto rýchlu opravu obsahujú. Ďalšie informácie nájdete v článku databázy Microsoft Knowledge Base, ktorý sa zobrazí po kliknutí na príslušné číslo článku:

2567616 Zostavy SQL servera 2008 R2, ktoré boli vydané po vydaní SQL servera 2008 R2 Service Pack 1 SQL Server 2008 R2 Oprava tohto problému bola prvýkrát vydaná v kumulatívnej aktualizácii 7. Ďalšie informácie o možnostiach získania tohto balíka kumulatívnych aktualizácií pre SQL Server 2008 R2 nájdete v článku databázy Microsoft Knowledge Base, ktorý sa zobrazí po kliknutí na nasledovné číslo článku:

2507770 Kumulatívna aktualizácia balíka 7 pre SQL Server 2008 R2 Poznámka: Pretože zostavy sú kumulatívne, každé nové vydanie opraviť obsahuje všetky rýchlych opráv a všetky opravy zabezpečenia, ktoré boli súčasťou predchádzajúceho SQL servera 2008 R2 opraviť uvoľnenia. Odporúčame, aby ste zvážili uplatnenie najnovších opráv, ktoré túto rýchlu opravu obsahujú. Ďalšie informácie nájdete v článku databázy Microsoft Knowledge Base, ktorý sa zobrazí po kliknutí na príslušné číslo článku:

981356 Zostavy SQL servera 2008 R2, ktoré boli vydané po vydaní SQL servera 2008 R2

Alternatívne riešenie

Ak chcete tento problém obísť, upravte názov tabuľky tak, aby obsahoval menej ako 8 znakov.

Stav

Spoločnosť Microsoft potvrdzuje, že ide o problém v produktoch spoločnosti Microsoft, ktoré sú uvedené v tomto článku v časti Informácie v tomto článku sa týkajú nasledujúcich produktov.

Potrebujete ďalšiu pomoc?

Rozšírte svoje zručnosti
Preskúmať školenie
Buďte medzi prvými, ktorí získajú nové funkcie
Pripojiť k Microsoft insiderov chcú

Považujete poskytnuté informácie za užitočné?

Ďakujem za vaše pripomienky!

Ďakujeme vám za pripomienky. Pravdepodobne vám pomôže, ak vás spojíme s pracovníkom podpory pre Office.

×