با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن ، و کاربرانی که دوره آموزش SQLite را دنبال می کنند. گاهی ممکن است که شما چندین دیتابیس خارجی داشته باشید که بخواهید با هر یک از آن ها جداگانه در سیستم مدیریت دیتابیس SQLite کار کنید، برای این گونه موارد باید دیتابیس مورد نظر خود را به محیط SQLite اضافه (ATTACH) کنید. که این عملیات با استفاده از دستور ATTACH DATABASE در SQLite انجام می شود. در ادامه ی این مباحث با چگونگی کار با دستور ATTACH DATABASE در SQLite با ما همراه باشید.
در این آموزش با سینتکس و نمونه کد دستور ATTACH DATABASE در SQLite آشنا خواهید شد.
این یک ساختار اصلی از دستور ATTACH DATABASE در SQLite می باشد :
1 | ATTACH DATABASE 'DatabaseName' As 'Alias-Name'; |
دستور بالا همچنین یک دیتابیس را در صورت ایجاد پایگاه داده ایجاد می کند، در غیر این صورت تنها نام پایگاه داده را با پایگاه داده منطقی Alias-Name اضافه می کند.
مثال
اگر شما می خواهید که یک دیتابیس خارجی را تحت عنوان testDB.db را attach کنید، از سینتکس زیر استفاده کنید :
1 | sqlite> ATTACH DATABASE 'testDB.db' as 'TEST'; |
از دستور .database برای نمایش دیتابیس attach شده استفاده کنید :
1 2 3 4 5 | sqlite> .database seq name file --- --------------- ---------------------- 0 main /home/sqlite/testDB.db 2 test /home/sqlite/testDB.db |
نام دیتابیس main و temp برای پایگاه داده اصلی و پایگاه داده برای نگهداری جداول موقت و دیگر اشیاء داده موقت محفوظ است.
این نام های پایگاه داده برای هر اتصال به پایگاه داده وجود دارد و نباید برای ضمیمه استفاده شوند.
در غیر این صورت شما پیام هشدار زیر را دریافت خواهید کرد:
1 2 3 4 | sqlite> ATTACH DATABASE 'testDB.db' as 'TEMP'; Error: database TEMP is already in use sqlite> ATTACH DATABASE 'testDB.db' as 'main'; Error: database TEMP is already in use |
محیط SQLite به شما اجازه می دهد تا دیتابیس های خارجی که تحت SQL ایجاد شده اند را به محیط SQLite متصل کرده و روی آن ها کار کنید. برای این منظور دستور ATTACH DATABASE در SQLite ارائه شده است.