การแก้ไขข้อมูลในแบบสอบถาม

นำไปใช้กับ
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

คุณอาจพบสถานการณ์ที่คุณไม่สามารถแก้ไขข้อมูลในมุมมองแผ่นข้อมูลคิวรีเพื่อเปลี่ยนแปลงข้อมูลในตารางต้นแบบ บทความนี้ช่วยให้คุณเข้าใจว่าเมื่อใดที่คุณสามารถแก้ไขข้อมูลคิวรี เมื่อคุณไม่สามารถแก้ไขข้อมูลคิวรี และวิธีการเปลี่ยนการออกแบบของคิวรีเพื่อให้คุณสามารถแก้ไขข้อมูลพื้นฐานของคิวรีได้

ในบทความนี้

บทนำ

เมื่อคุณเปิดคิวรีในมุมมองแผ่นข้อมูล คุณอาจต้องการแก้ไขข้อมูล บางทีคุณอาจสังเกตเห็นข้อผิดพลาด หรือบางทีคุณอาจเห็นข้อมูลบางอย่างที่ล้าสมัย คุณสามารถแก้ไขข้อมูลในแผ่นข้อมูลคิวรีได้โดยตรง ทั้งนี้ขึ้นอยู่กับวิธีที่คิวรีถูกสร้างขึ้น

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

นอกจากการแก้ไขข้อมูลในมุมมองแผ่นข้อมูลคิวรีแล้ว คุณยังสามารถใช้คิวรีแบบใช้อัปเดตข้อมูลเพื่ออัปเดตข้อมูลในตารางได้ บทความนี้ไม่ครอบคลุมถึงคิวรีการอัปเดต

สําหรับข้อมูลเพิ่มเติมเกี่ยวกับคิวรีแบบใช้อัปเดตข้อมูล ให้ดูบทความ สร้างและเรียกใช้คิวรีแบบใช้อัปเดตข้อมูล

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

สําหรับข้อมูลเพิ่มเติมเกี่ยวกับคิวรีแบบใช้สร้างตาราง ให้ดูบทความ สร้างคิวรีแบบใช้สร้างตาราง

ด้านบนของหน้า

ฉันสามารถแก้ไขข้อมูลในคิวรีได้เมื่อใด

คุณสามารถแก้ไขข้อมูลในคิวรีได้เสมอเมื่อคิวรียึดตามตารางเพียงตารางเดียวหรือสองตารางที่มีความสัมพันธ์แบบหนึ่ง-ต่อ-หนึ่งต่อกัน

หมายเหตุ

แม้ว่าคุณจะสามารถแก้ไขข้อมูลในคิวรีได้ แต่บางเขตข้อมูลอาจไม่พร้อมใช้งานสําหรับการแก้ไข กรณีดังกล่าวจะแสดงอยู่ในส่วนต่อไปนี้

ด้านบนของหน้า

ฉันไม่สามารถแก้ไขข้อมูลในคิวรีได้เมื่อใด

คุณไม่สามารถแก้ไขข้อมูลในคิวรีเมื่อ

  • คิวรีเป็นคิวรีแบบตาราง

  • คิวรีเป็นคิวรีแบบระบุเป็น SQL

  • เขตข้อมูลที่คุณกําลังพยายามแก้ไขเป็นเขตข้อมูลจากการคํานวณ ในกรณีนี้ คุณอาจสามารถแก้ไขฟิลด์อื่นได้

  • คิวรีจะยึดตามตารางอย่างน้อยสามตาราง และมีความสัมพันธ์แบบกลุ่ม-ต่อ-หนึ่ง-กลุ่ม

    หมายเหตุ

    แม้ว่าคุณจะไม่สามารถแก้ไขแผ่นข้อมูลคิวรีในกรณีนี้ คุณสามารถแก้ไขข้อมูลในฟอร์มได้เมื่อคุณสมบัติ RecordsetType ของฟอร์มถูกตั้งค่าเป็น Dynaset (ไม่สอดคล้องกัน Updates)

  • คิวรีมีส่วนคําสั่ง GROUP BY

ด้านบนของหน้า

How do I เปลี่ยนคิวรีเพื่อให้ฉันสามารถแก้ไขข้อมูลของคิวรีได้หรือไม่

ตารางต่อไปนี้แสดงรายการกรณีเมื่อคุณไม่สามารถแก้ไขคิวรี ได้ จับคู่กับวิธีการเพื่อทําให้แผ่นข้อมูลคิวรีพร้อมใช้งานสําหรับการแก้ไข

