คําถาม:
ฉันพยายามใช้วิธีการเปิดตาราง/ปิดตารางเพื่อสร้างตารางใหม่SQLตารางที่มีความคล่องตัว แต่ในข้อความ 'เปิดตาราง' SQLข้อผิดพลาดนี้จะถูกส่งกลับ: "การดําเนินการเปิดบนตาราง xxx ไม่สามารถเข้าถึง
SQLได้" เมื่อฉันคลิกข้อมูลเพิ่มเติม จะมีข้อความว่า "[Microsoft][โปรแกรมควบคุม SQL Server ODBC][SQL Server] มีวัตถุชื่อ PKADSY4997 ในฐานข้อมูลอยู่แล้ว [Microsoft] [ODBC SQL Serverโปรแกรมควบคุม] [SQL Server] ไม่สามารถสร้างข้อห้าม ดูข้อผิดพลาดก่อนหน้า"
ชื่อจริงของตารางของฉันคือ PKADSY4997 ที่ไม่มีอยู่หรือไม่มีอยู่ใน zDP ที่จัดเก็บกระบวนงานนี้ของตารางนี้ สิ่งที่เป็นสาเหตุของข้อผิดพลาด
คําตอบ:
ในกรณีนี้ ตารางถูกสร้างขึ้นและลดลงก่อนหน้านี้ แต่ด้วยเหตุผลบางอย่างข้อห้ามในตารางยังไม่ได้ถูกเอาออก
ใน ตัววิเคราะห์คิวรี เราเรียกใช้คิวรีนี้: เลือก * จาก
sysobjects โดย name = 'PKADSY4997' ID ที่ส่งกลับคือ
151193332 และ parent_obj คือ 173243672
เมื่อดูparent_objถัดไป เราจะเรียกใช้คิวรีแบบใช้เลือกข้อมูลกับวัตถุแม่และไม่พบ ดังนั้น นี่เป็นข้อข้อบังคับไม่มีข้อควรรู้ตามที่เราคาดไว้
เมื่อถึงจุดนั้น เราต้องการลบข้อข้อบังคับไม่มีข้อมูล แต่ก่อนอื่น ต้องเปลี่ยนการตั้งค่า
ในหน้าต่าง SQL Server คุณสมบัติใหม่ จะมีกล่องกาเครื่องหมายที่ต้องถูกกาเครื่องหมายเพื่ออนุญาตให้ลบข้อห้ามนี้ - อนุญาตให้ปรับเปลี่ยนไปยังแค็ตตาล็อกของระบบโดยตรง
จากตัววิเคราะห์คิวรี: ลบจาก
sysobjects โดย name = ''PKADSY4997' ซึ่งเอาข้อควบคุมออก และตารางสามารถสร้างใหม่ได้อย่างถูกต้องจาก
Dexterity ในตอนนี้
บทความนี้คือ TechKnowledge Document ID:26107