แต่นั่นเป็นปัญหาใหญ่จริง ๆ เมื่อทำการอัพเกรด
มันสามารถ
บางองค์กรมีความไม่เป็นระเบียบและทำงานได้ไม่ดีในการโยกย้ายสคีมา
"วันหยุดสุดสัปดาห์การย้ายถิ่น" หยุดเซิร์ฟเวอร์ สำรองและส่งออกข้อมูลทั้งหมด สร้างสคีมาใหม่ (บ่อยครั้งโดยการแก้ไขสคีมาที่มีอยู่) โหลดข้อมูลซ้ำหรือพยายามปรับโครงสร้างให้เข้าที่
"Tweaking ต่อเนื่อง" ปรับเปลี่ยนตารางตามขอบเขตที่ SQL อนุญาต โดยไม่ต้องติดตามลำดับของ ALTER ที่ดำเนินการ ไม่มีทางที่จะกลับไปเป็นเวอร์ชันสกีมาก่อนหน้า หากจำเป็นให้สร้างตารางใหม่จากตารางที่มีอยู่หวังว่าจะปรับแอปพลิเคชันทั้งหมดเพื่อใช้ตารางใหม่ แต่ - ขาดการประกันคุณภาพที่ดี - ออกจากตารางเก่าแทนที่ "ในกรณี"
"Full Panic" เพียงป้องกันการแก้ไขสคีมา ทำให้เหม็นใหญ่ รับความเสี่ยงได้สูงเกินไป บล็อกความพยายามทั้งหมดในทิศทางนี้ ใช้ตัวประกันสกีมาจนกระทั่งถูกบังคับให้นำวิธีการที่เหมาะสมมาใช้
ฐานข้อมูลเชิงสัมพันธ์นั้นแย่สำหรับการดำเนินการดังกล่าวหรือไม่?
สคีมาใด ๆ เป็นความเจ็บปวดในการโยกย้าย
ปัญหาที่ใหญ่ที่สุดไม่ใช่ทางเทคนิค
มันเป็นความหมาย
เหตุผลหลักประการหนึ่งสำหรับการเปลี่ยนสคีมาคือสคีมาก่อนหน้านั้นไม่ตรงกับโดเมนปัญหาได้เป็นอย่างดี เนื่องจากความหมายมีการเปลี่ยนแปลงฐานข้อมูล (และแอปพลิเคชัน) จึงจำเป็นต้องเปลี่ยนแปลง บางครั้งสิ่งเหล่านี้เป็นการเปลี่ยนแปลงที่ลึกซึ้งซึ่งต้องมีการคิดใหม่เกี่ยวกับวิธีที่แอปพลิเคชันทำงานกับข้อมูล
การแก้ไขความหมายของฐานข้อมูลอาจเป็นเรื่องยากมาก
สิ่งที่คนทำแทนการเปลี่ยนแปลงสคีเป็นเพียงการใช้สคีมาในทางที่ผิด พวกเขาเริ่มต้นการโหลดข้อมูลผิดไปยังเขตข้อมูลที่มีอยู่เพราะพวกเขาสามารถ ฟิลด์ "ความคิดเห็น" ก็เริ่มมีข้อมูลการจัดการลูกค้าที่สำคัญตามมาด้วย "//" ตามด้วยความคิดเห็นจริง ที่เติบโตต้องมีชิ้นส่วนของข้อมูล "ฟิลด์ 1 - ฟิลด์ 2 // ความคิดเห็น" ผู้ใช้มีสเปรดชีตที่ดึงข้อมูลเพิ่มเติมนี้จากช่องแสดงความคิดเห็นเพราะซอฟต์แวร์แอปพลิเคชัน "ของจริง" มีสคีมาเป็นเรื่องยากที่จะเปลี่ยนแปลงว่าฝ่ายไอทีปฏิเสธที่จะเปลี่ยนแปลง