সাধারণ ব্যক্তির ক্ষেত্রে সর্বোত্তম অনুশীলন (নাম, ইমেল, ঠিকানা, লিঙ্গ ইত্যাদি…) [বন্ধ]


44

সাধারণ ক্ষেত্রগুলিতে দৈর্ঘ্য এবং ডেটা টাইপের সর্বাধিক সাধারণ সেরা অনুশীলনগুলি কী:

  • নামের প্রথম অংশ
  • নামের শেষাংশ
  • ঠিকানা
  • ইমেইল
  • লিঙ্গ
  • রাষ্ট্র
  • শহর
  • দেশ
  • ফোন নম্বর

ইত্যাদি ....


এই প্রশ্নটি WAYYY থেকে বিস্তৃত। এটি মুছে ফেলা এবং মুছে ফেলা উচিত।
ইভান ক্যারল

উত্তর:


50

আমি সর্বজনীন সেরা অনুশীলনের কোনও সেট সম্পর্কে খুব সন্দেহজনক হতে চাই কারণ এই ক্ষেত্রগুলির বেশিরভাগ ক্ষেত্রে, শয়তান বিশদে রয়েছে। কেবল তথ্য অপেক্ষাকৃত সাধারণ হওয়ার অর্থ এই নয় যে আপনার অ্যাপ্লিকেশনটি অন্য অ্যাপ্লিকেশনগুলি যেভাবে ব্যবহার করে সেইভাবে ডেটা ব্যবহার করে। তার অর্থ আপনার ডেটা মডেলটি কিছুটা আলাদা হতে পারে।

  • প্রথম এবং শেষ নাম: আপনি নামটি কেন ক্যাপচার করছেন? যদি আপনার কোনও ব্যক্তির পুরো আইনী নাম ক্যাপচার করার প্রয়োজন হয় (যেমন আপনি আইনী নথি বা জন্ম শংসাপত্র প্রস্তুত করছেন), আপনি সম্ভবত কোনও ব্যক্তির নাম জিজ্ঞাসা করছেন যদি আপনি লোকদের চেয়ে আপনার চেয়ে বেশি স্থান দেওয়ার অনুমতি দিতে চান তবে আপনি আপনার নতুন ওয়েব অ্যাপ্লিকেশন এ তাদের কল করার কিছু আছে।
  • ঠিকানা: আপনি ঠিকানা দিয়ে কি করতে যাচ্ছেন? আপনি কোন ধরণের ঠিকানাগুলি সংরক্ষণ করছেন? আপনি যদি কোনও বন্ধক তৈরি করে যুক্তরাষ্ট্রে কোনও সম্পত্তির ঠিকানা সঞ্চয় করে থাকেন তবে আপনি সম্ভবত পুরোপুরি মানসম্মত ঠিকানা পাওয়ার বিষয়ে খুব যত্নশীল হবেন এমন ক্ষেত্রে ডেটা মডেল সম্ভবত আপনার ঠিকানা যা কিছু খুব নিকটেই কাটাতে চাইবে মানককরণ সরঞ্জামটি ফেরত দেয়। আপনি যদি চান যে কোনও পণ্য সরবরাহের জন্য লোকেরা কোনও ঠিকানা লিখতে সক্ষম হয় তবে ফ্রিফর্ম পাঠ্যের জন্য কয়েকটি লাইন সম্ভবত যথেষ্ট। সেখানকার রেখার দৈর্ঘ্য প্রবাহের প্রসেসগুলির প্রয়োজনীয়তার উপর নির্ভর করে যা মুদ্রণ ঠিকানা লেবেলের মতো কাজ করে।
  • রাজ্য: ধরে নিই যে আপনি বৈধ রাষ্ট্রীয় মানগুলি সনাক্ত করতে পারবেন, সম্ভবত একটি STATEটেবিল তৈরি করা STATEএবং ADDRESSটেবিলগুলির মধ্যে একটি বিদেশী কী সম্পর্ক তৈরি করা বোধগম্য হবে । তবে বৈধ মানগুলি সনাক্ত করার দক্ষতার দ্বারা বোঝা যায় যে আপনি বৈধ ঠিকানাগুলির সেটটি কমপক্ষে কয়েকটি নির্দিষ্ট দেশে সীমাবদ্ধ রেখেছেন। এটি অনেক সাইটের পক্ষে ঠিক আছে তবে তারপরে আপনাকে নতুন দেশকে সমর্থন করার জন্য কিছুটা কাজ করতে হবে।
  • শহর: আপনি যদি এমন ডেটা নিয়ে কাজ করছেন যেখানে সম্ভাব্যভাবে নগর-স্তরের নিয়মনীতি রয়েছে (যেমন যেখানে শহরের ভিত্তিতে বিভিন্ন ধরণের করের হার প্রয়োগ করা হয়), আপনি এটি অনেকটা রাজ্যের মতো আচরণ করতে চাইতে পারেন এবং একটি CITYবৈধ শহরগুলির সাথে সারণী CITYএবং ADDRESSটেবিলগুলির মধ্যে একটি বিদেশী কী সম্পর্ক । অন্যদিকে, আপনি যদি কেবল কোনও পণ্য সরবরাহ করার চেষ্টা করছেন এবং আপনার টেবিলে একই শহরের বিভিন্ন সংস্করণ রয়েছে তবে আপনার খুব বেশি যত্ন নেই, ব্যবহারকারীকে ফ্রি-ফর্ম পাঠ্য প্রবেশ করিয়ে দেওয়া যথেষ্ট। অবশ্যই, আপনি যদি বিদেশী কীগুলি সংরক্ষণ করেন, আপনার কাছে বৈধ মান আছে কিনা তা নিশ্চিত করার জন্য আপনার কাছে যথেষ্ট পরিমাণের কাজ হবে। তবে এমন কিছু পণ্য রয়েছে যেখানে পুরো পয়েন্টটি হ'ল সংস্থাটি ইতিমধ্যে সেই কাজটি করেছে (অর্থাত্ বিক্রয় করের ডাটাবেসগুলি)।
  • ফোন: আপনি ফোন নম্বর দিয়ে কী করছেন এবং কেন? কিছু অ্যাপ্লিকেশন ফোন নাম্বার নিতে চাইবে ব্যবহারকারী যে কোনও ফর্ম্যাটে সেগুলি প্রবেশ করানোর সিদ্ধান্ত নেয় এবং পরবর্তী সমস্ত প্রশ্নের জন্য সেই বিন্যাসটি সংরক্ষণ করে। এটি সাধারণ হবে যদি আপনি কোনও ব্যক্তিগত ঠিকানা বই ডিজাইন করেন যেখানে ব্যবহারকারীদের ফোন নম্বর কীভাবে সংরক্ষণ এবং প্রদর্শিত হয় তার জন্য তাদের নিজস্ব পছন্দ রয়েছে। অন্যান্য অ্যাপ্লিকেশনগুলি প্রবেশ করানো ফর্ম্যাটটিকে অগ্রাহ্য করতে চাইবে, কেবলমাত্র বর্ণীয় অক্ষরগুলি এক্সট্রাক্ট করতে এবং পুনরুদ্ধারে ডেটা ফর্ম্যাট করতে যাতে সমস্ত ফোন নম্বরের অনুরূপ ফর্ম্যাটিং থাকে। আপনি যদি ব্যবসাগুলি খাওয়াচ্ছেন তবে ব্যবহারকারীদের কোনও এক্সটেনশান প্রবেশের জন্য আপনি একটি পৃথক ক্ষেত্র চাইতে পারেন। আপনি যদি আউটবাউন্ড কল করার প্রক্রিয়াটিকে সমর্থন করার চেষ্টা করছেন তবে আপনি অঞ্চল কোড এবং দেশের কোডটি পৃথক কলামে সঞ্চয় করতে পারেন কারণ আপনি '
  • লিঙ্গ: দুর্দান্ত অনেকগুলি অ্যাপ্লিকেশনের জন্য, কোনও টেবিলে লিঙ্গ কোড ('এম' বা 'এফ') সংরক্ষণ করা পুরোপুরি যুক্তিসঙ্গত। অন্যদিকে, এমন কিছু ক্ষেত্রে রয়েছে যখন আপনি অতিরিক্ত বিকল্পগুলি (অন্যান্য, ইন্টারসেক্স, ট্রান্সজেন্ডারড) চাইতে পারেন বা যেখানে আপনার জন্মের সময় এবং বর্তমান লিঙ্গ হিসাবে লিঙ্গের মতো কিছু সঞ্চয় করতে হবে।

