sqlite_open
(PHP 5, PECL sqlite:1.0-1.0.3)
sqlite_open — הפונקציה פותחת בסיס נתונים ב SQLite. במקרה ואין בסיס נתונים בעל שם זהה, הפונקציה תיצור בסיס נתונים חדש.
תיאור
הפונקציה מחזירה משאב במקרה של הצלחה ו FALSE אחרת
הפרמטרfilename , מייצג את שם בסיס הנתונים. הוא יכול להיות נתיב מוחלט או יחסי, למיקום הקובץ שמשמש כבסיס נתונים. אם הקובץ לא קיים SQLite תיצור קובץ בשם הזה. על מנת להכניס נתונים,או לשנות את הסכימה של בסיס הנתונים ,חייב להיות לך אישור כתיבה לקובץ
הפרמטר mode ,משמש לתאר את המצב שבו יפתח הקובץ, כשהמטרה היא לאפשר פתיחת קובץ לקריאה בלבד. כרגע SQLITE מתעלמת מהפרמטר הזה. ערך ברירת המחדל של הפרמטר mode , הוא 0666 בבסיס 8(אוקטאלי). זה הערך המומלץ אם אתה צריך אפשרות גישה לפרמטר errmessage .
הפרמטר errmessage מועבר ע"י מצביע, ומחזיק בתוכו תיאור של השגיאה שמנעה את פתיחת בסיס הנתונים.
Example#1 sqlite_open() example
<?php
if ($db = sqlite_open('mysqlitedb', 0666, $sqliteerror)) {
sqlite_query($db,'CREATE TABLE foo (bar varchar(10))');
sqlite_query($db,"INSERT INTO foo VALUES ('fnord')");
$result = sqlite_query($db,'select bar from foo');
var_dump(sqlite_fetch_array($result));
} else {
die ($sqliteerror);
}
?>
במערכת SQLITE, Unix רגישה לסקריפטים שמשתמשים בקריאה ל fork(); אם אתה משתמש בסקריפט כזה מומלץ לסגור את הקשר לבסיס הנתונים לפני השימוש ב fork(); ולפתוח אותו מחדש בתהליך האב ו/או הבן), למידע נוסף בנושא, ראה: » The C language interface to the SQLite library in the section entitled Multi-Threading And SQLite.
לא ממולץ להתקין SQLITE על מערכות שעובדות בשיטת NFS, בגלל בעיות בנעילת קבצים במערכת כזאת, בסיס הנתונים עלול להיות לא ניתן לקריאה , או להתנהג בצורה מעורפלת.
Note: החל מגירסה 2.8.2 של SQLITE, ניתן לאפיין :memory: בתור ה filename , על מנת ליצור בסיס נתונים שמתקיים רק בזיכרון המחשב. בסיס נתונים כזה יעיל בעיקר בתהליכונים זמניים, כשבסיס הנתונים יושמד עם סיום התהליך. או במקרה של שימוש ב פקודת SQL ATTACH DATABASE בשביל לעבוד עם שני בסיסי נתונים בו זמנית, ולהעביר מידע ביניהם
Note: SQLite היא safe mode ומותאמת ל open_basedir aware.
ראה גם sqlite_popen(), sqlite_close() ו sqlite_query().