Întrebare:
Încerc să utilizez metoda deschidere tabel/închidere tabel pentru a crea noul tabel SQL cu Dexteritate. Totuși, în declarația "deschidere tabel", această SQL este returnată: "O operațiune de deschidere în tabel xxx nu a reușit accesarea
SQL date." Atunci când fac clic pe Mai multe informații, se numește "[Microsoft][Driver SQL Server ODBC][SQL Server] Există deja un obiect numit PKADSY4997 în baza de date. [Microsoft] [Driver SQL Server ODBC] [SQL Server] Nu s-a putut crea restricția. Vedeți erorile anterioare".
Numele fizic al tabelului este PKADSY4997, care nu există și nu există niciuna dintre procedurile stocate zDP pentru acest tabel. Ce poate fi cauza erorii?
Răspuns: În acest caz, tabelul a fost creat și eliminat anterior, dar, din anumite motive, nu a fost eliminată o restricție
asupra tabelului.
În Analizorul de interogare, am rulat această interogare: selectați * din
sysobjects where name = 'PKADSY4997' ID-ul returnat a fost
151193332, iar parent_obj a fost 173243672.
Când privim coloana parent_obj, următoarea dată am rulat interogarea de selectare pe obiectul părinte și nu am putut găsi una. Așadar, aceasta a fost o restricție solitară, așa cum ne așteptam.
În acel moment, trebuia să ștergem restricția solitară. Dar mai întâi, o setare trebuie modificată.
În fereastra SQL Server proprietăți, există o casetă de selectare care trebuie marcată pentru a permite ștergerea acestei restricții- Se permite ca modificările să fie efectuate direct în cataloagele de sistem.
Acum, din Analizorul de interogare: ștergeți din
sysobjects unde nume = ''PKADSY4997' Acest lucru a eliminat restricția și este posibil ca tabelul să fie creat din nou corect din
Dexteritate acum.
Acest articol a fost TechKnowledge Document ID:26107