Latest web development tutorials

SQLite PRAGMA

คำสั่งของ SQLitePRAGMA เป็นคำสั่งพิเศษที่สามารถนำมาใช้ในความหลากหลายของตัวแปรสิ่งแวดล้อม SQLite ควบคุมสิ่งแวดล้อมและธงสถานะPRAGMA ค่าสามารถอ่านได้ก็สามารถตั้งค่าได้ตามความต้องการ

ไวยากรณ์

เพื่อสอบถามค่าปัจจุบันของ PRAGMA เพียงคุณจำเป็นต้องให้ชื่อของ pragma นี้:

PRAGMA pragma_name;

ในการตั้งค่าใหม่สำหรับ PRAGMA ไวยากรณ์ต่อไปนี้:

PRAGMA pragma_name = ค่า;

โหมดการตั้งค่าก็สามารถเป็นชื่อหรือเทียบเท่าจำนวนเต็ม แต่ค่าตอบแทนจะเป็นจำนวนเต็ม

auto_vacuum Pragma

auto_vacuum Pragma ได้รับหรือการตั้งค่าโหมดอัตโนมัติสูญญากาศไวยากรณ์เป็นดังนี้:

PRAGMA [ฐานข้อมูล.] Auto_vacuum;
PRAGMA [ฐานข้อมูล.] Auto_vacuum = โหมด

ประเด็นโหมดสามารถใด ๆ ต่อไปนี้:

Pragma 值描述
0 或 NONE禁用 Auto-vacuum。这是默认模式,意味着数据库文件尺寸大小不会缩小,除非手动使用 VACUUM 命令。
1 或 FULL启用 Auto-vacuum,是全自动的。在该模式下,允许数据库文件随着数据从数据库移除而缩小。
2 或 INCREMENTAL启用 Auto-vacuum,但是必须手动激活。在该模式下,引用数据被维持,免费页面只放在免费列表中。这些页面可在任何时候使用incremental_vacuum pragma进行覆盖。

cache_size Pragma

cache_size Pragma สามารถได้รับหรือการตั้งค่าขนาดสูงสุดของหน้าชั่วคราวในหน่วยความจำแคชไวยากรณ์เป็นดังนี้:

PRAGMA [ฐานข้อมูล.] Cache_size;
PRAGMA [. ฐานข้อมูล] = cache_size หน้า;

คุ้มค่าหมายถึงจำนวนของหน้าเว็บในแคชหน้าเริ่มต้นขนาดแคชหน้าสร้างขึ้นเป็น 2,000 หน้าขนาดต่ำสุดคือ 10

case_sensitive_like Pragma

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

PRAGMA case_sensitive_like = [| จริงเท็จ];

มีวิธีการตรวจสอบสถานะปัจจุบันของ Pragma ไม่เป็น

count_changes Pragma

count_changes Pragma ได้รับหรือการตั้งค่าตอบแทนของงบการจัดการข้อมูลเช่น INSERT, UPDATE และลบไวยากรณ์เป็นดังนี้:

count_changes PRAGMA;
PRAGMA count_changes = [| จริงเท็จ];

โดยค่าเริ่มต้น Pragma เป็นเท็จคำสั่งไม่กลับอะไร หากการตั้งค่าที่แท้จริงของคำสั่งที่กล่าวถึงจะกลับตารางแยกแต่ละเดียวประกอบด้วยค่าจำนวนเต็มเดียวซึ่งแสดงให้เห็นถึงการดำเนินงานแถวจำนวนเต็มได้รับผลกระทบ

database_list Pragma

database_list Pragma จะใช้ในการแสดงรายการทั้งหมดเชื่อมต่อฐานข้อมูลไวยากรณ์เป็นดังนี้:

PRAGMA database_list;

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

การเข้ารหัส Pragma

วิธีการควบคุมการเข้ารหัส Pragma สตริงเข้ารหัสและเก็บไว้ในไฟล์ฐานข้อมูลไวยากรณ์เป็นดังนี้:

การเข้ารหัส PRAGMA;
การเข้ารหัส PRAGMA = รูปแบบ;

ค่ารูปแบบสามารถเป็น UTF-8, UTF-16LE หนึ่งหรือ UTF-16BE

freelist_count Pragma

freelist_count Pragma ส่งกลับจำนวนเต็มที่แสดงถึงการทำเครื่องหมายหน้าฐานข้อมูลฟรีและใช้ได้ไวยากรณ์เป็นดังนี้:

PRAGMA [ฐานข้อมูล.] Freelist_count;