প্রচুর জিনিস নিয়ে ভাবার সাথে আকর্ষণীয় উত্তর - তবে লোকেদের আরও কিছু পেতে সহায়তা করার জন্য কোনও দরকারী ধারণা অনুপস্থিত ... উদাহরণস্বরূপ ফোনের জিনিসটিতে একটি খুব সহজ জিনিস রয়েছে যা> = 80% কেসকে আবরণ করবে: আপনি যে নম্বরটি টাইপ করতে পারেন কোথাও ফোনে কারও কাছে পৌঁছানোর জন্য, সম্ভবত এটি সংযোজন সহ অন্যান্য দেশগুলিকেও coverেকে রাখা উচিত। তাই হ্যাঁ, কয়েক অক্ষরের একটি পার্থক্য যদি আপনি বিবেচনা একটি সংখ্যা ছাড়া দেশ উপসর্গ / দিয়ে হতে পারে, কিন্তু defintely হয় বিশ্বের দীর্ঘতম ফোন নম্বরের মতো একটা জিনিস এবং এই ব্যবহার করে প্লাস আরো কয়েকটি অধিকাংশ জন্য চমত্কার নিরাপদ কেস
হেনিং

24

আপনি ভাল হিসাবে হতে পারে অনুমান নমুনা তথ্য ও প্রত্যাশিত শ্রোতা উপর ভিত্তি করে। এটা আপনার অবস্থান উপর নির্ভর করে।

