Klausimas: bandau naudoti atidarytos lentelės / uždarymo lentelės metodą, kad
sukurtumėte naują SQL lentelę su "Dexterity". Tačiau "atidarytos lentelės" sakinyje pateikiama SQL klaida: "Nepavyko atidaryti operacijos lentelėje
xxx nepavyko pasiekti SQL duomenų". Spustelėjus Daugiau informacijos, rašoma "[Microsoft][ODBC "SQL Server" Driver]["SQL Server"] Duomenų bazėje jau yra objektas, pavadintas PKADSY4997. [Microsoft] [ODBC "SQL Server" tvarkyklė] ["SQL Server"] Nepavyko sukurti apribojimo. Peržiūrėkite ankstesnes klaidas."
Mano lentelės fizinis pavadinimas yra PKADSY4997, kurio nėra, taip pat nėra jokių šios lentelės zDP saugomų procedūrų. Kas gali sukelti klaidą?
Atsakymas: šiuo atveju lentelė buvo sukurta ir pašalinta anksčiau, tačiau dėl kokios nors priežasties
lentelėje apribojimas nebuvo pašalintas.
Užklausų analizatoriaus užklausoje vyko ši užklausa: pasirinkite * iš
sysobjects, kur vardas = "PKADSY4997"
Grąžintas ID buvo 151193332, o parent_obj buvo 173243672.
Pažvelgę į parent_obj, kitą kartą išbėgaume iš pirminio objekto ir nepavyko jo rasti. Taigi tai buvo vienišieji apribojimai, kaip tikėjomės.
Tuo metu mums reikėjo panaikinti vienišuosius suvaržymus. Tačiau pirmiausia reikia pakeisti parametrą.
Lange "SQL Server" ypatybės yra žymės langelis, kuris turi būti pažymėtas, kad būtų galima panaikinti šį apribojimą– leisti pakeitimus atlikti tiesiogiai sistemos kataloguose.
Dabar iš užklausų analizatoriaus: panaikinkite iš sysobjects, kur vardas
= ''PKADSY4997' Tai pašalino apribojimą ir lentelę galima iš naujo sukurti iš
"Dexterity" dabar.
Šis straipsnis buvo "TechKnowledge" dokumento ID:26107