আপনার অপারেশনাল টেবিলগুলিকে সাধারণকরণলেনদেন চার্লি দ্বারা প্রস্তাবিত হিসাবে করা একটি ভাল ধারণা, এবং সময়ের সাথে সাথে অনেক মাথাব্যথা এবং সমস্যাগুলি বাঁচাতে পারে - তবে ইন্টারফেস টেবিলের মতো জিনিস রয়েছে যা বাহ্যিক ব্যবস্থার সাথে সংহতকরণকে সমর্থন করে, এবং রিপোর্টিং টেবিলগুলি যা বিশ্লেষণাত্মক মতো জিনিসগুলিকে সমর্থন করে প্রক্রিয়াকরণের; এবং এই ধরণের টেবিলগুলি অগত্যা স্বাভাবিক করা উচিত নয় - বাস্তবে, খুব প্রায়শই এটি অনেক বেশি, অনেক বেশি সুবিধাজনক এবং না পারার জন্য পারফরম্যান্ট is ।
এই ক্ষেত্রে, আমি মনে করি আপনার অপারেশনাল টেবিলগুলির জন্য লেনদেন চার্লির প্রস্তাব ভাল।
তবে আমি প্রতিযোগীকরণের টেবিলে প্রতিযোগীকরণের তালিকায় একটি সূচক (অগত্যা অনন্য নয়) যুক্ত করব (সংখ্যার বাহ্যিক উত্স থেকে ডেটা লোড করা) এর উদ্দেশ্যে দক্ষ প্রতিযোগী নামটি সমর্থন করার জন্য এবং আমি মিশ্রণের মধ্যে একটি ইন্টারফেস টেবিল রাখব: প্রতিযোগিতা ফলাফল।
প্রতিযোগিতার ফলাফলগুলিতে আপনার প্রতিযোগিতার ফলাফলগুলিতে এতে থাকা ডেটা থাকা উচিত। এটির মতো একটি ইন্টারফেস টেবিলের বিন্দু হ'ল এটি একটি এক্সেল শীট বা একটি সিএসভি ফাইল, বা আপনার যে তথ্য ফর্মটিতে থাকা যাই হোক না কেন ফর্ম থেকে এটি কেটে ফেলা এবং পুনরায় লোড করা যতটা সম্ভব দ্রুত এবং সহজ করা easy
এই ইন্টারফেস টেবিলটি অপারেশনাল টেবিলগুলির সাধারণীকৃত সেটগুলির অংশ হিসাবে বিবেচনা করা উচিত নয়। এরপরে আপনি রিচার্ডের পরামর্শ অনুসারে প্রতিযোগিতার ফলাফলের সাথে যোগ দিতে পারেন, ইতিমধ্যে বিদ্যমান নেই এমন প্রতিযোগীদের মধ্যে রেকর্ড ,োকাতে এবং যাগুলি করেন তা আপডেট করুন (উদাহরণস্বরূপ যদি আপনার কাছে প্রতিযোগীদের সম্পর্কে আরও তথ্য থাকে যেমন তাদের ফোন নম্বর বা ইমেল ঠিকানা)।
একটি জিনিস আমি লক্ষ্য করব - বাস্তবে, প্রতিযোগী নাম, এটি আমার কাছে মনে হয়, তা আপনার ডেটাতে অনন্য হওয়ার সম্ভাবনা খুব কম । 200,000 প্রতিযোগী হিসাবে, আপনার কাছে খুব ভাল 2 বা আরও বেশি ডেভিড স্মিথ থাকতে পারে, উদাহরণস্বরূপ। সুতরাং আমি আপনাকে সুপারিশ করব যে আপনি প্রতিযোগীদের কাছ থেকে আরও তথ্য সংগ্রহ করুন, যেমন তাদের ফোন নম্বর বা ইমেল ঠিকানা বা অনন্য হওয়ার সম্ভাবনা বেশি এমন কিছু।
আপনার অপারেশনাল টেবিল, প্রতিযোগীরা, প্রতিটি সংযুক্ত প্রাকৃতিক কীতে অবদান রাখে এমন প্রতিটি ডেটা আইটেমের জন্য কেবল একটি কলাম থাকতে হবে; উদাহরণস্বরূপ এটিতে প্রাথমিক ইমেল ঠিকানার জন্য একটি কলাম থাকা উচিত। তবে ইন্টারফেস টেবিলটিতে পুরানো জন্য স্লট থাকা উচিত এবং নতুনের একটি প্রাথমিক ইমেল ঠিকানার মানের জন্য , যাতে পুরানো মান প্রতিযোগীদের রেকর্ড সন্ধান করতে এবং এর অংশটি নতুন মানে আপডেট করতে পারে।
সুতরাং প্রতিযোগিতার ফলাফলগুলিতে কিছু "পুরাতন" এবং "নতুন" ক্ষেত্র থাকা উচিত - ওল্ডমেইল, নতুন ইমেল, ওল্ডফোন, নিউফোন ইত্যাদি That এইভাবে আপনি প্রতিযোগীকারীগুলিতে, প্রতিযোগী নাম, ইমেল এবং ফোন থেকে একটি সম্মিলিত কী গঠন করতে পারেন।
তারপরে যখন আপনার কিছু প্রতিযোগিতার ফলাফল রয়েছে, আপনি আপনার এক্সেল শীট বা আপনার যা কিছু আছে তা থেকে আপনার প্রতিযোগিতা ফলাফল টেবিলটি ছাঁটাই এবং পুনরায় লোড করতে পারেন এবং প্রতিযোগী সারণীতে সমস্ত নতুন প্রতিযোগী সন্নিবেশ করার জন্য একটি একক, দক্ষ সন্নিবেশ চালনা করতে পারেন এবং আপডেট করার জন্য একক, দক্ষ আপডেট প্রতিযোগিতা ফলাফল থেকে বিদ্যমান প্রতিযোগীদের সম্পর্কে সমস্ত তথ্য। এবং আপনি প্রতিযোগীতা প্রতিযোগী টেবিলের মধ্যে নতুন সারি সন্নিবেশ করতে একটি একক সন্নিবেশ করতে পারেন। এই জিনিসগুলি একটি প্রক্রিয়া প্রতিযোগিতা ফলাফল সংরক্ষণের পদ্ধতিতে করা যেতে পারে, যা প্রতিযোগিতা ফলাফল সারণী লোড করার পরে কার্যকর করা যেতে পারে।
ওরাকল অ্যাপ্লিকেশন, এসএপি, পিপলসফট এবং অন্যান্য এন্টারপ্রাইজ সফ্টওয়্যার স্যুটগুলির একটি লন্ড্রি তালিকার সাথে আমি সত্যিকারের বিশ্বে কী ঘটেছে এবং এর বেশিরভাগ ক্ষেত্রে যা দেখেছি তার এক ধরণের প্রাথমিক বর্ণনা এটি।
একটা শেষ মন্তব্য আমি চাই আমি তাই আগে তৈরি করেছেন হল: আপনি একটি বিদেশী কী তৈরি যে নিশ্চিত করে যে প্রতিযোগী প্রতিযোগীরা টেবিল বিদ্যমান আগে আপনি CompetitionCompetitors তা যে প্রতিযোগী সঙ্গে একটি সারিতে যোগ করতে পারেন, নিশ্চিত করুন যে করা বিদেশী কী ক্যাসকেড আপডেট এবং মুছতে সেট করা আছে । এইভাবে যদি আপনার কোনও প্রতিযোগীকে মুছতে হয় তবে আপনি এটি করতে পারেন এবং সেই প্রতিযোগীর সাথে সম্পর্কিত সমস্ত সারি স্বয়ংক্রিয়ভাবে মোছা হবে। অন্যথায়, ডিফল্টরূপে, বিদেশী কীটির জন্য আপনাকে প্রতিযোগিতা মুদ্রণকারীদের বাইরে সম্পর্কিত সমস্ত সারি মুছে ফেলতে হবে এটি আপনাকে প্রতিযোগী মুছতে দেবে before
(কিছু লোক মনে করে যে নন-ক্যাসকেডিং বিদেশী কীগুলি একটি ভাল সুরক্ষার সতর্কতা, তবে আমার অভিজ্ঞতা হ'ল এগুলি কেবল বাটটিতে একটি বিরক্তিকর ব্যথা যা প্রায়শই কোনও তদারকির ফলস্বরূপ হয় না এবং তারা কাজ করার একগুচ্ছ তৈরি করে more ডিবিএ'র জন্য। লোকজনকে দুর্ঘটনাক্রমে জিনিসগুলি মোছার সাথে ডিল করা হ'ল আপনার কাছে "আপনি কি নিশ্চিত" ডায়লগ এবং বিভিন্ন ধরণের নিয়মিত ব্যাকআপ এবং অপ্রয়োজনীয় ডেটা উত্স রয়েছে far এটি এখন পর্যন্ত অনেক বেশি সাধারণ যে কোনও প্রতিযোগীকে মুছে ফেলতে চান, যার তথ্য সমস্তই উদাহরণস্বরূপ গণ্ডগোল হয়েছে, দুর্ঘটনাক্রমে একটি মুছুন এবং তারপরে যান "ওহ না! আমি তা করার মানেই করি নি! এবং এখন আমার প্রতিযোগিতার ফলাফল নেই! আআআহহহ!" পরবর্তীটি অবশ্যই যথেষ্ট সাধারণ, তাই তাই , আপনার এটির জন্য প্রস্তুত হওয়া দরকার, তবে পূর্ববর্তীটি অনেক বেশি সাধারণ,সুতরাং প্রাক্তন, ইমো এর জন্য প্রস্তুত করার সবচেয়ে সহজ ও সর্বোত্তম উপায় হ'ল বিদেশী কীগুলি ক্যাসকেড আপডেট এবং মুছে ফেলা)
NVARCHAR(64)
কলাম আপনার প্রাথমিক (এবং এইভাবে: ক্লাস্টারিং) কী !! প্রথমত - এটি একটি খুব প্রশস্ত কী - 128 বাইট অবধি; এবং দ্বিতীয়ত এটি পরিবর্তনশীল আকার - আবার: সর্বোত্তম নয় ... এটি আপনার নিকৃষ্টতম পছন্দ সম্পর্কে হতে পারে - আপনার সম্পাদনাটি নরক হবে, এবং টেবিল এবং সূচী বিভাজন সর্বদা 99.9% এ থাকবে .....