คุณไม่สามารถแก้ไขค่าในแผ่นข้อมูลคิวรีเมื่อ เมื่อต้องการทําให้แผ่นข้อมูลคิวรีพร้อมใช้งานสําหรับการแก้ไข ให้ทําดังนี้
คุณสมบัติ ค่าที่ไม่ซ้ํากัน ของคิวรีถูกตั้งค่าเป็น ใช่ ตั้งค่าคุณสมบัติ ค่าที่ไม่ซ้ํากัน ของคิวรีเป็น ไม่ใช่
ดูส่วนต่อไปนี้ ตั้งค่าคุณสมบัติ ค่าที่ไม่ซ้ํากัน เป็น ไม่ใช่ เพื่อเรียนรู้วิธีการตั้งค่าคุณสมบัตินี้
คิวรีมีตารางฐานข้อมูล ODBC ที่ลิงก์ที่ไม่มีดัชนีที่ไม่ซ้ํากันหรือตาราง Paradox ที่ไม่มีคีย์หลัก เพิ่มคีย์หลักหรือดัชนีที่ไม่ซ้ํากันลงในตารางที่ลิงก์โดยใช้วิธีการที่ให้โดยผู้จําหน่ายฐานข้อมูลที่ลิงก์
คุณไม่มีสิทธิ์ในการอัปเดตข้อมูลสําหรับตารางต้นแบบ กําหนดสิทธิ์อัปเดตข้อมูล
คิวรีมีมากกว่าหนึ่งตารางหรือหนึ่งคิวรี และตารางหรือคิวรีไม่ถูกรวมด้วยบรรทัดการรวมในมุมมองออกแบบ สร้างการรวมที่เหมาะสม
ดูส่วน สร้างการรวม เพื่อเรียนรู้วิธีการสร้างการรวม
ฐานข้อมูลจะเปิดเป็นแบบอ่านอย่างเดียว หรืออยู่ในไดรฟ์แบบอ่านอย่างเดียว ปิดฐานข้อมูลและเปิดอีกครั้งโดยไม่ต้องเลือก เปิดแบบอ่านอย่างเดียว หรือถ้าฐานข้อมูลอยู่ในไดรฟ์แบบอ่านอย่างเดียว ให้เอาแอตทริบิวต์แบบอ่านอย่างเดียวออกจากไดรฟ์ หรือย้ายฐานข้อมูลไปยังไดรฟ์ที่ไม่ได้เป็นแบบอ่านอย่างเดียว
ฟิลด์ในเรกคอร์ดที่คุณพยายามอัปเดตถูกลบหรือถูกล็อกโดยผู้ใช้อื่น รอจนกว่าระเบียนจะถูกปลดล็อก ระเบียนที่ถูกล็อกสามารถอัปเดตได้ทันทีที่ยกเลิกการล็อกระเบียน รอให้ผู้ใช้อื่นเสร็จสิ้นการดําเนินการที่ล็อกเรกคอร์ด
คิวรีจะยึดตามตารางที่มีความสัมพันธ์แบบหนึ่ง-ต่อ-กลุ่ม และเขตข้อมูลการรวมจากด้าน "กลุ่ม" ไม่ใช่เขตข้อมูลผลลัพธ์ ในกรณีนี้ ข้อมูลในเขตข้อมูลการรวมจากด้าน "หนึ่ง" จะไม่สามารถแก้ไขได้ เพิ่มเขตข้อมูลการรวมจากด้าน "กลุ่ม" ของความสัมพันธ์ไปยังเขตข้อมูลผลลัพธ์ของคิวรี
ดูส่วน เพิ่มเขตข้อมูลการรวมจากด้าน "กลุ่ม" ไปยังเขตข้อมูลผลลัพธ์คิวรี เพื่อเรียนรู้วิธีการเพิ่มเขตข้อมูลการรวม
เขตข้อมูลการรวมจากด้าน "กลุ่ม" (หลังจากที่คุณแก้ไขข้อมูล) จะอยู่ทางด้าน "หนึ่ง" กด SHIFT+F9 เพื่อยอมรับการเปลี่ยนแปลงของคุณและรีเฟรชคิวรี
มีเขตข้อมูลว่างจากตารางบนด้าน "หนึ่ง" ของความสัมพันธ์แบบหนึ่ง-ต่อ-กลุ่ม และการรวมเป็นการรวมภายนอกด้านขวา ตรวจสอบให้แน่ใจว่ามีค่าในเขตข้อมูลนั้นที่ด้าน "หนึ่ง" คุณสามารถแก้ไขเขตข้อมูลการรวมบนด้าน "กลุ่ม" ได้ก็ต่อเมื่อมีค่าในเขตข้อมูลนั้นที่ด้าน "หนึ่ง"
คุณกําลังใช้ตารางฐานข้อมูล ODBC ที่ลิงก์ และไม่ใช่เขตข้อมูลทั้งหมดจากดัชนีที่ไม่ซ้ํากันของตารางที่ลิงก์จะอยู่ในผลลัพธ์ของคิวรี เพิ่มเขตข้อมูลทั้งหมดจากดัชนีที่ไม่ซ้ํากันของตาราง ODBC ลงในเขตข้อมูลผลลัพธ์ของคิวรี
ดูส่วน เพิ่มเขตข้อมูลดัชนีที่ไม่ซ้ํากันจากตาราง ODBC ที่ลิงก์ เพื่อเรียนรู้วิธีการเพิ่มเขตข้อมูล

