ทำไมคอลัมน์ตารางหลักข้อมูล sqlite เริ่มต้นด้วย 'Z'


10

ฉันดูตาราง sqlite ที่ Core Data สร้างและสังเกตว่าคอลัมน์ตารางทั้งหมดเริ่มต้นด้วย 'Z' ฉันรู้ว่านี่เป็นรายละเอียดการนำไปใช้ แต่ฉันอยากรู้ว่าทำไมถึงเป็นเช่นนั้นและถ้ามีการตัดสินใจออกแบบที่เกี่ยวข้องกับเรื่องนี้ มีใครรู้หรือเดาว่าทำไม

นี่เป็นตัวอย่างสคีมาของฐานข้อมูล Core Data sqlite:

sqlite>. schema
สร้างตาราง ZPOST (คีย์หลัก Z_PK INTEGER, Z_ENT INTEGER, Z_OPT INTEGER, ZPOSTID INTEGER, ZUSER INTEGER, ZCREATEDAT TIMESTAMP, ZTEXT VARCHAR);
สร้าง ZUSER ตาราง (คีย์หลัก Z_PK INTEGER, Z_ENT INTEGER, Z_OPT INTEGER, ZUSERID INTEGER, ZAVATARIMAGEURLSTRING VARCHAR, ZUSERNAME VARCHAR);
สร้างตาราง Z_METADATA (คีย์หลักแบบรวมของ Z_VERSION, Z_UUID VARCHAR (255), Z_PLIST BLOB);
สร้างตาราง Z_PRIMARYKEY (คีย์หลักของ Z_ENT INTEGER, Z_NAME VARCHAR, Z_SUPER INTEGER, Z_MAX INTEGER);

ฉันไม่รู้เกี่ยวกับเหตุผลในกรณีนี้จริง ๆ แต่มันไม่ใช่เรื่องแปลกสำหรับตารางฐานข้อมูลที่ให้บริการวัตถุประสงค์ทั่วไปที่จะนำหน้าด้วยคำนำหน้าพิเศษสำหรับการอ้างอิงที่ง่ายและเพื่อหลีกเลี่ยงการชนกันของตารางอื่น ๆ (เช่นผู้ใช้และ zUser)
NoChance

อาจเป็นไปได้ที่จะเห็นได้ง่าย Apple ชัดเจนมากว่าคุณไม่ควรแก้ไขตาราง Core Data ด้วยสิ่งอื่นใดนอกเหนือจาก Core Data มันสมเหตุสมผลแล้วที่จะเลือกคำนำหน้าผิดปกติบางอย่างสำหรับตาราง Core Data ทั้งหมดเพื่อให้ง่ายต่อการบอกเมื่อคุณกำลังดูตาราง Core Data
Caleb

1
บางทีมันอาจจะถูกออกแบบโดยที่ปรึกษาอดีต SAP?
ฟิลิปป์

@ ฟิลิปอาจมีประเด็น แต่ฉันก็หัวเราะตามคำแนะนำเบื้องต้น ใน SAP คุณเพิ่ม Z ลงในตารางที่กำหนดเองเพื่อให้แน่ใจว่าไม่มีการชนกับตารางภายในของ SAP สิ่งเดียวกันอาจเกิดขึ้นที่นี่: CoreData เพิ่ม Z ที่ด้านหน้าของตารางที่สร้างขึ้นสำหรับเอนทิตีของคุณเพื่อให้แน่ใจว่าไม่มีการชนกันของตารางกับสิ่งใด ๆ ภายใน
jmstone

1
ในฐานข้อมูล dev ท้องถิ่นของฉันฉันนำหน้าตารางการทดสอบด้วย Z เพื่อให้พวกเขาเรียงตามตัวอักษรไปที่ด้านล่างของรายการ ทำให้การเห็นพวกเขาง่ายขึ้นและลบออกเมื่อฉันทำเสร็จแล้ว
mike30

คำตอบ:


9

มันเป็นหลักการตั้งชื่อที่เลือกให้ใช้ใน Core Data SQLite

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

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


1
คุณเพียงแค่คาดเดาจากข้อเสนอแนะของผู้อื่นหรือคุณมีแหล่งที่มาที่แท้จริงว่าทำไม Apple เลือกข้อตกลงนี้ มันเป็นข้อโต้แย้งที่ค่อนข้างบอบบางเพราะอาจถูกนำหน้าด้วย "ENTITY_" หรือถ้า Apple มีความต้องการภายในตารางลับตารางเหล่านั้นอาจนำหน้าด้วย Z และตารางผู้ใช้สามารถตั้งชื่อได้ตามปกติ OP ได้ถามทำไมและฉันยังไม่เห็นเหตุผลที่แท้จริง
แมตต์
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.