การแก้ไข: การละเมิดการเข้าถึงและข้อผิดพลาด "ข้อยกเว้นไม่ควรยกขึ้นรหัสนี้" เกิดขึ้นเมื่อคุณใช้ SQL Server 2012 หรือ 2014 ในเซิร์ฟเวอร์ SQL

ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ

ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:3042135
อาการ
สมมติว่า คุณใช้ Microsoft SQL Server 2012 หรือ 2014 ในเซิร์ฟเวอร์ SQL เมื่อการปิดตายเกิดขึ้นใน SQL Server คุณได้รับการละเมิดการเข้าถึงดังต่อไปนี้ที่เกิดจากจอภาพการชะงักงัน:
sqldk CSlotGroup::PshRelease
sqldk CSlotPageMgr::Release
sqllang ! commondelete
sqllang ! ลบ[]
sqllang CTraceDataSTVF::InternalReleaseResources
sqllang TTableBase<CTraceDataSTVFInfo>:: ReleaseResources</CTraceDataSTVFInfo>
sqllang CTraceDataSTVF:: {dtor }
sqllang CTraceDataSTVF:: 'สเกลาลบ destructor'
sqlmin CSTVFInternal::Release
sqlmin CQueryExecContext:: ~ CQueryExecContext
sqlmin CQueryInstance::ShutdownQueryExecContext
sqlmin CQueryScan::ShutdownQueryExecContext
sqlmin CQueryScan::DestroyQueryOnException
sqllang CXStmtQuery::ShutdownOnException
sqllang CXStmtQuery::FinishOnExceptionImp
sqllang GetInterruptTicks
sqllang InterruptTicks<unsigned __int64="">:: LoadTicks</unsigned>
sqllang SOS_Ticks<><unsigned __int64="">-3 >:: LoadTicks</unsigned>
sqllang ! 'CMsqlExecContext::FExecute':: '1':: ตรวจจับ $3
msvcr100 ! _CallSettingFrame
msvcr100 ! __CxxCallCatchBlock
ntdll RcFrameConsolidation
sqllang CMsqlExecContext::FExecute
sqllang CSQLSource::Execute
sqllang CStmtExecProc::XretLocalExec
sqllang CStmtExecProc::XretExecExecute
sqllang CXStmtExecProc::XretExecute
sqllang CExecStmtLoopVars::ExecuteXStmtAndSetXretReturn
sqllang CMsqlExecContext::ExecuteStmts<1,0></1,0>
sqllang CMsqlExecContext::FExecute
sqllang CSQLSource::Execute
sqllang ExecuteSql
sqllang CSpecProc::ExecuteSpecial
sqllang CSpecProc::Execute
sqllang ! process_request
sqllang ! process_commands
sqldk SOS_Task::Param:: ดำเนินการ
sqldk SOS_Scheduler::RunTask
sqldk SOS_Scheduler::ProcessTasks
sqldk SchedulerManager::WorkerEntryPoint
sqldk SystemThread::RunWorker
sqldk SystemThreadDispatcher::ProcessWorker
sqldk SchedulerManager::ThreadEntryPoint
kernel32 BaseThreadInitThunk
ntdll RtlUserThreadStart
หลังจากการละเมิดการเข้าถึง คุณได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้จากแฟ้มบันทึกข้อผิดพลาด SQL Server:
วันที่>เวลา> spidรหัส> ใช้เวอร์ชัน 'dbghelp.dll' '4.0.5'
วันที่>เวลา> spidรหัส> ** ถ่ายโอนเธรด - spid =รหัส>, EC = 0X0000007F8608E160
วันที่>เวลา> spidรหัส> *** ถ่ายโอนข้อมูลที่ถูกส่งไปยังกองซ้อนเส้นทางของแฟ้ม>\ชื่อแฟ้มการถ่ายโอนข้อมูล> .txt
วันที่>เวลา> spidรหัส> * *******************************************************************************
วันที่>เวลา> spidรหัส> *
วันที่>เวลา> spidรหัส> * ถ่ายโอนข้อมูลกองซ้อนเริ่มต้น:
วันที่>เวลา> spidรหัส> *วันที่>เวลา> spidรหัส>
วันที่>เวลา> spidรหัส> *
วันที่>เวลา> spidรหัส> * ตำแหน่ง: qxcntxt.cpp:1143
วันที่>เวลา> spidรหัส> * นิพจน์: ! " ไม่มีข้อยกเว้นควรจะยกกำลัง ด้วยรหัสนี้"
วันที่>เวลา> spidรหัส> * SPID:รหัส>
วันที่>เวลา> spidรหัส> * รหัสกระบวนการ: 3556
วันที่>เวลา> spidรหัส> *
วันที่>เวลา> spidรหัส> * อินพุตบัฟเฟอร์ไบต์ 37 -
วันที่>เวลา> spidรหัส> * 16 00 00 00 12 00 00 00 02 00 00 00 00 00 00 00 00 00
วันที่>เวลา> spidรหัส> * ÿÿ & 01 00 00 00 ff ff 0c 00 00 00 00 00 26 04 04 05 00 00
วันที่>เวลา> spidรหัส> * 00
วันที่>เวลา> spidรหัส> *
วันที่>เวลา> spidรหัส> *
...
วันที่>เวลา> spidรหัส> ลายเซ็นของสแตกสำหรับการถ่ายโอนข้อมูลคือ 0x000000014202549F
วันที่>เวลา> spidรหัส> [ข้อมูล] สิ้นสุดเริ่มต้นของรหัสประจำตัว | ข้อผิดพลาดผลลัพธ์รัฐ Speculate LazyCommit ReadOnly เตรียมไว้ | ธุรกรรมฐานข้อมูล ThreadId | LogSizeRq ทราน ScanSet ReadSet WriteSet | CommitDep TotalComm ผู้อยู่ในอุปการะ 0 ผู้อยู่ในอุปการะ 1 ผู้อยู่ในอุปการะ 2 ผู้อยู่ในอุปการะ 3 ขึ้นอยู่กับ 4 ผู้อยู่ในอุปการะ 5 ผู้อยู่ในอุปการะ 6 ผู้อยู่ในอุปการะ 7 | ตำแหน่งที่ตั้งของพื้นที่ |
วันที่>เวลา> spidรหัส> หมดเวลารอ 11800 กระบวนการถ่ายโอนข้อมูลภายนอก