কিছু নোট:

ঠিকানা:

নাম:

ফোন নম্বর: আন্তর্জাতিক কোড, দৈর্ঘ্য, মোবাইল বনাম বাড়ি, কেবলমাত্র নম্বর হিসাবে মোবাইলের অনুমতি দেয়


3
শেষ দুটি লিঙ্ক ("শেষ নাম প্রথম" এবং "দীর্ঘতম কি ...") ভাঙা।
মার্ক এল।

1
@MarcL। আমি "শেষ নাম প্রথম" লিঙ্কটি ঠিক করেছি (যদি আমার সম্পাদনাটি গ্রহণযোগ্য হয়)। "দীর্ঘতম কোনটি ..." এসও প্রশ্নগুলি "গঠনমূলক নয়" হিসাবে বন্ধ করা হয়েছে এবং মুছে ফেলা হয়েছে (যদি আপনার> 10 কে রেপ থাকে তবে আপনি এটি দেখতে পারেন)।
কুড়াল

2
ওয়েব্যাক মেশিনটির "শেষ নাম প্রথম" নিবন্ধ রয়েছে: web.archive.org/web/20160823135055/http://www.solidether.net/…
এভ পিনজুর

10

উপরের দুর্দান্ত উত্তরগুলি ছাড়াও, ইউনিকোডের অক্ষরগুলি গ্রহণ করতে ভুলবেন না। আপনি মার্কিন যুক্তরাষ্ট্রে থাকার অর্থ এই নয় যে আপনি বিদেশী অক্ষরগুলি আপনার কলামগুলিতে স্বীকার করতে চান না।