ค่ารูปแบบสามารถเป็น UTF-8, UTF-16LE หนึ่งหรือ UTF-16BE

index_info Pragma

index_info Pragma ส่งกลับข้อมูลเกี่ยวกับการจัดทำดัชนีฐานข้อมูลไวยากรณ์เป็นดังนี้:

PRAGMA [ฐานข้อมูล.] Index_info (index_name);

ผลที่ได้กำหนดไว้สำหรับแต่ละคอลัมน์มีลำดับในดัชนีที่กำหนดดัชนีคอลัมน์ภายในตารางคอลัมน์คอลัมน์ชื่อจะแสดงแถว

index_list Pragma

index_list Pragma รายการดัชนีทั้งหมดที่เกี่ยวข้องกับตารางไวยากรณ์เป็นดังนี้:

PRAGMA [ฐานข้อมูล.] Index_list (table_name);

ผลการตั้งค่าสำหรับคอลัมน์ดัชนีแต่ละคนจะได้รับการตั้งชื่อตามลำดับดัชนีดัชนีบ่งชี้หรือไม่เป็นเส้นจอแสดงผลที่ไม่ซ้ำกันระบุ

journal_mode Pragma

journal_mode Pragma ได้รับหรือการตั้งค่าล็อกไฟล์ที่เก็บไว้และวิธีจัดการกับโหมดการบันทึกไวยากรณ์เป็นดังนี้ ::

PRAGMA journal_mode;
PRAGMA journal_mode โหมด =;
PRAGMA database.journal_mode;
PRAGMA database.journal_mode โหมด =;

นี่คือบันทึกการสนับสนุนห้าโหมด:

Pragma 值描述
DELETE默认模式。在该模式下,在事务结束时,日志文件将被删除。
TRUNCATE日志文件被阶段为零字节长度。
PERSIST日志文件被留在原地,但头部被重写,表明日志不再有效。
MEMORY日志记录保留在内存中,而不是磁盘上。
OFF不保留任何日志记录。

max_page_count Pragma

max_page_count Pragma ฐานข้อมูลที่ได้รับหรือกำหนดจำนวนสูงสุดของหน้าได้รับอนุญาตไวยากรณ์เป็นดังนี้:

PRAGMA [ฐานข้อมูล.] Max_page_count;
PRAGMA [ฐานข้อมูล.] Max_page_count = MAX_PAGE;

ค่าเริ่มต้นคือ 1073741823 ซึ่งเป็นหน้ากิกะบิต, ที่อยู่, ถ้าขนาดหน้าเริ่มต้นของ 1 KB, ฐานข้อมูลแล้วเติบโตขึ้นมาในเมกะไบต์

PAGE_COUNT Pragma

PAGE_COUNT Pragma ส่งกลับจำนวนของหน้าเว็บในฐานข้อมูลปัจจุบันไวยากรณ์เป็นดังนี้:

PRAGMA [ฐานข้อมูล.] PAGE_COUNT;

ขนาดไฟล์ฐานข้อมูลควรจะ PAGE_COUNT * PAGE_SIZE

PAGE_SIZE Pragma

PAGE_SIZE Pragma Gets หรือกำหนดขนาดของหน้าฐานข้อมูลไวยากรณ์เป็นดังนี้:

PRAGMA [ฐานข้อมูล.] PAGE_SIZE;
PRAGMA [. ฐานข้อมูล] PAGE_SIZE ไบต์ =;

โดยค่าเริ่มต้นขนาดที่อนุญาต 512,1024,2048,4096,8192,16384,32768 ไบต์ วิธีเดียวที่จะเปลี่ยนขนาดหน้าฐานข้อมูลที่มีอยู่คือการกำหนดขนาดของหน้าแล้วทันทีสูญญากาศฐานข้อมูล

parser_trace Pragma

parser_trace Pragma ขณะที่มันช่วยแก้คำสั่ง SQL เพื่อควบคุมการพิมพ์รัฐแก้ปัญหาไวยากรณ์เป็นดังนี้:

PRAGMA parser_trace = [| จริงเท็จ];

โดยค่าเริ่มต้นจะถูกตั้งค่าเป็นเท็จ แต่กำหนดเป็นจริงการเปิดใช้งานแล้ว parser SQL สามารถแยกคำสั่ง SQL เป็นมันพิมพ์ออกสถานะ

recursive_triggers Pragma

