ڈیٹا بیس سیاسی رہنماؤں کے بیانات (Database Schema)

محمداحمد نے 'پروگرامنگ' کی ذیل میں اس موضوع کا آغاز کیا، ‏مئی 22, 2014

  1. محمداحمد

    محمداحمد لائبریرین

    مراسلے:
    22,243
    جھنڈا:
    Pakistan
    موڈ:
    Amazed
    یہ بھی ٹھیک کہا آپ نے۔

    کوشش یہ ہونی چاہیے کہ ڈیٹا بیس بہت زیادہ پیچیدہ نہ ہونے کے باوجود بودی نہ ہو۔ اور زیادہ سے زیادہ مقاصد کے لئے کارآمد ہو۔
     
  2. محمداحمد

    محمداحمد لائبریرین

    مراسلے:
    22,243
    جھنڈا:
    Pakistan
    موڈ:
    Amazed
    اب تک کی گفتگو سے سمجھ آتا ہے کہ ہمیں مندرجہ ذیل ٹیبلز کی ضرورت ہوگی۔

    1. جماعتیں
    2. شخصیات
    3. بیانات
    4. موضوعات
    5. ذیلی عنوانات(ٹیگز)
    ٹھیک؟
     
  3. محمداحمد

    محمداحمد لائبریرین

    مراسلے:
    22,243
    جھنڈا:
    Pakistan
    موڈ:
    Amazed
    اسٹیٹمینٹ ٹیبل کی نئی شکل:

    [table="head "]
    S. NO. | Field Name | DATA TYPE | Explanation
    1 | id | INTEGER | بیان کا شناختی نمبر
    2 | StmtText | TEXT | بیان کی عبارت
    3 | StmtBy | VARCHAR | کس نے بیان دیا
    4 | StmtDate | TIMESTAMP | کب بیان دیا گیا
    5 | StmtSubject | VARCHAR | کس متعلق بیان دیا گیا
    6 | StmtVenue | VARCHAR | کس مقام سے بیان جاری کیا گیا
    7 | StmtEvent | VARCHAR | کس موقعے پر بیان جاری کیا گیا
    8 | StmtAboutPerson | VARCHAR | کس کے بارے میں بیان جاری کیا گیا
    9 | StmtForAgainstSubject | VARCHAR | بیان موضوع کے حق میں تھا یا خلاف
    10 | StmtForAgainstPerson | VARCHAR | بیان شخصیت کے حق میں تھا یا خلاف
    11 | TagsIds | VARCHAR | ذیلی عنوانات
    12 | StmtValidity | VARCHAR | بیان کی حیثیت قائم ہے یا بیان واپس لے لیا گیا
    [/table]
    سیریل نمبر اس لئے دیا ہے کہ محفل کا ٹیبل از خود سورٹنگ کا کام کردیتا ہے اور ترتیب حروف تہجی کے لحاظ سے ہو جاتی ہے۔

    اس پر ماہرین کی رائے ہو جائے۔ :)

    کیا کمی بیشی ہونی چاہیے۔
     
    آخری تدوین: ‏مئی 23, 2014
  4. محمدصابر

    محمدصابر محفلین

    مراسلے:
    7,139
    جھنڈا:
    Pakistan
    موڈ:
    Brooding
    میں بھی یہی کہہ رہا ہوں کہ مارکیٹ میں بھی جاؤ تو گاہک کو سافٹویئر میں جو سہولیات چاہیے ہوتی ہیں وہ اس کا صرف ایک دو فیصد ہی بتا رہے ہوتے ہیں۔ جب سافٹویئر دے دو تو پھر انہیں یاد آتا ہے اچھا یہ بھی ہونا چاہیے تھا وہ بھی ہونا چاہیے تھا۔ احمد بھائی پہلے مراسلے میں صرف بیانات کا ریکارڈ رکھ رہے تھے۔ آپ کے کہنے پر پارٹی اور شخصیات کا بھی رکھیں گے۔
     
    • متفق متفق × 1
  5. محمداحمد

    محمداحمد لائبریرین

    مراسلے:
    22,243
    جھنڈا:
    Pakistan
    موڈ:
    Amazed
    پہلے مراسلے میں صرف تصور پیش کیا گیا ہے اور سفارشات مانگی گئی ہیں۔

    چونکہ یہ کام صرف سیکھنے کی غرض سے ہے سو اس میں مناسب حد تک کارآمد ڈیٹا بیس بنانے کی کوشش کریں گے۔ سو آپ یوں سمجھیے کہ یہ کام کسٹمر کے لئے نہیں بلکہ اپنے لئے کر رہے ہیں ۔ :) یہاں پیش کرنے کا مقصد بھی یہی ہے کہ جو بات میرے ذہن میں نہیں وہ دیگر دوست بتا دیں۔ :)
     
    • متفق متفق × 1
  6. محمدصابر

    محمدصابر محفلین

    مراسلے:
    7,139
    جھنڈا:
    Pakistan
    موڈ:
    Brooding
    ٹھیک ہے تو پھر آپ کم از کم دس بیانات اپنی تمام تر تفصیل کے ساتھ گوگل ڈاکس پر شیئر کریں۔ یہ آپ کا ہوم ورک ہے۔ :)
     
    • پسندیدہ پسندیدہ × 2
  7. محب علوی

    محب علوی لائبریرین

    مراسلے:
    11,300
    جھنڈا:
    Pakistan
    موڈ:
    Bookworm
    فکر نہ کرو بھئی ساتھ ساتھ ہی ہیں اور کہیں بیچ منجھدار چھوڑ جانے کا ارادہ نہیں۔

    یہ کام مجھے بھی مزے کا لگ رہا ہے اور اسے جاری رکھنا ہے اصل ڈیٹا کے ساتھ ، اس کا لطف آئے گا۔ :)
     
    • پسندیدہ پسندیدہ × 1
  8. محب علوی

    محب علوی لائبریرین

    مراسلے:
    11,300
    جھنڈا:
    Pakistan
    موڈ:
    Bookworm
    ٹیگز جب ایک سے زیادہ بڑھیں گے تو وہ خودبخود نارملائزیشن کی خلاف ورزی پیدا کرے گا اور اس کے لیے لازمی طور پر یا تو ٹیبل کو تقسیم کرنا ہوگا یا "مک مکا" کرنا ہوگا جسے ڈی نارملائزیشن تکنیکی زبان میں کہتے ہیں۔

    محمداحمد ، بھئی ساتھ ساتھ ٹیبل میں تبدیلیاں تو کرتے جاؤ تاکہ اس پر بحث اور تجاویز آگے بڑھیں۔
     
    • پسندیدہ پسندیدہ × 3
  9. محمداحمد

    محمداحمد لائبریرین

    مراسلے:
    22,243
    جھنڈا:
    Pakistan
    موڈ:
    Amazed
    یہ ہوئی نا بات۔ :)
     
  10. محمداحمد

    محمداحمد لائبریرین

    مراسلے:
    22,243
    جھنڈا:
    Pakistan
    موڈ:
    Amazed
    ہوم ورک کے لئے کچھ وقت دے دیجے۔ :)

    ویسے اس کے لئے بھی ایک جانچ کا معیار ہونا چاہیے کہ سیاستدانوں کی تقاریر سے بیانات کیسے (کس پالیسی کے تحت) اخذ کئے جائیں۔ :) بہرکیف یہ کام تو وہ لوگ کریں گے جو اس ڈیٹا بیس کے صارف ہوں گے۔ :)

    تجربات کے لئے ہم کچھ اصل اور کچھ ڈمی بیانات نکال کر آزمائشی ڈیٹا تیار کرنے کی کوشش کریں گے۔ بی این این سے بھی سیاسی رہمناؤں کے بیانات اخذ کئے جا سکتے ہیں۔ :p
     
    • پسندیدہ پسندیدہ × 1
  11. محمداحمد

    محمداحمد لائبریرین

    مراسلے:
    22,243
    جھنڈا:
    Pakistan
    موڈ:
    Amazed
    سب سے پہلے تو دعویٰء دست برداری (Disclaimer) کہ ڈیٹا بیس سے متعلق میری معلومات واجبی بھی نہیں ہیں۔ تاہم میں نے اپنے طور پر ٹیبل بنانے کی کوشش کی ہے۔

    آپ لوگ اسے دیکھیں اور بتائیں کہ کہاں کہاں غلطی ہے اور کہاں کہاں بہتری کی گنجائش ہے۔ اور مزید یہ کیا کیا جائے۔



    ایکسل فائل یہاں سے حاصل کی جا سکتی ہے۔
     
    • پسندیدہ پسندیدہ × 1
  12. محمدصابر

    محمدصابر محفلین

    مراسلے:
    7,139
    جھنڈا:
    Pakistan
    موڈ:
    Brooding
    ابھی تو مجھے ٹھیک لگ رہا ہے۔ بعد میں فرصت سے دیکھتا ہوں۔ memberSince بھی ایک فیلڈ ہو سکتی ہے۔
     
  13. محب علوی

    محب علوی لائبریرین

    مراسلے:
    11,300
    جھنڈا:
    Pakistan
    موڈ:
    Bookworm
    میرے خیال میں احمد، شروع ایک ٹیبل سے کرو اور اس میں ڈیٹا بھی ہو ۔

    اصل چیز ڈیٹا ہے وہ خود بتائے گا کہ اسے اس ٹیبل میں ہونا چاہیے یا نہیں یا اس کے حساب سے فیلڈ کا نام صحیح ہے کہ نہیں۔

    ٹیبل کی ڈیٹا ٹائپ تو ہر ڈیٹابیس کے حساب سے بدل سکتی ہیں اس لیے ان پر توجہ کی فی الحال ضرورت نہیں۔

    ایک ٹیبل اور اس میں کم از کم دس ریکارڈ ہوں تو پھر اس پر گفتگو آگے بڑھے گی۔

    یہ سوال بھی پیدا ہو گا کہ ایک ہی ٹیبل کافی کیوں نہیں ؟ جس کے جواب میں ڈیٹابیس ڈیزائن اور نارملائزیشن (Normalization) کے اصول بھی زیر بحث آئیں گے۔

    سیاسی بیانات کے لیے شہباز شریف کے لوڈ شیڈنگ ختم کرنے کے بیانات۔
    راجہ رینٹل کے لوڈ شیڈنگ ختم کرنے کے بیانات ۔
    مسلم لیگ ن کے سعد رفیق اور چوہدری نثار کے انتخابی حلقہ جات کی تصدیق کے متعدد بیانات۔
     
    • متفق متفق × 2
    • پسندیدہ پسندیدہ × 1
  14. محمداحمد

    محمداحمد لائبریرین

    مراسلے:
    22,243
    جھنڈا:
    Pakistan
    موڈ:
    Amazed
    بہت مشکل سے 10 بیانات اکھٹے کیے ہیں۔ سب کے سب ڈان نیوز سے اخذ کئے ہیں۔

    یہاں دیکھ سکتے ہیں آپ لوگ۔
     
  15. محمدصابر

    محمدصابر محفلین

    مراسلے:
    7,139
    جھنڈا:
    Pakistan
    موڈ:
    Brooding
    ہاہاہا۔ ڈیٹابیس کا سب سے اہم کام ہی ڈیٹا اینٹری ہوتا ہے۔ جو ٹھیک نہ ہو تو پھر وہ ڈیٹا بیس آپ کے لئے فضول ہے۔
    سیمپل ٹیبل میں تین کالم ایسے ہیں جن کے لئے ایک ہی بیرونی ٹیبل بن سکتا ہے۔
    1۔ StmtBy
    2۔ StmtAboutPerson
    3۔ StmtForAgainstPerson
    ویسے تیسرے کالم کا مقصد سمجھ نہیں آیا۔
    StmtEvent کے لئے بھی ایک ٹیبل بن سکتا ہے جس میں اس ایونٹ کی تفصیل رکھی جا سکتی ہے۔
    اب آپ ان ٹیبلز کو بنانے اور نہ بنانے کا فیصلہ کریں گے تو مزید ٹیبلز کی گنجائش بھی نکلے گی۔
     
    • پسندیدہ پسندیدہ × 2
  16. محمداحمد

    محمداحمد لائبریرین

    مراسلے:
    22,243
    جھنڈا:
    Pakistan
    موڈ:
    Amazed
    یہ تینوں اینٹریز PersonalityTable سے وابستہ ہوں گی۔

    تیسرا کالم اس بات کا تعین کرے گا کہ بیان کسی (دوسری شخصیت) کے حق میں یا خلاف دیا گیا ہے۔ یہ آپشنل فیلڈ ہوگی۔
    یعنی StmtAboutPerson میں شخصیت کا نام آ جائے گا اور تیسرے کالم میں for یا against آ جائے گا جس سے اندازہ ہوگا کہ بیان مذکورہ شخصیت کے حق میں تھا یا خلاف۔

    StmtEvent کے لئے الگ سے ٹیبل بنانے کی ضرورت نہیں ورنہ بہت بکھیڑا پھیل جائے گا۔ یہ صرف بیان کی حد تک ہوگا۔
     
    • پسندیدہ پسندیدہ × 1
  17. محمدصابر

    محمدصابر محفلین

    مراسلے:
    7,139
    جھنڈا:
    Pakistan
    موڈ:
    Brooding
    پرسنیلٹی ٹیبل کا سیمپل ڈیٹا بھی شیئر کریں۔
     
  18. ابن سعید

    ابن سعید خادم

    مراسلے:
    60,163
    دلچسپ موضوع ہے اور اب تک کی گفتگو بھی خوب رہی ہے۔ :) :) :)

    بعض احباب کا طریقہ کار یہ ہوتا ہے کہ وہ پہلے زیادہ سے زیادہ ایٹریبیوٹ چند ٹیبلز میں سیریلائز کرتے ہیں اور بعد میں جناتی قسم کے اصولوں کے تحت تین یا چار درجات کی نارملائزیشن کرتے ہیں۔ ہمارا اپنا طریقہ کار یہ ہے کہ آبجیکٹ ریلیشنل میپنگ کو ذہن میں رکھا جائے تو ڈیٹا اور ان کے ایٹریبیوٹ کے تعلقات شروع سے ہی کافی واضح ہوتے ہیں اور نارملائزیشن عموماً از خود ہو جاتی ہے۔ چونکہ ہم ریلیشنل ڈیٹا بیس اسکیما ڈیزائن کر رہے ہیں تو اس میں پائے جانے والے ٹیبلز دو طرح کے ہو سکتے ہیں: اول تو وہ جو کسی اینٹٹی یا آبجیکٹ کو محفوظ کرنے کے لیے استعمال ہوں گے اور دوم وہ جو ایک یا زائد اقسام کی اینٹٹیز کے ما بین تعلقات قائم کرنے کے لیے بنائے جائیں گے، خاص کر مینی ٹو مینی ریلیشنز۔ کچھ تعلقات اینٹٹی ٹیبلز کے اندر رہ کر ہی قائم کیے جا سکتے ہیں۔ :) :) :)

    ایپلیکیشن کی ضروریات اور ڈیٹا کی نوعیت کو ذہن میں رکھتے ہوئے یہ فیصلہ لیا جاتا ہے کہ اینٹٹیز کو کس حد تک موڈیولرائز کیا جانا چاہیے۔ کئی دفعہ غیر ضروری نارملائزیشن سے احتراز برتنا چاہیے۔ مثال کے طور پر قرآنی آیات کا ذخیرہ کرنا ہو تو ایک اچھا ریلیشنل اسکیما ڈیزائنر ایک عدد ٹیبل سورتوں کا بنائے گا اور دوسرا ٹیبل آیات کا۔ آیات کے ٹیبل میں فارین کی ہوگی جو یہ بتائے گی کہ کوئی آیت کون سی سورت سے متعلق ہے۔ لیکن ایک اچھا ڈیٹا ایڈمنسٹریٹر جب یہ جان سکے گا کہ آیات اور سورتوں کی تعداد، ان کا متن اور ان کا تعلق اس قدر راسخ ہے و محدود ہے کہ ان میں کبھی بھی کوئی تبدیلی نہیں آنے والی تو وہ اس نارملائزیشن کا مشورہ کبھی نہیں دے گا کیونکہ سورتوں کو علیحدہ ٹیبل میں محفوظ کرنے سے کوئی بھی قابل ذکر فائدہ نہیں ہو رہا بلکہ اوور ہیڈ بڑھ رہا ہے۔ البتہ ایسا ہو کہ سورتوں کے نمبر شمار کے ساتھ ساتھ ان کے نام عربی اور رومن دونوں میں لکھنے ہوں تو نارملائزیشن کرنا بہتر ہوگا، گو کہ اس صورت میں بھی ایک ہی ٹیبل میں رہتے ہوئے چند اضافی کالم شامل کرنے میں کوئی حرج نہیں۔ لیکن ایپلیکیشن کی ڈیمانڈ یہ ہو کہ وقت کے ساتھ ساتھ ایپلیکیشن قرآن کے تراجم مختلف زبانوں میں شامل کرے گا اور ہر سورت کے نام کو مختلف زبانوں میں لکھنا پڑ سکتا ہے، پھر نارملائزیشن لازمی ہو جائے گا۔ :) :) :)

    مندرجہ بالا پیراگراف کو جملہ جات معترضہ کی ذیل میں شمار کیا جائے کہ پیراگراف معترضہ کی اصطلاح ابھی زیر غور ہے۔ اب بات کرتے ہیں اس اسکیما کی کہ جس کا "بیان" اس لڑی کا حاصل ہے۔ :) :) :)

    سب سے پہلے اس سارے قصے کو ایبسٹریکٹ لیول پر دیکھنے کی ضرورت ہے۔ ذیلی تفصیلات اور ایٹریبیوٹس کو کسی بھی وقت شامل کیا جا سکتا ہے لہٰذا اس پر ابتدا میں بہت زیادہ توانائی صرف نہیں کرنی چاہیے۔ ہاں جن ایٹریبیوٹس کے باعث بین الاینٹٹی تعلقات قائم ہو رہے ہیں ان کا ذکر اہم ہوتا ہے۔ مثال کے طور پر جب ہم شخصیت کی بات کرتے ہیں تو اس کے ایٹریبیوٹ مثلاً نام، جلد کی رنگت، پسندیدہ رنگ، ٹوپی کا برانڈ، عینک لگاتے ہیں یا نہیں، داڑھی ہے یا نہیں، اگر ہے تو اس کی رنگت، اور خضاب کا استعمال جیسی تفصیلات لا یعنی ہوتی ہیں، کیوں کہ ان کی تعداد وقت اور ضرورت کے حساب سے بدلتی رہے گی، لیکن وہ اینٹٹی بہر صورت ایک شخصیت ہو گی، لہٰذا اس نہج پر اضافی ایٹریبیوٹ کا بیان ترک کر کے تعلقات کی طرف بڑھنا چاہیے اور شخصیت کو محض شخصیت کہنا چاہیے۔ :) :) :)

    چونکہ یہ سارا قصہ بیان بازی سے شروع ہوا اس لیے سب سے پہلے تو بیانات کا ٹیبل ہونا چاہیے۔ اس ٹیبل میں صرف وہی ایٹریبیوٹ ہوں گے جن کا لائف ٹائم بیان کے ساتھ ہی شروع ہوتا ہے اور اسی کے ساتھ ختم ہو جاتا ہے، یعنی بغیر بیان کے اس ایٹریبیوٹ کا کوئی وجود ہی نہیں، مثلاً بیان کا عنوان۔ ذہن میں یہ بات رکھی جائے کہ بیان اپنے آپ میں ایک اینٹٹی ہے، اس بات سے مطلق کہ اس کے ایٹریبیوٹ اور خواص کیا کیا ہیں۔ لہٰذا آگے بڑھتے ہیں اور یہ سوچتے ہیں کہ بیان ہے تو یقیناً کسی فرد یا شخصیت نے دیا ہوگا۔ افراد کا کہا ہوا بیان اس نہج پر کوئی معنی نہیں رکھتا لہٰذا یہاں شخصیات کے بیانات پر بات ہوگی۔ یہ بالکل ممکن ہے کہ بیان کے ہی ٹیبل میں ایک ایٹریبیوٹ کے طور پر بیان دینے والے کا نام لکھ دیا جائے۔ لیکن ایپلیکیشن کا تقاضہ ہے کہ کئی مختلف شخصیات کا نام ایک ہو سکتا ہے، نیز کہ شخصیات کے ساتھ ان کے اپنے بے شمار ایٹریبیوٹ محفوظ کرنے ہیں لہٰذا از خود محسوس ہو جانا چاہیے کہ شخصیات کا علیحدہ ٹیبل ہو اور بیانات کے ٹیبل میں ایک کالم ہو جس میں شخصیات کے ٹیبل سے متعلقہ اندراج کی آئی ڈی لکھ کر دونوں اینٹٹیز کو "ریلیٹ" کیا جا سکے۔ واضح رہے کہ یہاں بیانات والے ٹیبل کی جانب سے دیکھنے پر "مینی ٹو ون" ریلیشنشپ پائی جا رہی ہے، یعنی کئی سارے بیانات کسی ایک ہی شخصیت کے ہو سکتے ہیں۔ اب نئے ٹیبل یعنی شخصیات کا جنم ہو چکا ہے، لہٰذا پہلے کی طرح اس بار بھی ہم ذیلی ایٹریبیوٹس (مثلاً نام اور تاریخ پیدائش وغیرہ جن کی تعداد لا محدود ہو سکتی ہے) میں الجھنے کے بجائے اسے ایک اینٹٹی اور ایبسٹریکٹ کانسیپٹ کے طور پر لے کر آگے بڑھیں گے اور دیکھیں گے کہ مزید کتنے مختلف النوع آبجیکٹ (مثلاً پارٹی) وجود میں آتے ہیں اور ان کے ما بین کیا تعلقات ہیں؟ :) :) :)

    اب پھر واپس بیانات کے ٹیبل کی طرف چلتے ہیں۔ ایک اور ضرورت جس کا ذکر ابتدا میں کیا گیا وہ یہ کہ بیان کس کے بارے میں ہے۔ اس بابت تھوڑی گفتگو کرتے ہیں۔ ہمارا خیال ہے کہ اس انداز سے اس معاملے کو دیکھنا غیر ضروری پیچیدگیاں پیدا کر رہا ہے۔ ضروری نہیں کہ کسی شخصیت کا بیان کسی دوسری شخصیت کے ہی بارے میں ہو۔ ایسا بھی ہو سکتا ہے کہ ایک سے زائد شخصیات یا ایک سے زائد پارٹیوں کے بارے میں بیان ہو، کسی منصوبے کا بیان ہو، کسی واقعے کا بیان ہو، یا کسی بیان کی صفائی ہو۔ لہٰذا یہاں ایسی کوئی ریلیشنشپ ایپلیکیشن کی افادیت کو محدود کر دے گی یا پھر اس کی پیچیدگی کو بڑھا دے گی۔ واضح طور پر یہاں نہ صرف "مینی ٹو مینی" بلکہ "پالی مارفک ایسو سئیشن" کی بو آ رہی ہے۔ ایک سہل طریقہ یہ ہو سکتا ہے کہ جب بھی کسی ایک ایٹریبیوٹ میں ایک سے زائد ویلیوز جگہ بنانے لگیں اور بعض حالات میں وہ خالی رہ جائے تو سمجھنا چاہیے کہ یہ ایٹریبیوٹ اس ٹیبل سے براہ راست متعلق نہیں ہے، بلکہ اس کی علیحدہ شناخت ہونی چاہیے کیوں کہ ون ٹو مینی یا مینی ٹو مینی ریلیشنشپ کا جنم ہو رہا ہے۔ کئی دفعہ ایک علیحدہ اینٹٹی ٹیبل سے کام بن سکتا ہے جبکہ بعض دفعہ پالی مارفک ایسوسئیشن کے لیے تیار ہونا پڑ سکتا ہے۔ :) :) :)

    پھر واپس بیانات کے ٹیبل کی طرف چلتے ہیں اور زمرے کی بات کرتے ہیں۔ عموماً ایسا ہوتا ہے کہ ایک ہی بیان ایک سے زائد زمروں سے متعلق ہو، لیکن پہلے سے طے شدہ زمرے مع ذیلی زمرے مواد کی براؤزنگ کو سہل بناتے ہیں۔ لہٰذا کئی دفعہ ٹیگس کی مدد سے ایک ہی بیان کو کئی زمروں کے ساتھ جوڑنا کافی ہوتا ہے لیکن علیحدہ سے زمروں کا ٹیبل بنانا اور ان میں "سیلف رفرینسنگ ریلیشنشپ" کی مدد سے ذیلی زمروں کا شجر بنانا ایک مناسب فیصلہ ہو سکتا ہے۔ لیکن زمروں کو بیانات کے ٹیبل میں شامل کرنے کے بجائے علیحدہ رکھنا اور "ون ٹو مینی ریلیشنشپ" کی مدد سے بیانات سے جوڑنا درست فیصلہ ہوگا۔ ٹیگس کو بہر صورت علیحدہ اینٹٹی کے طور پر علیحدہ ٹیبل میں رکھنا چاہیے اور "مینی ٹو مینی ریلیشنشپ" کی مدد سے جوڑنا چاہیے۔ ٹیگ کے لیے کاما سیپریٹیڈ لسٹ کا استعمال تلاش کی قوت کو متاثر کرے گا اور دیگر پیچیدگیاں بھی پیدا کرے گا۔ اگر عنوان با معنی ہو تو وہ اپنے آپ میں ایک طرح کی زمرہ بندی کا کام کرتا ہے اور تلاش کو بہت مثبت انداز میں متاثر کرتا ہے، خاص کر فل ٹیکسٹ سرچنگ کی امپلیمینٹیشن کے ساتھ۔ :) :) :)

    ایسے کسی نظام میں سب سے اہم بات یہ ہوتی ہے کہ صارفین کو ایک مواد سے دوسرے مواد کی طرف کیسے راغب کیا جائے۔ اس کے لیے سب سے اہم بات یہ ہے کہ ایک مواد کے ساتھ دوسرے متعلقہ مواد پیش کیے جائیں۔ یہ متعلقہ مواد کسی بیان کا جواب ہو سکتا ہے، اس کے موافق بیان ہو سکتا ہے، مشترک ٹیگ والا بیان ہو سکتا ہے، مخالف بیان ہو سکتا ہے، اس شخصیت کے دیگر مشہور بیانات ہو سکتے ہیں۔ ان ساری چیزوں کے لیے علیحدہ ریلیشنشپ ٹیبل ہونے چاہئیں، ان تعلقات کو فرسٹ کلاس اینٹٹی ٹیبلز میں شامل کرنا اچھا اسکیما ڈیزائن نہیں کہا جائے گا۔ :) :) :)

    واضح رہے کہ بیانات کے ساتھ اکثر کئی متعلقہ ریسورسیز موجود ہوتے ہیں مثلاً تصاویر، بینر، ویڈیو، آڈیو وغیرہ جو کہ ڈیٹا کی صورت میں بھی ہو سکتے ہیں اور کسی تھرڈ پارٹی سروس کے تحت ہوسٹیڈ بھی ہو سکتے ہیں جن کا یو آر ایل دستیاب ہو۔ ان اضافی وسائل کو ایک علیحدہ ٹیبل میں رکھا جا سکتا ہے اور ان کی نوعیت وغیرہ کے لیے ٹائپ ایٹریبیوٹ متعارف کرایا جا سکتا ہے یا پھر مختلف النوع مواد کے لیے پالی مارفک ایسوسئیشن کا سہارا لیا جا سکتا ہے۔ :) :) :)

    چونکہ یہ لڑی محض ڈیٹا بیس اسکیما ڈیزائن پر گفتگو کے حوالے سے ہے اس لیے ہم اس سے زیادہ تفصیل کے ساتھ بیان غیر ضروری سمجھتے ہیں۔ واضح رہے کہ ڈیٹا بیس سے ہمارا تعلق بس اتنا ہی ہے جتنا ایک ریسرچر اور ڈیویلپر کا ہو سکتا ہے، ہم کوئی پیشہ ور ڈی بی اے نہیں۔ لہٰذا یہ ساری باتیں ہمارے اپنے مشاہدے اور تجربے کی بنیاد پر کہی گئی ہیں۔ ان احباب کی رائے یقیناً مقدم ہو گی، ڈیٹا بیس جن کی اسپشلائزیشن ہے۔ :) :) :)
     
    • زبردست زبردست × 5
  19. محب علوی

    محب علوی لائبریرین

    مراسلے:
    11,300
    جھنڈا:
    Pakistan
    موڈ:
    Bookworm
    ماشاءللہ ابن سعید کا بیان پڑھ کر پانی کا ایک گلاس پینے کی سخت حاجت محسوس ہو رہی ہے۔

    باتیں بہت ساری کی گئی ہیں اور کافی صحیح بھی ہیں مگر ایک نئے طالب علم کے لیے اتنی باتوں کو ایک ساتھ ہضم کرنا کافی مشکل ثابت ہوگا ، میں خود تھک گیا اتنی لمبی پوسٹ پڑھتے پڑھتے اور بے اختیار سیاست کی ملکہ مہوش علی کی یاد تازہ ہو گئی۔ :)

    میں پھر اپنی پرانی فرمائش پر آؤں گا کہ ایک ٹیبل جس میں دس عدد ریکارڈ ہوں اس کو پوسٹ کیا جائے اور پھر اس پر مختصر پوسٹ میں بحث کی جائے ، اگر نکات زیادہ ہوں تو مختلف پوسٹس میں ذکر کیا جائے تاکہ اقتباس لے کر گفتگو کرنے میں آسانی ہو۔
     
  20. محمداحمد

    محمداحمد لائبریرین

    مراسلے:
    22,243
    جھنڈا:
    Pakistan
    موڈ:
    Amazed
     

اس صفحے کی تشہیر