এটি বলেছিল, আমি সাধারণত নামের জন্য 50 টি অক্ষর প্রস্তাব করি। 320 ইমেলের ঠিকানার জন্য পর্যাপ্ত পরিমাণের চেয়ে বেশি হওয়া উচিত (আপনি এএনএসআই মান নিশ্চিত করতে পারেন) can 255 টি অক্ষরের সাথে সতর্কতার পাশে ঠিকানা ত্রুটির জন্য। আপনার সম্ভবত কখনই এর চেয়ে বড় কোনও ঠিকানা প্রয়োজন হবে না, আপনি যদি সি / ও লাইন এবং এর মতো স্টাফ অন্তর্ভুক্ত করেন তবে might শহরটি বেশ বড় হওয়া উচিত, বেশ কয়েকটি দীর্ঘ দীর্ঘ শহরের নাম রয়েছে। রাষ্ট্রের জন্য চাইল্ড টেবিল সহ দেশের সাথে একই রকম যান। জিপ কোডের জন্য আন্তর্জাতিক পোস্ট কোডগুলি ভুলে যাবেন না যা মার্কিন জিপ কোডের চেয়ে দীর্ঘ। আপনি আন্তর্জাতিক সমর্থন না করার কারণে আপনি এখনও হতে পারেন। প্রচুর মার্কিন নাগরিক আছেন যারা সামরিক ভাওয়াসহ বিভিন্ন কাউন্টিতে থাকেন।

ভুলে যাবেন না যে অনেক দেশের রাজ্য না থাকায় রাষ্ট্রটি alচ্ছিক হওয়া উচিত।


আমার শেষ প্রকল্পে, আমি আন্তর্জাতিক ডাক মানের উপর একটি নথি পেয়েছি যা সর্বাধিক লাইনের দৈর্ঘ্য হিসাবে 39 নির্দেশ করে। ফ্রান্সের বড় আকারের প্রাপকদের জন্য আলাদা কোড রয়েছে যা শহরের পরে চলে goes আমি এই আকারের প্লাস দেশের 3 বা 4 টি ফ্রি ফর্ম্যাট ক্ষেত্রগুলিতে অনুমতি দেব।
বিলথোর

9

আমার বাম বেড়ার উপর বসে থেকে ক্ষতবিক্ষত হচ্ছে, তাই আমি কিছু উত্তর বের করতে যাচ্ছি এবং নিচে-ভোটে বিস্মৃত হওয়ার প্রত্যাশা করব। দয়া করে গঠনমূলক সমালোচনা করুন।

ই-মেইল ঠিকানা:

মিনিট: 6 (a@g.cn)। অথবা 3 আপনি যদি স্থানীয় ডোমেন ইমেল ঠিকানাগুলি ট্র্যাক করতে চান তবে
সর্বাধিক: 320 254 (আরএফসি)

কোনও ইমেল যাচাই করার কোডের পরিমাণটি আসলে উন্মাদ, সুতরাং আসুন কেবল এটি ধরে নেওয়া যাক যদি এটির "@" থাকে

আপনি কোনও ইমেল ঠিকানাটিকে "যোগাযোগের পদ্ধতি" হিসাবে বিমূর্ত করতে চাইতে পারেন, যাতে কোনও ব্যবহারকারীর সাথে যোগাযোগ করার জন্য যে সমস্ত পদ্ধতি আপনি সহজেই তালিকাভুক্ত করতে পারেন।

লিঙ্গ

লিঙ্গ সময়ের সাথে সাথে পরিবর্তিত হতে পারে, তাই আপনি এটি ট্র্যাক করতে পারেন এটি আপনার পক্ষে গুরুত্বপূর্ণ important Http://en.wikedia.org/wiki/ISO/IEC_5218 অনুসরণ করুন

NOT_KNOWN(0),
MALE(1),
FEMALE(2),
NOT_APPLICABLE(9);

