\

Facebook


วันอังคารที่ 20 พฤษภาคม พ.ศ. 2557

[ SQL SERVER ] Prevent Saving Changes Recreated แค่แก้คอลลัมม์ จะให้ดรอปเทเบิลแล้วสร้างใหม่เฉย


ธรรมดาของ SQL SERVER 2008 R2 เวลาที่เราจะแก้ไขดาต้าไทป์ของคอลัมม์ให้เป็นประเภทอื่น เช่น แก้จาก int เป็น bigint หรือแก้ความยาวของ Varchar(20) ให้สั้นลงมาเหลือ Varchar(10) จะถูกตรวจสอบก่อนว่าจะส่งผลต่อข้อมูลเราไหม ซึ่งบางครั้งก็ไม่มีปัญหาแหละ เช่น แปลง int เป็น long เพราะ data type แบบใหม่ที่แปลงไปมีขนาดยาวกว่า แต่ในกรณีที่เกิด Error เช่นแปลง varchar เป็น int ซึ่งข้อมูลเดิมอาจเป็นอักษร ซึ่งแปลงไปไม่ได้ แต่ถ้าแปลงได้ก็ไม่ควรเกิดข้อผิดพลาด


ทีนี้ด้วยความฉลาด ( มากเกินไป ) ทาง SQL SERVER จะป้องกันการแก้ไขตารางให้เราโดยจะขึ้น error ว่า "Prevent Saving Changes Recreated" ชึ่งถ้าเรายืนยันนอนยันว่าจะแก้ไข ก็สามารถไปปิดได้ดังนี้



หลังจาก LogIn เข้าสู่ server แล้วไปที่ Tool > Option แล้วไปที่ tab Designers ติก Prevent saving changes that require table re-creation ออก

ไม่มีความคิดเห็น:

May be like this posts