INF: ถามที่ถามบ่อย - SQL Server 2000 - ตัวแปรตาราง

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 305977 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

สรุป

บทความนี้ตอบบ่อย ๆ ขอถามบาง (FAQs) ที่เกี่ยวข้องกับตัวแปรตารางที่จะนำมาใช้ใน SQL Server 2000

เมื่อต้องการอ่านคำอธิบายของตาราง SQL Server Books Online นอกจากนี้ตัวแปร โปรดเยี่ยมชมเว็บไซต์ต่อไปนี้ของ Microsoft:
.aspx http://msdn2.microsoft.com/en-us/library/aa260638 (SQL.80)

ข้อมูลเพิ่มเติม

Q1: ทำไมมีตัวแปรตารางขึ้นเมื่อตารางชั่วคราวพร้อมใช้งานอยู่แล้วหรือไม่

A1: ตัวแปรของตารางที่มีข้อดีต่าง ๆ ดังต่อไปนี้ชั่วคราว ตาราง:
  • ตามที่กล่าวถึงใน SQL Server Books Online "ตาราง" บทความ ตัวแปรตาราง เช่นตัวแปรท้องถิ่น มีขอบเขตที่กำหนดไว้ใน จุดสิ้นสุดซึ่งจะถูกล้างโดยอัตโนมัติ
  • ผลลัพธ์ของตัวแปรตารางใน recompilations น้อยลงของที่เก็บไว้ กระบวนการเปรียบเทียบกับตารางชั่วคราว
  • ธุรกรรมที่เกี่ยวข้องกับตารางตัวแปรสุดท้ายเท่านั้นสำหรับการ ระยะเวลาของการปรับปรุงบนตัวแปรตาราง ดังนั้น ต้องมีตัวแปรตาราง น้อยกว่าการล็อก และเข้าสู่ทรัพยากร เนื่องจากตัวแปรในตารางมีจำกัดขอบเขต และไม่ได้เป็นส่วนหนึ่งของฐานข้อมูลแบบถาวร ไม่มีธุรกรรม rollbacks ส่งผลกระทบต่อเหล่านั้น
Q2: ผิด ด้วยการพูดว่า ตัวแปรตารางทำ recompilations กระบวนงานที่เก็บน้อยลงกว่าเมื่อมีใช้ตารางชั่วคราวหรือไม่

A2: บทความต่อไปนี้อธิบายถึงสาเหตุบางประการเมื่อเก็บไว้ ขั้นตอนมี recompiled:

243586 Recompilation กระบวนงานที่เก็บไว้ในการแก้ไขปัญหา
Recompilations"เนื่องจาก มีบางตารางชั่วคราว ส่วนการดำเนินงาน"นอกจากนี้ยังแสดงรายการข้อกำหนดบางอย่างเพื่อหลีกเลี่ยงเช่นการ recompilation เนื่องจากตารางชั่วคราว ข้อจำกัดเหล่านี้ไม่ใช้กับ ตัวแปรตาราง

ตัวแปรตารางคือหนึ่ง ๆ การชุดงานได้อย่างสมบูรณ์ ที่สร้างเหล่านั้นกำลังแก้ไขดังนั้นไม่มี ' จะเกิดขึ้นเมื่อการ CREATE หรือ ALTER คำสั่งเกิด ซึ่งอาจเกิดขึ้นกับตารางชั่วคราว ตารางชั่วคราว ต้องกำลังแก้ไขนี้ ' เก็บเพื่อให้สามารถอ้างอิงจาก ตาราง ที่ซ้อนกันอยู่ ขั้นตอน หลีกเลี่ยงตัวแปรตารางปัญหานี้ได้อย่างสมบูรณ์เพื่อให้กระบวนงานที่เก็บไว้สามารถใช้ได้ แผนที่มีอยู่แล้วไพล์ ดังนั้นจึง บันทึกทรัพยากรการประมวลผลที่เก็บไว้ ขั้นตอน

Q3: สิ่งใดบ้างข้อเสียของตัวแปรในตารางหรือไม่

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

A4: ตัวแปรตารางไม่มีโครงสร้างของหน่วยความจำอย่างเดียว เนื่องจากตาราง ตัวแปรอาจเก็บข้อมูลมากกว่าที่สามารถบันทึกลงในหน่วยความจำ การมีอยู่บน ดิสก์ในการเก็บข้อมูล มีสร้างตัวแปรตารางในฐานข้อมูลtempdbเหมือนกับตารางชั่วคราว ถ้าหน่วยความจำจะพร้อมใช้งาน ทั้งสองตารางตัวแปร และมีสร้าง และประมวลผลตารางชั่วคราวขณะอยู่ใน หน่วยความจำ (การแคชข้อมูล)

Q5: ที่มีการใช้ตัวแปรตารางแทนที่ใช้เป็นตารางชั่วคราว

A5: คำตอบขึ้นอยู่กับปัจจัยสามเหล่านี้:
  • จำนวนแถวที่ถูกแทรกลงไป ตาราง
  • หมายเลขของ recompilations ที่มีบันทึกแบบสอบถาม จากนั้น
  • ชนิดของแบบสอบถามและการอ้างอิงในดัชนี และ สถิติสำหรับประสิทธิภาพการทำงาน
ในบางสถานการณ์ การตัดกระบวนงานเก็บไว้กับแบบชั่วคราว ตารางลงในมีขนาดเล็กกว่าเก็บตอนเพื่อ recompilation ที่เกิดขึ้นบน หน่วยที่เล็กลงจะมีประโยชน์

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

คุณสมบัติ

หมายเลขบทความ (Article ID): 305977 - รีวิวครั้งสุดท้าย: 30 พฤษภาคม 2556 - Revision: 6.0
ใช้กับ
  • Microsoft SQL Server 2000 Standard Edition
Keywords: 
kbinfo kbmt KB305977 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:305977

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com