ঠিকানা: নরম

আমি সস্তা উপায় নেব এবং উত্তর আমেরিকার ঠিকানাগুলিতে আটকে যাব।

বেশিরভাগ করের কারণে বিমূর্ত দেশ, বিভাগ, শহর এবং কাউন্টিগুলিতে সুবিধাজনক। করগুলি বহু স্তরে প্রয়োগ করতে পারে, তাই যদি আপনি কোনও বিমূর্ত ভৌগলিক অঞ্চলে করের হারকে নির্দেশ করতে পারেন তবে আপনি সোনার।

ভৌগলিকিয়া :

id: int  
type: {country, division, county, city, indian reservation}  
name: varchar(45)  [1]
abbreviation: nullable varchar(4)  
parent_id: nullable int  

ঠিকানা :

id: int  
postal_area_id: int, references GeographicArea  
county_or_city_id: int, references GeographicArea  
street_address: varchar(255)  
suite: nullable varchar(255)  

আপনার প্রয়োজন হলে লাইন 2 এবং লাইন 3 যুক্ত করুন।

Http://en.wikedia.org/wiki/Address_(geography) দেখুন

এখন, একটি ঠিকানা একটি ঠিকানা। একাধিক ব্যক্তি একটি ঠিকানায় বাস করতে পারে এবং একই সাথে একজনের একই সাথে একাধিক ঠিকানা থাকতে পারে এবং সময়ের সাথে সাথে আপনার তার জন্য অনেকগুলি সারণী প্রয়োজন।

PartyAddress

party_id: int references Party  
address_id: int references Address  
purpose: {home, work, ...}  

সময়ের সাথে সাথে ট্র্যাকিং করা থাকলে একটি from_dateএবং যুক্তযোগ্য যুক্ত করুন to_date

ফোন নাম্বারগুলো

একটি পার্টির একাধিক ফোন নম্বর থাকতে পারে এবং একটি ফোন নম্বর একাধিক লোক ব্যবহার করতে পারে। একটি ফোন নম্বর ফ্যাক্স, টেলিফোন কল, মডেম ইত্যাদির জন্য ব্যবহার করা যেতে পারে এবং এর এক্সটেনশন থাকতে পারে। সময়ের সাথে সাথে এগুলিও পরিবর্তন হতে পারে।

ফোন নম্বর

id: int  
value: varchar(15) - the max allowed by the ITU  

মিনিটটি 3 ("911" এর জন্য) হতে পারে, বা 7 ("310-4NET", যা একটি বিশেষ ধরণের স্থানীয় নম্বর যা আপনাকে অঞ্চল কোডটি ডায়াল করতে দেয় না)

আপনি প্রয়োজনে এটিকে দেশ কোড ইত্যাদিতে ভাগ করতে পারেন।

আপনার http://en.wikedia.org/wiki/E.164 স্ট্যান্ডার্ডটি ব্যবহার করা উচিত

PartyPhoneNumber

party_id: int references Party  
phone_number_id references PhoneNumber  
extension: nullable varchar(11) - ITU max  
purpose: {home, work, fax, modem, ...}  

নাম