recursive_triggers Pragma ได้รับหรือการตั้งค่าฟังก์ชั่นทริกเกอร์ recursiveหากทริกเกอร์ recursive ไม่ได้เปิดใช้งานการเรียกจะไม่เรียกทริกเกอร์อีก ไวยากรณ์เป็นดังนี้:

recursive_triggers PRAGMA;
PRAGMA recursive_triggers = [| จริงเท็จ];

schema_version Pragma

schema_version Pragma Gets หรือค่ารุ่นสคีมาจะถูกเก็บไว้ในส่วนหัวของฐานข้อมูลไวยากรณ์เป็นดังนี้:

PRAGMA [ฐานข้อมูล.] Schema_version;
PRAGMA schema_version = จำนวน [ฐานข้อมูล.];

นี่คือ 32 บิตค่าลงนามจำนวนเต็มใช้ในการติดตามการเปลี่ยนแปลงของสถาปัตยกรรม เมื่อใดก็ตามที่คำสั่งเปลี่ยนแปลงสคี (เช่นสร้าง ... หรือ DROP ... ) ค่านี้จะเพิ่มขึ้น

secure_delete Pragma

secure_delete Pragma ใช้ในการควบคุมวิธีการที่เนื้อหาจะถูกลบออกจากฐานข้อมูลไวยากรณ์เป็นดังนี้:

PRAGMA secure_delete;
PRAGMA secure_delete = [| จริงเท็จ];
PRAGMA database.secure_delete;
PRAGMA database.secure_delete = [| จริงเท็จ];

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

sql_trace Pragma

sql_trace Pragma สำหรับการถ่ายโอนข้อมูล SQL เพื่อติดตามผลบนหน้าจอไวยากรณ์เป็นดังนี้:

PRAGMA sql_trace;
PRAGMA sql_trace = [| จริงเท็จ];

SQLite จะต้องรวบรวมจากการเรียนการสอน SQLITE_DEBUG อ้างอิง Pragma

ซิงโคร Pragma

ซิงโคร Pragma ได้รับหรือการตั้งดิสก์ปัจจุบันโหมดการซิงโครการควบคุมโหมด SQLite บวกวิธีการที่ข้อมูลถูกเขียนไปยังที่จัดเก็บข้อมูลทางกายภาพไวยากรณ์เป็นดังนี้:

PRAGMA [ฐานข้อมูล.] Synchronous;
PRAGMA [ฐานข้อมูล.] Synchronous = โหมด

SQLite สนับสนุนโหมดการประสานต่อไปนี้:

Pragma 值描述
0 或 OFF不进行同步。
1 或 NORMAL在关键的磁盘操作的每个序列后同步。
2 或 FULL在每个关键的磁盘操作后同步。

temp_store Pragma

temp_store Pragma ได้รับหรือการตั้งค่าโหมดที่เก็บข้อมูลที่ใช้โดยไฟล์ฐานข้อมูลชั่วคราวไวยากรณ์เป็นดังนี้:

PRAGMA temp_store;
PRAGMA temp_store โหมด =;

SQLite สนับสนุนโหมดการจัดเก็บข้อมูลต่อไปนี้:

Pragma 值描述
0 或 DEFAULT默认使用编译时的模式。通常是 FILE。
1 或 FILE使用基于文件的存储。
2 或 MEMORY使用基于内存的存储。

temp_store_directory Pragma

temp_store_directory Pragma ได้รับหรือการตั้งค่าสถานที่สำหรับแฟ้มฐานข้อมูลชั่วคราวไวยากรณ์เป็นดังนี้:

PRAGMA temp_store_directory;
PRAGMA temp_store_directory = 'directory_path';

user_version Pragma

รุ่นuser_version Pragma ได้รับหรือการตั้งค่าที่เก็บไว้ในฐานข้อมูลผู้ใช้ส่วนหัวที่กำหนดเองไวยากรณ์เป็นดังนี้:

PRAGMA [ฐานข้อมูล.] User_version;
PRAGMA user_version = จำนวน [ฐานข้อมูล.];

นี้เป็นค่าจำนวนเต็ม 32 บิตลงนามที่สามารถตั้งค่าโดยนักพัฒนาซอฟต์แวร์เพื่อวัตถุประสงค์ในการติดตามรุ่น

writable_schema Pragma

มีwritable_schema Pragma ได้รับหรือการตั้งค่าความสามารถในการปรับเปลี่ยนตารางระบบไวยากรณ์เป็นดังนี้:

PRAGMA writable_schema;
PRAGMA writable_schema = [| จริงเท็จ];

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