วันที่>เวลา> spidรหัส> ข้อผิดพลาด: 17066 ความรุนแรง: 16 สถานะ: 1
วันที่>เวลา> spidรหัส> ยืนยันเซิร์ฟเวอร์ SQL: แฟ้ม:<qxcntxt.cpp>บรรทัด =ตรวจสอบเงื่อนไขล้มเหลว 1143 = ' ! " ไม่มีข้อยกเว้นควรจะยกกำลัง ด้วยรหัสนี้" ' ข้อผิดพลาดนี้อาจเป็นช่วงเวลาที่เกี่ยวข้อง ถ้าข้อผิดพลาดยังคงมีอยู่หลังจากคำสั่งสำเร็จ ใช้ DBCC CHECKDB เพื่อตรวจสอบฐานข้อมูลสำหรับความสมบูรณ์ของโครงสร้าง หรือเริ่มต้นเซิร์ฟเวอร์เพื่อให้แน่ใจว่า โครงสร้างของข้อมูลในหน่วยความจำเสียหายไม่</qxcntxt.cpp>

การแก้ไข

ข้อมูลการปรับปรุงสะสม

ปัญหาถูกก่อนมีแก้ไขในการปรับปรุงสะสมต่อไปนี้ของ SQL Server

ข้อแนะนำ: ติดตั้งการปรับสะสมล่าสุดสำหรับ SQL Server
แต่ละโปรแกรมปรับปรุงสะสมใหม่สำหรับ SQL Server ประกอบด้วยโปรแกรมแก้ไขด่วนทั้งหมด และทั้งหมดที่แก้ไขความปลอดภัยที่ถูกรวมอยู่ในการปรับปรุงที่สะสมก่อนหน้านี้ เราขอแนะนำให้ คุณดาวน์โหลด และติดตั้งการปรับปรุงสะสมล่าสุดสำหรับ SQL Server:
สถานะ
Microsoft ยืนยันว่านี่เป็นปัญหาในผลิตภัณฑ์ของ Microsoft ซึ่งแสดงไว้ในส่วน "นำไปใช้กับ"

คำเตือน: บทความนี้ได้รับการแปลโดยอัตโนมัติ

คุณสมบัติ

รหัสบทความ: 3042135 - การตรวจสอบครั้งสุดท้าย: 06/25/2015 03:35:00 - ฉบับแก้ไข: 2.0

Microsoft SQL Server 2012 Service Pack 2, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2014 Service Pack 1

  • kbqfe kbfix kbsurveynew kbexpertiseadvanced kbmt KB3042135 KbMtth
คำติชม