নামগুলি শক্ত। কারণটা এখানে:

  1. কিছু লোকের মধ্যে একটি মাত্র শব্দের সাথে আইনী নাম রয়েছে http://en.wikedia.org/wiki/List_of_legally_mononymous_ people

  2. কিছু লোকের অনেক শব্দের সাথে নাম রয়েছে http://en.wikedia.org/wiki/Wolfe%2B585,_Senior

  3. কিছু লোকের একই সাথে একাধিক নাম থাকে (উদাহরণস্বরূপ, আমার বিশ্ববিদ্যালয়ে অনেক এশিয়ান শিক্ষার্থী রয়েছে তবে তারা "পছন্দসই" আরও পশ্চিমা নামগুলি ব্যবহার করতে পছন্দ করে)

  4. কখনও কখনও, আপনাকে সময়ের সাথে সাথে মানুষের নামগুলি যেমন: প্রথম নাম এবং বিবাহিত নামগুলি ট্র্যাক করতে হবে।

  5. আপনি বিভিন্ন ভাল কারণে বিভিন্ন ব্যক্তি এবং সংস্থাগুলিকে বিমূর্ত করতে চান

    টেবিল পার্টি তৈরি করুন (আইডি বিগ্রিসিয়াল প্রাথমিক কী);

    টেবিল পার্টি_নাম তৈরি করুন (আইডি বিগসিরিয়াল প্রাইমারি কী, পার্টি_আইডি বিগিন্ট নাল রেফারেন্স পার্টি (আইডি) নয়, ছোট্ট টাইপ করুন নাল রেফারেন্স পার্টি_নাম_ টাইপ (আইডি) - সহ, প্রাক্তন "প্রথম", "আইনী");

    টেবিলের নাম_পরিষদ তৈরি করুন (আইডি বিগ্রেসিয়ার প্রাইমারি কী, party_name_id বিগিন্ট নাল রেফারেন্স পার্টি_নাম (আইডি) লিখুন, স্মার্টিন্ট টাইপ করুন নাল রেফারেন্স নাম_কম্পন্ট_টাইপ (আইডি), - এলিডেড প্রাক্তন "প্রদত্ত" নাম পাঠ্য নাল নয়);


3

পূর্ববর্তী উত্তরের চেয়ে কিছুটা ভিন্ন দৃষ্টিভঙ্গি থেকে এবং যেহেতু এলডিএপি সম্পর্কে কথা বলা ঠিক আছে , তাই আরএফসি 4519 - "লাইটওয়েট ডিরেক্টরি এক্সেস প্রোটোকল (এলডিএপি): ব্যবহারকারী অ্যাপ্লিকেশনগুলির জন্য স্কিমা" আগ্রহী হতে পারে।

আপনার অ্যাপ্লিকেশনটিকে এই জাতীয় ডিরেক্টরিতে ম্যাপ করা দরকার হলে এটি কার্যকর হতে পারে। অন্যথায়, এটি সম্ভবত আপনার প্রয়োজনীয়তার সাথে খাপ খায় না।

এই সংজ্ঞাগুলি কেবল ডেটা সম্পর্কে নয়, তারা কিছু অপারেটর সম্পর্কে যা ক্ষেত্রগুলিতে ব্যবহার করা যেতে পারে। postalAddressউদাহরণস্বরূপ, এ caseIgnoreListSubstringsMatch। আমি আপনাকে পরামর্শ দিচ্ছি না যে আপনার এই স্কিমাটি কঠোরভাবে মেনে চলা উচিত, তবে নীতির দিকে নজর দেওয়া আকর্ষণীয় হতে পারে, বিশেষত আপনার আবেদনের নাম এবং ঠিকানাগুলির তুলনায় আপনার কীভাবে আপনার ডাটাবেসের নকশা প্রাসঙ্গিক হতে পারে।


3

নাম সম্পর্কিত, ডাবল-কোট ব্যবহার করে বিবেচনা করুন যাতে আপনাকে আইরিশ বা ইতালীয় নামগুলিতে (যেমন, ও'হারা বা ডি'আমোটো) এস্ট্রোফেস থেকে বাঁচতে হবে না।

আমি ব্যবহার করার জন্য নিয়মিত এক্সপ্রেশনগুলির একটি ভাল সেট পাওয়ার পরামর্শ দিচ্ছি, যাতে আপনি নিজের নামের ক্ষেত্রগুলির (যেমন প্রথম প্রাথমিক, ডাকনাম, জুনিয়র / সিনিয়র ইত্যাদি) আউটপুট নিতে পারেন।


1
বা ডাচ নাম যেমন আমার উপাধি।
কলিন 'হার্ট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.