آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

نحوه ثبت چند معنی برای یک واژه انگلیسی در دیتابیس دیکشنری

Hamed  10 سال پیش  10 سال پیش
0 0

با سلام

راستش بنده قصد دارم یک سایت دیکشنری راه اندازی کنم. همونطور که میدونید اکثر کلمات انگلیسی دارای چندین معنی هستن. میخاستم بدونم چطور میشه برای یک کلمه انگلیسی چندین معنی درج کرد که تمام این واژه ها در هنگام جستجو کردن به خوبی جستجو بشن؟

دقیقا مثل سایت فست دیکشنری که تمام واژه ها چه فارسی و چه انگلیسی به عنوان یک کلمه کلیدی عمل می کنن و به راحتی سرچ میشن و در جاهایی که این کلمات بکار رفتن سریعا نمایش داده میشه

اگه امکانش هست لطفا راهنماییم کنید.

با سپاس

0 0
اول از همه میتونید معنی ها رو در یک فیلد ذخیره کنید ولی بین هر معنی یک عبارت مشخص قرار بدین. مثلا علامت ستاره. بعد با دستور explode معانی رو جدا کرده و در یک آرایه ذخیره کنید. بعد میتونید از آرایه برای نمایش نتایج جستجو استفاده کنید. یا این که بیاین برای هر معنی یک فیلد جدا در نظر بگیرین و بعد برای هر فیلد یک کوئری بزنید و نتایج همه ی فیلد ها رو یک جا در یک آرایه ذخیره کنید. من همین دو راه به ذهنم رسید (10 سال پیش)
0 0
سلام از پاسخی که دادین ممنون و سپاسگذارم. راستش زیاد متوجه منظورتون نشدم. امکانش هست بیشتر توضیح بدین؟ نمیدونم برای رسیدن به جوابه سوالم از کی کمک بگیرم. لطفا بیشتر راهنماییم کنید با تشکر (10 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
محسن موحد  10 سال پیش
0 0

سلام.
میتونید یک جدول واسه کلمات بسازید. یک جدول برای معانی و جدول سوم جدول واسط هست که کلمات رو به معانی ارتباط میده.
یعنی جدول سوم دو فیلد primary key (واسه جلوگیری از تکرار ، تا یک کلمه دوبار یک معنی رو بخودش اختصاص نده) داره که فقط آیدی جدول کلمات و جدول معانی رو میگیره.

مثل این میمونه که فرضا به یک مطلب توی وبلاگ چندین تگ یا دسته بندی ، بدی.

0 0
سلام ممنونم از راهنماییتون. اکثر واژه های انگلیسی چندین معنی دارن، میشه در جدول primary key چندین فیلد واسه درج آیدی معانی برای آیدی واژه انگلیسی داد دیگه درسته؟ و اینکه دستور SQL به چه شکل خواهد بود؟ اگه در این باره هم توضیحاتی بدین ممنون میشم از محبتتون (10 سال پیش)
پاسخ به سوال 
محسن موحد  10 سال پیش
+1 0

بعنوان مثال چینش سه تا جدول:

:::vocabularies:::
  id  |  word

  1      Hi
  2      Example
  3      Hello

  ========================
:::definitions:::
  id  |  definition

  1      سلام
  2      نمونه
  3      مثال

  =========================
:::vocabularies_definitions:::
  vocID  |  defID

  1         1
  2         2
  2         3
  3         1

جدول واسط که جدول آخر هست ، چندین بار میشه یک معنی لغت رو به لغت های دیگه نسبت داد. در مورد primary key بودن دو فیلد vocID و defID ، از تکرار داده ی تکراری جلوگیری میکنه. یعنی وقتی یکبار داده ی vocID = 3  و defID = 1 اومده دیگه نمیذاره مجددا همین داده ها وارد بشه. یعنی vocID با مقدار 3 و defID با مقدار 1 چون قبلا وارد شده.

برای دسترسی هم باید بین جداول جوین بزنید تا به اطلاعات دسترسی پیدا کنید. بطور مثال:

SELECT 
  *
FROM 
  (vocabularies JOIN vocabularies_definitions ON vocabularies.id = vocabularies_definitions.vocID) 
      JOIN definistions ON vocabularies_definitions.defID = definitions.id
0 0
سلام ممنونم از راهنمایی خوبتون. ببخشید یه سوال؛ توضیحاتی که دادین مربوط به یک واژه انگلیسی و یک معنی متناظرش هست. درسته؟ اگه بخام معانی بیشتری به یک واژه انگلیسی تعریف کنم، باید چطور عمل کنم؟ ممنون میشم اگه این مورد رو هم توضیح بدین با تشکر (10 سال پیش)
+1 0
خیر. میتونی معانی بیشتری بدی که بعنوان مثال هم بالا اوردم، example با آیدی 2 اومده بنابراین vocid = 2 و خواستم دوتا معنی بهش نسبت بدم (معنی "نمونه" با آیدی 2 یعنی defid = 2 و معنی "مثال" با ایدی 3 یعنی defid = 3) کافیه جدول آخر که جدول واسط هست رو نگاه بندازی که دوتا vocid = 2 هست که اشاره میکنه ، کلمه example دوتا معنی داره (10 سال پیش)
0 0
از راهنمایی های خوب و مفیدتون بی نهایت ممنون و سپاسگذارم. راستش میخام بخش تلفظ و توضیحات رو هم برای لغات انگلیسی اضافه کنم که دو فیلد pronunciation و description به جدول vocabularies اضافه کردم. اطلاعاتم درمورد دستورات sql خیلی کمه و در رابطه با این موضوع به مشکل برمیخورم. اگه امکانش هست دستورات مربوط به این مورد رو هم راهنمایی بفرمایید یا یک منبعی معرفی کنید تا بتونم از طریق اون sql رو یاد بگیرم. با تشکر (10 سال پیش)
0 0
مبحث دیتابیس بسیار گسترده هست و باید از پایه مطالعه بشه. روابط تیبل ها در ساده ترین حالت سه نوع هست: یک به یک؛ یک به چند؛ چند به چند. شما باید درباره رابطه چند به چند تحقیق کنید. استاد در آموزش از هر سه رابطه استفاده کردند. (10 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .