ايران ويج

نسخه‌ی کامل: SQLite در دیگر زبان ها
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
سلام.
در اینجا هم قراره روش استفاده از SQLite در زبان های مختلف رو بگم.
بعضی زبان ها SQLite رو جزو کتابخونه شون دارن مثل php ، .net@mono و برای زبونهای زیاد دیگه ای هم رابط هایی توسط ملت ساخته شده.
رابط رسمی خود SQLite فقط همون توابع API هستن.
البته حساب C/C++ جداست ها.
خب. فعلا.
PHP

اول بریم سر PHP .
خب توی PHP دو بخش برای کار با SQLite داریم. یکی SQLite و یکی SQLite3 .
قسمت SQLite تشکیل شده از یه سری توابع که اکثرا مثل توابعی هستن که برای همه دیتابیس ها PHP داره. مثل sqlite_open و sqlite_query و sqlite_fetch_array و ... . البته بعضی توابع SQLite رو هم مثل sqlite_create_function رو هم داره.
این بخش مثل این که از PHP5 به اینور وجود داره و تا اونجایی که من فهمیدم ورژن 2 و 1 SQLite رو پشتیبانی میکنه. و ورژن 3 رو هم نمیشناسه. با یه PHP5 میتونید با اکثر این توابع کار کنید. ( یکی دو تاشون 5.1 میخوان ).

یه لیست از چند تا از توابع مهمش :
sqlite_array_query —
اجرای یه query و برگردوندن نتیجه.
sqlite_changes —
نمایش تعداد سطر های متاثر شده از اجرای دستور قبلی.
sqlite_close —
بستن دیتابیس.
sqlite_column —
برگردوندن یه ستون از سطر جاری یه نتیجه.
sqlite_current —
دادن سطر جاری یه نتیجه بصورت یه آرایه.
sqlite_fetch_all —
برگردوندن کل سطر ها بصورت آرایه ای از آرایه ها.
sqlite_fetch_array —
برگگردوندن سطر بهدی نتیجه بصورت آرایه
sqlite_fetch_object —
برگگردوندن سطر بهدی نتیجه بصورت شیئ
sqlite_num_fields —
دادن تعداد فیلد های یک نتیجه
sqlite_num_rows —
دادن تعداد سطر یک نتیجه
sqlite_open —
باز کردن یه دیتابیس. اگه وجود نداشته باشه میسازه. با دادن :memory: به جان نام دیتابیس میتونید یه دیتابیس توی حافظه بسازید.
sqlite_query —
اجرای یه query

و یه مثال :
کد php:
<?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);
}
?>
که من اینو تست کردم و دیتابیسی که ساخت ورژن 2 بود.

توی قسمت SQLite3 سه تا شیئ داریم. این قسمت به PHP 5.3 نیاز داره ( wamp من ورژنش 5.2.5 هسته. بدشانسی رو میبینید؟ یه 0.0.5 همش کم دارهAngry . بنابر این فعلا نمیتونم تست کنم) سه تا شیئ میشه :
--SQLite3
کار های معمول با دیتابیس مثل باز و بسته کردن و اجرای دستور ها. ساختن دستور (SQLite3Stmt) خطا یابی و ... . تابع query که برای اجرای دستوره نتیجه رو در قالب SQLite3Result برمیگردونه و با تابع prepare هم یه دستور رو به SQLite3Stmt ، برای انجام عملیات بیشتر ، تبدیل میکنیم.
SQLite3Stmt--
توابعی برای کار روی دستورات مثل افزودن پارامتر و اجرا کردن و ... .
SQLite3Result--
توابعی برای کار روی نتایج. مثل دادن نتایج به صورت آرایه.

و یه مثال
کد php:
<?php
$db 
= new SQLite3('mysqlitedb.db');

$db->exec('CREATE TABLE foo (bar STRING)');
$db->exec("INSERT INTO foo (bar) VALUES ('This is a test')");

$result $db->query('SELECT bar FROM foo');
var_dump($result->fetchArray());
?>


در ضمن توی wamp جدید هم SQLiteManager اضافه شده (الان تو تایپیک برنامه های مدیریت معرفیش میکنم Biggrin (.
MyBB هم از هر دو ورژن 2 و 3 پشتیبانی میکنه Biggrin

تا بعد.