ایجاد جداول و روابط در لیبره آفیس بیس
در آموزشهای قبلی، یاد گرفتید که چگونه یک پایگاه داده ساده با جداول ایجاد کنید و دادهها را با استفاده از graphical wizard در لیبره آفیس بیس وارد کنید. انجام این کار بسیار آسان است.
این راهنما گام دیگری به سوی دشواری پیش میرود. و با یک مثال سه جدول ایجاد میکنیم و بین آنها رابطه برقرار میکنیم.
مثال زیر آمادهسازی برای راهنماهای آتی است که به ایجاد فرمها و پرسشها ادامه میدهد.
نمونه ساختار جدول
برای این نسخه نمایشی، مطابق شکل زیر سه جدول ایجاد خواهم کرد. جدول بازیکن (player) حاوی نام و سایر مشخصات بازیکنان است.
جدول ورزشی (sport) شامل نام ورزش ها و رویدادها است.
و آخرین جدول برای ایجاد شناسه بازیکن با شناسه ورزشی است – برای نشان دادن اینکه کدام بازیکن قرار است کدام ورزش را انجام دهد.
- Table: player
- player_id (primary key), first_name, last_name, gender
- Table: sport
- sport_id (primary key), sport_name
- Table: rel_player_sport
- player_id, sport_id
ایجاد جداول
هر اسم دلخواهی که میخواهید برای آن قرار دهید. ما نام آن را example_sport_db.odb گذاشتیم.
در پنجره LibreOffice Base بر روی create table in design view کلیک کنید و طبق مشخصات بالا سه جدول ایجاد کنید.
برقراری روابط
پس از ایجاد سه جدول، روی Tools > Relationships از منوی اصلی Base کلیک کنید.
باید پنجره add table جداول موجود در پایگاه داده شما را فهرست کند. برای ایجاد رابطه، روی جداول دوبار کلیک کنید تا به بوم اضافه شوند.
پس از اضافه کردن جداول، بر روی دکمه new relation در نوار ابزار کلیک کنید.
در پنجره روابط، دو جدولی را که میخواهید در آن رابطه برقرار کنید، انتخاب کنید. و زمینههای مربوطه را انتخاب کنید. در حالت ایدهآل، باید ستونهای جداول را که فیلدهای کلیدی مرتبط هستند، مطابق با طراحی پایگاه داده خود انتخاب کنید.
در این مرحله باید به دقت در نظر بگیرید که چه رابطه ای میخواهید برقرار کنید. بله، میتوانید بعداً آن را نیز تغییر دهید.
فرآیند new relation را برای هر رابطهای که میخواهید ایجاد کنید، تکرار کنید. در این مثال دو رابطه ایجاد شده است که در زیر نشان داده شده است.
روی نام جدول در پنجره اصلی دوبار کلیک کنید تا شبکه ورودی داده باز شود. میتوانید از اینجا شروع به تایپ دادههای خود کنید. میتوانید برای پیمایش بین سلولها، TAB را فشار دهید و پس از اتمام، روی ذخیره کلیک کنید.
مشاهده و تغییر روابط در لیبره آفیس بیس
در هر زمان، اگر بخواهید تغییر دهید، میتوانید دستگیره رابطه را انتخاب کرده و برای ویرایش کلیک راست کنید. هنگام انتخاب دسته برجسته میشود. و سپس گزینهها را از منوی زمینه انتخاب کنید.
رسیدگی به خطاها و راهنمای استفاده
در اینجا برخی از خطاها و نکاتی وجود دارد که باید هنگام ایجاد روابط به خاطر بسپارید.
- هنگامی که یک رابطه حاوی آن ستون را تعریف کنید، ویژگی ستون درگیر در رابطه را نمیتوان تغییر داد. اگر این کار را انجام دهید، این خطا را دریافت خواهید کرد. در اینجا، من سعی میکنم نوع ستون را در طول بخشی از یک رابطه تغییر دهم.
- اگر این اتفاق افتاد، تمام رابطهای که حاوی آن ستون است را حذف کنید. نوع ستون را تغییر دهید و در نهایت، رابطه را دوباره ایجاد کنید.
- به طور مشابه، زمانی که نوع عدم تطابق وجود دارد، نمیتوانید بین دو ستون رابطه ایجاد کنید. به عنوان مثال، در اینجا در مثال زیر، سعی می کنم بین دو ستون (sport_id) که انواع آنها در دو جدول (متن و عددی) متفاوت است، رابطه ایجاد کنم.
SQL Status: S0021
Error code: -57 Column types do not match in statement [ALTER TABLE "rel_player_sport" ADD FOREIGN KEY ("sport_id") REFERENCES "sport" ("sport_id") ON UPDATE CASCADE ON DELETE CASCADE ] at /builddir/build/BUILD/libreoffice-7.4.3.2/connectivity/source/drivers/jdbc/Object.cxx:173
- اگر این اتفاق افتاد، میتوانید نوع ستون را تغییر دهید و دوباره رابطه را ایجاد کنید.
درباره فاطمه محمدی
بعنوان یک محقق و مترجم، لابلای تحقیقات، جستجوها و ترجمههام به مفهوم «فرهنگ اوپن سورس» برخوردم. فرهنگی که برادری و برابری رو در قالب «آزادی» جلوه میده. همین فرهنگ، در راه تهیه آموزشهای نرمافزارهای آزاد و متنباز، ثابت قدمم کرد.
نوشتههای بیشتر از فاطمه محمدیاین سایت از اکیسمت برای کاهش جفنگ استفاده میکند. درباره چگونگی پردازش دادههای دیدگاه خود بیشتر بدانید.






دیدگاهتان را بنویسید