KB2518808-FIX: "izteiksme: (pCopySrc-Command) <= (int) cmdLength" kļūda, kad pievienojat tabulu, kas publicēta transakciju publikācijā programmā SQL Server 2008 R2

Microsoft izplata Microsoft SQL Server 2008 R2 labojumus kā vienu lejupielādējamo failu. Tā kā labojumi ir kumulatīvi, katrā jaunajā laidienā ir iekļauti visi labojumfaili un visi drošības labojumi, kas bija iekļauti iepriekšējā SQL Server 2008 R2 labojuma laidienā.

Simptomi

Iedomājieties šādu scenāriju:

  • Jūs izveidojat transakciju publikāciju programmā SQL Server 2008 R2.

  • Jūs pievienojat tabulu kā publikācijas rakstu.

  • Jūs inicializējat transakciju publikāciju, un jūs ģenerējat sākotnējo momentuzņēmumu.

  • Jūs mēģināt izpildīt vaicājumu, lai tabulai pievienotu jaunu kolonnu. Piemēram, mēģinot palaist tālāk norādīto vaicājumu, lai pievienotu <kolonnas nosaukumu> kolonnu <tabulas nosaukumu> tabulu:

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

Šajā scenārijā vaicājums netiek palaists, un tiek parādīts kļūdas ziņojums, kas līdzīgs šim:

Atrašanās vieta: replschema. cpp: 1305Expression: (pCopySrc-Command) <= (int) cmdLengthSPID: <SPID>procesa ID: <procesa ID>

Msg 4902, Level 16, State 1, Line 2Cannot atrodiet objektu <tabulas nosaukumu> , jo tā nepastāv vai jums nav atļaujas. Kad rodas šī problēma, SQL Server kļūdu žurnālfailā tiek reģistrēts šāds kļūdas ziņojums.

Vai arī, iespējams, pamanīsit šādu mazliet atšķirīgu kļūdu:

Msg 3624, Level 20, State 1, Procedure sp_replflush, Line 1A sistēmas apgalvojuma pārbaude neizdevās. Detalizētu informāciju skatiet SQL Server kļūdu žurnāls. Parasti apgalvotās kļūmes cēlonis ir programmatūras kļūda vai datu bojājums. Lai pārbaudītu datu bāzes bojājumus, apsveriet iespēju palaist DBCC CHECKDB. Ja esat piekritis sūtīt izgāztuves uz Microsoft iestatīšanas laikā, korporācijai Microsoft tiks nosūtīta mazā izmete. Atjauninājums var būt pieejams no Microsoft jaunākās servisa pakotnēs vai QFE, izmantojot tehnisko atbalstu.

Turklāt kļūdu žurnālā tiek reģistrēti šādi ieraksti:

2011-03-25 08:56:14.71 spid55 kļūda: 17066, smaguma pakāpe: 16, štats: 1.2011-03-25 08:56:14.71 spid55 SQL Server apgalvojums: fails: <replschema. CPP>, Line = 1305 failed (pCopySrc-Command) <= (int) cmdLength Šī kļūda var būt saistīta ar hronometrāžu. Ja kļūda joprojām pastāv pēc priekšraksta atkārtotas palaišanas, izmantojiet DBCC CHECKDB, lai pārbaudītu datu bāzi strukturālai integritātei, vai arī restartējiet serveri, lai nodrošinātu, ka atmiņas datu struktūras nav bojātas. 2011-03-25 08:56:14.92 spid55 kļūda: 3624, smagums: 20, rajons: 1.2011-03-25 08:56:14.92 spid55 sistēmas apgalvojuma pārbaude neizdevās. Detalizētu informāciju skatiet SQL Server kļūdu žurnāls. Parasti apgalvotās kļūmes cēlonis ir programmatūras kļūda vai datu bojājums. Lai pārbaudītu datu bāzes bojājumus, apsveriet iespēju palaist DBCC CHECKDB. Ja esat piekritis sūtīt izgāztuves uz Microsoft iestatīšanas laikā, korporācijai Microsoft tiks nosūtīta mazā izmete. Atjauninājums var būt pieejams no Microsoft jaunākās servisa pakotnēs vai QFE, izmantojot tehnisko atbalstu.

Risinājums

Kumulatīvās atjaunināšanas informācija

SQL Server 2008 R2 1. servisa pakotne

Šīs problēmas labojums pirmo reizi tika izlaists SQL Server 2008 R2 Service Pack 1 kumulatīvajā atjauninājumā. Lai iegūtu papildinformāciju par to, kā iegūt šo kumulatīvo atjaunināšanas pakotni, noklikšķiniet uz šī raksta numura, lai skatītu Microsoft zināšanu bāzes rakstu:

2544793 Kumulatīvās atjaunināšanas pakotne 1 SQL Server 2008 R2 1. servisa pakotneiPiezīme. Tā kā būvējums ir kumulatīvs, katrā jaunajā laidienā ir iekļauti visi labojumfaili un visi drošības labojumi, kas bija iekļauti iepriekšējā SQL Server 2008 R2 labošanas laidienā. Iesakām apsvērt jaunāko labojumu laidienu, kurā ir iekļauts šis labojumfails. Lai iegūtu papildinformāciju, noklikšķiniet uz šī raksta numura, lai skatītu Microsoft zināšanu bāzes rakstu:

2567616 SQL Server 2008 R2 būvējumi, kas tika izlaisti pēc tam, kad tika izlaista SQL Server 2008 R2 1. servisa pakotne SQL Server 2008 R2 Šīs problēmas labojums pirmo reizi tika izlaists kumulatīvajā atjaunināšanā 7. Lai iegūtu papildinformāciju par to, kā iegūt SQL Server 2008 R2 kumulatīvās atjaunināšanas pakotni, noklikšķiniet uz šī raksta numura, lai skatītu Microsoft zināšanu bāzes rakstu:

2507770 Kumulatīvās atjaunināšanas pakotne SQL Server 2008 R2 Piezīme. Tā kā būvējums ir kumulatīvs, katrā jaunajā laidienā ir iekļauti visi labojumfaili un visi drošības labojumi, kas bija iekļauti iepriekšējā SQL Server 2008 R2 labošanas laidienā. Iesakām apsvērt jaunāko labojumu laidienu, kurā ir iekļauts šis labojumfails. Lai iegūtu papildinformāciju, noklikšķiniet uz šī raksta numura, lai skatītu Microsoft zināšanu bāzes rakstu:

981356 SQL Server 2008 R2 būvējumi, kas tika izlaisti pēc tam, kad tika izlaists SQL Server 2008 R2

Risinājums

Lai novērstu šo problēmu, modificējiet tabulas nosaukumu, lai tajā būtu mazāk par 8 rakstzīmēm.

Statusa

Microsoft ir apstiprinājusi, ka šī problēma pastāv Microsoft produktos, kas ir norādīti sadaļā "attiecas uz".

Vai nepieciešama papildu palīdzība?

Paplašiniet savas prasmes
Iepazīties ar apmācību
Esiet pirmais, kas saņem jaunās iespējas
Pievienoties Microsoft Insider

Vai šī informācija bija noderīga?

Paldies par jūsu atsauksmēm!

Paldies par atsauksmēm! Šķiet, ka jums varētu būt noderīgi sazināties ar kādu no mūsu Office atbalsta speciālistiem.

×