ด้านบนของหน้า

ตั้งค่าคุณสมบัติ ค่าที่ไม่ซ้ํากัน เป็น ไม่ใช่

  1. เปิดคิวรีในมุมมองออกแบบ
  2. ถ้าแผ่นคุณสมบัติไม่ได้เปิดอยู่ ให้เปิดแผ่นคุณสมบัติโดยการกด F4 คลิกหนึ่งครั้งในตารางออกแบบคิวรีเพื่อให้แน่ใจว่าแผ่นคุณสมบัติแสดงคุณสมบัติคิวรีแทนที่จะแสดงคุณสมบัติของเขตข้อมูล
  3. ในแผ่นคุณสมบัติ ให้ค้นหากล่องคุณสมบัติ ค่าที่ไม่ซ้ํากัน คลิกกล่องที่อยู่ถัดจากกล่องนั้น แล้วคลิกลูกศรในกล่องนั้น แล้วคลิก ไม่

สร้างการรวม

  1. เปิดคิวรีในมุมมองออกแบบ
  2. สําหรับแต่ละตารางหรือคิวรีที่คุณต้องการรวมไปยังอีกตารางหนึ่ง ให้ลากเขตข้อมูลการรวมจากตารางหรือคิวรีนั้นไปยังเขตข้อมูลที่สอดคล้องกันในตารางหรือคิวรีที่คุณต้องการสร้างการรวม

สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการสร้างการรวม ให้ดูบทความ การรวมตารางและคิวรี

เพิ่มเขตข้อมูลการรวมจากด้าน "กลุ่ม" ไปยังเขตข้อมูลผลลัพธ์คิวรี

  1. เปิดคิวรีในมุมมองออกแบบ
  2. ในตัวออกแบบคิวรี ให้ค้นหาการรวมที่สอดคล้องกับความสัมพันธ์แบบหนึ่ง-ต่อ-กลุ่มที่เกี่ยวข้อง
  3. ดับเบิลคลิกที่เขตข้อมูลการรวมจากด้าน "กลุ่ม" ของความสัมพันธ์แบบหนึ่ง-ต่อ-กลุ่ม เขตข้อมูลการรวมจะปรากฏในตารางเขตข้อมูล ซึ่งระบุว่าเป็นเขตข้อมูลผลลัพธ์

เพิ่มเขตข้อมูลดัชนีที่ไม่ซ้ํากันจากตาราง ODBC ที่ลิงก์

  1. เปิดคิวรีในมุมมองออกแบบ
  2. ในตัวออกแบบคิวรี ให้ค้นหาตาราง ODBC ที่ลิงก์
  3. เขตข้อมูลดัชนีที่ไม่ซ้ํากันจะมีสัญลักษณ์คีย์ถัดจากชื่อเขตข้อมูล ดับเบิลคลิกที่แต่ละเขตข้อมูลที่ไม่ได้อยู่ในตารางเขตข้อมูล แต่ละเขตข้อมูลจะปรากฏในตารางเขตข้อมูล ซึ่งระบุว่าเขตข้อมูลนั้นเป็นเขตข้อมูลผลลัพธ์

ด้านบนของหน้า