<!doctypehtml><html lang=en><meta content="text/html; charset=utf-8"http-equiv=Content-Type><title>
   Database design
  </title><meta content="is the process of producing a detailed data model of a database. This logical data model contains all the needed logical and physical design choices and physical storage parameters needed to generate a design in a Data Definition Language, which&amp#8230;"name=Description><meta content="Database design"name=Keywords><meta content=width=device-width,initial-scale=1,minimum-scale=1 name=viewport><meta content=mature name=rating><meta content=on http-equiv=x-dns-prefetch-control><link href=https://ajax.googleapis.com rel=dns-prefetch><link href=https://www.googletagservices.com rel=dns-prefetch><link href=https://www.google-analytics.com rel=dns-prefetch><link href=https://pagead2.googlesyndication.com rel=dns-prefetch><link href=https://ajax.googleapis.com rel=dns-prefetch><link href=https://an.yandex.ru rel=dns-prefetch><link href=https://mc.yandex.ru rel=dns-prefetch><link as=image href=/images/Logo_en.png rel=preload><link as=image href=/images/Logo_h_en.png rel=preload><meta content="Database design"property=og:title><meta content=article property=og:type><meta content=https://en-academic.com/dic.nsf/enwiki/520866 property=og:url><meta content=https://en-academic.com/images/Logo_social_en.png?3 property=og:image><meta content="is the process of producing a detailed data model of a database. This logical data model contains all the needed logical and physical design choices and physical storage parameters needed to generate a design in a Data Definition Language, which&amp#8230;"property=og:description><meta content="Academic Dictionaries and Encyclopedias"property=og:site_name><link title="Academic Dictionaries and Encyclopedias"href=//en-academic.com/dicsearch.xml rel=search type=application/opensearchdescription+xml><meta content=ALL name=ROBOTS><link href=https://en-academic.com/dic.nsf/enwiki/520868 rel=next><link href=https://en-academic.com/dic.nsf/enwiki/520864 rel=prev><link href=https://en-academic.com/contents.nsf/enwiki/ rel=TOC><link href=https://en-academic.com/contents.nsf/enwiki/ rel=index><link href=https://en-academic.com/contents.nsf/enwiki/ rel=contents><link href=https://en-academic.com/dic.nsf/enwiki/520866 rel=canonical><script async src=https://www.googletagservices.com/tag/js/gpt.js></script><script async src=https://cdn-b.notsy.io/acd/ym.js></script><script>window.notsyFirstTapRegistered = false;
    (function () {
        function onFirstTap () {
            window.notsyFirstTapRegistered = true;
            document.removeEventListener('touchstart', onFirstTap);
        }
 
        document.addEventListener('touchstart', onFirstTap);
    })();</script><script>var googletag = window.googletag || {};
  googletag.cmd = googletag.cmd || [];

  var notsyInit = !!window.notsyInit ? window.notsyInit: function(s) {window.notsyPageSettings = s}
  notsyInit({
    'page': 'main_page_desktop',
    'enableAdUnits': ['ACD_FLOAT_970'],
    'targeting': [
       ['AgeLimits', 'adult'],
       ['pageType', 'article'],
       ['category', 'Общая информация'],
       ['did', 'enwiki'],
       ['len', 219]
     ]
  });</script><style>div.hidden,#sharemenu,div.autosuggest,#contextmenu,#ad_top,#ad_bottom,#ad_right,#ad_top2,#restrictions,#footer ul + div,#TerminsNavigationBar,#top-menu,#lang,#search-tabs,#search-box .translate-lang,#translate-arrow,#dic-query,#logo img.h,#t-direction-head,#langbar,.smm{display:none}p,ul{list-style-type:none;margin:0 0 15px}ul li{margin-bottom:6px}.content ul{list-style-type:disc}*{padding:0;margin:0}html,body{height:100%}body{padding:0;margin:0;color:#000;font:14px Helvetica,Arial,Tahoma,sans-serif;background:#fff;line-height:1.5em}a{color:#0d44a0;text-decoration:none}h1{font-size:24px;margin:0 0 18px}h2{font-size:20px;margin:0 0 14px}h3{font-size:16px;margin:0 0 10px}h1 a,h2 a{color:#454545!important}#page{margin:0 auto}#page{min-height:100%;position:relative;padding-top:105px}#page{width:720px;padding-right:330px}* html #page{height:100%}#header{position:relative;height:122px}#logo{float:left;margin-top:21px;width:125px}#logo a.img{width:90px;margin:0 0 0 16px}#logo a.img.logo-en{margin-left:13px}#logo a{display:block;font-size:12px;text-align:center;word-break:break-all}#site-title{padding-top:35px;margin:0 0 5px 135px}#site-title a{color:#000;font-size:18px;font-style:italic;display:block;font-weight:400}#search-box{margin-left:135px;border-top-right-radius:3px;border-bottom-right-radius:3px;padding:4px;position:relative;background:#abcf7e;min-height:33px}#search-box.dic{background:#896744}#search-box table{border-spacing:0;border-collapse:collapse;width:100%}#search-box table td{padding:0;vertical-align:middle}#search-box table td:first-child{padding-right:3px}#search-box table td:last-child{width:1px}#search-query,#dic-query,.translate-lang{padding:6px;font-size:16px;height:18px;border:1px solid #949494;width:100%;box-sizing:border-box;height:32px;float:none;margin:0;background:white;float:left;border-radius:0!important}#search-button{width:70px;height:32px;text-align:center;border:1px solid #7a8e69;border-radius:3px;background:#e0e0e0}#search-tabs{display:block;margin:0 15px 0 135px;padding:0;list-style-type:none}#search-tabs li{float:left;min-width:70px;max-width:140px;padding:0 15px;height:23px;line-height:23px;background:#bde693;text-align:center;margin-right:1px}#search-box.dic + #search-tabs li{background:#C9A784}#search-tabs li:last-child{border-bottom-right-radius:3px}#search-tabs li a{color:#353535;font-style:italic;font-size:12px;display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}#search-tabs li.active{height:22px;line-height:23px;position:relative;background:#abcf7e;border-bottom-left-radius:3px;border-bottom-right-radius:3px}#search-box.dic + #search-tabs li.active{background:#896744}#search-tabs li.active a{color:white}#content{clear:both;margin:30px 0;padding-left:15px}#content a{text-decoration:underline}#content .breadcrumb{margin-bottom:20px}#search_sublinks,#search_links{margin-bottom:8px;margin-left:-8px}#search_sublinks a,#search_links a{padding:3px 8px 1px;border-radius:2px}#search_sublinks a.active,#search_links a.active{color:#000 !important;background:#bde693;text-decoration:none!important}.term{color:saddlebrown}@media(max-width:767px){.hideForMobile{display:none}#header{height:auto}#page{padding:5px;width:auto}#logo{float:none;width:144px;text-align:left;margin:0;padding-top:5px}#logo a{height:44px;overflow:hidden;text-align:left}#logo img.h{display:initial;width:144px;height:44px}#logo img.v{display:none}#site-title{padding:0;margin:10px 0 5px}#search-box,#search-tabs{clear:both;margin:0;width:auto;padding:4px}#search-box.translate #search-query{width:100%;margin-bottom:4px}#search-box.translate #td-search{overflow:visible;display:table-cell}ul#search-tabs{white-space:nowrap;margin-top:5px;overflow-x:auto;overflow-y:hidden}ul#search-tabs li,ul#search-tabs li.active{background:none!important;box-shadow:none;min-width:0;padding:0 5px;float:none;display:inline-block}ul#search-tabs li a{border-bottom:1px dashed green;font-style:normal;color:green;font-size:16px}ul#search-tabs li.active a{color:black;border-bottom-color:white;font-weight:700}ul#search-tabs li a:hover,ul#search-tabs li.active a:hover{color:black}#content{margin:15px 0}.h250{height:280px;max-height:280px;overflow:hidden;margin:25px 0 25px 0}</style><link rel="shortcut icon"href=https://en-academic.com/favicon.ico sizes=16x16 type=image/x-icon><link rel="shortcut icon"href=https://en-academic.com/images/icon.ico sizes=32x32 type=image/x-icon><link rel="shortcut icon"href=https://en-academic.com/images/icon.ico sizes=48x48 type=image/x-icon><script>(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-2754246-1', 'auto');
  ga('require', 'displayfeatures');

  ga('set', 'dimension1', 'Общая информация');
  ga('set', 'dimension2', 'article');
  ga('set', 'dimension3', '1');

  ga('send', 'pageview');</script><script>if(typeof(console) == 'undefined' ) console = {};
	if(typeof(console.log) == 'undefined' ) console.log = function(){};
	if(typeof(console.warn) == 'undefined' ) console.warn = function(){};
	if(typeof(console.error) == 'undefined' ) console.error = function(){};
	if(typeof(console.time) == 'undefined' ) console.time = function(){};
	if(typeof(console.timeEnd) == 'undefined' ) console.timeEnd = function(){};
	Academic = {};
	Academic.sUserLanguage = 'en';
	Academic.sDomainURL = 'https://en-academic.com/dic.nsf/enwiki/';
	Academic.sMainDomainURL = '//dic.academic.pro/';
	Academic.sTranslateDomainURL = '//translate.en-academic.com/';
		Academic.sDictionaryId = 'enwiki';
		Academic.Lang = {};
	Academic.Lang.sTermNotFound = 'The term wasn\'t found';</script><body><div id=ad_top><div style="max-height: 90px; overflow: hidden; display: inline-block;"class=banner><div id=ACD_ATF_970></div></div></div><div id=page><div id=header><div id=logo><a href=//en-academic.com> <img alt=en-academic.com class=v height=68 src=//en-academic.com/images/Logo_en.png width=88> <img alt=en-academic.com class=h height=44 src=//en-academic.com/images/Logo_h_en.png width=144> <br> en-academic.com </a></div><ul id=top-menu><li id=lang><a class=link href=#> EN </a> <ul id=lang-menu><li><a href=//dic.academic.ru> RU </a><li><a href=//de-academic.com> DE </a><li><a href=//es-academic.com> ES </a><li><a href=//fr-academic.com> FR </a></ul><li><a class="add-fav link"href=# onclick=add_favorite(this);> Remember this site </a><li><a href=//partners.academic.ru/partner_proposal.php target=_blank> Embed dictionaries into your website </a></ul><h2 id=site-title><a href=//en-academic.com> Academic Dictionaries and Encyclopedias </a></h2><div id=search-box><form action=//academic.ru/searchall.php name=formSearch><table><tbody><tr><td id=td-search><input placeholder="Enter text to search in dictionaries and encyclopedias"title="Enter text to search in dictionaries and encyclopedias"autocomplete=off id=search-query name=SWord required> <div class=translate-lang><select id=translateFrom name=from><option value=xx>All languages<option value=en>English<option value=ru>Russian<option value=zh>Chinese<option value=de>German<option value=fr>French<option value=es>Spanish<option value=it>Italian<option value=la>Latin<option value=fi>Finnish<option value=el>Greek<option value=he>Hebrew<option value=ar>Arabic<option value=sw>Swahili<option value=no>Norwegian<option value=pt>Portuguese<option value=hu>Hungarian<option value=tr>Turkish<option value=id>Indonesian<option value=sv>Swedish<option value=pl>Polish<option value=et>Estonian<option value=lv>Latvian<option value=da>Danish<option value=nl>Dutch<option value=hy>Armenian<option value=uk>Ukrainian<option value=ja>Japanese<option value=sa>Sanskrit<option value=th>Thai<option value=ga>Irish<option value=tt>Tatar<option value=sk>Slovak<option value=sl>Slovene<option value=tv>Tuvan<option value=ur>Urdu<option value=yi>Yiddish<option value=mk>Macedonian<option value=ca>Catalan<option value=ba>Bashkir<option value=cs>Czech<option value=ka>Georgian<option value=ko>Korean<option value=hr>Croatian<option value=ro>Romanian, Moldavian<option value=sh>Yakut<option value=ky>Kyrgyz<option value=bo>Tibetan Standard<option value=be>Belarusian<option value=bg>Bulgarian<option value=is>Icelandic<option value=sq>Albanian<option value=nu>Nahuatl<option value=mm>Komi<option value=cy>Welsh<option value=kk>Kazakh<option value=uz>Uzbek<option value=sr>Serbian<option value=vi>Vietnamese<option value=az>Azerbaijani<option value=eu>Basque<option value=hi>Hindi<option value=mi>Māori<option value=qu>Quechua<option value=ak>Akan<option value=ay>Aymara<option value=ht>Haitian<option value=mn>Mongolian<option value=pi>Pāli<option value=mu>Maya<option value=lt>Lithuanian<option value=cj>Shor<option value=ct>Crimean Tatar language<option value=eo>Esperanto<option value=in>Ingush<option value=se>Northern Sami<option value=hs>Hornjoserbska<option value=ce>Chechen<option value=gd>Scottish Gaelic<option value=sx>Sumerian<option value=os>Ossetian<option value=ke>Circassian<option value=ad>Adyghe<option value=fa>Persian<option value=ai>Ainu<option value=km>Khmer<option value=pr>Old Russian<option value=cu>Old Church Slavonic<option value=mc>Mycenaean<option value=qy>Quenya<option value=ya>Yupik<option value=af>Afrikaans<option value=pm>Papiamento<option value=pa>Panjabi<option value=tl>Tagalog<option value=mf>Moksha<option value=cr>Cree<option value=wr>Waray<option value=ku>Kurdish<option value=gw>Alsatian<option value=fo>Faroese<option value=ab>Abkhaz<option value=an>Aragonese<option value=rp>Aromanian<option value=at>Asturian<option value=mv>Erzya<option value=kv>Komi<option value=mj>Mari<option value=cv>Chuvash<option value=ld>Ladino<option value=ud>Udmurt<option value=vp>Veps<option value=al>Altaic<option value=dl>Dolgan<option value=kc>Karachay<option value=kp>Kumyk<option value=og>Nogai<option value=ot>Ottoman Turkish<option value=tf>Tofalar<option value=tk>Turkmen<option value=ug>Uighur<option value=uu>Idioma urrumano<option value=bu>Buryat<option value=oa>Orok<option value=ev>Evenki<option value=ma>Manchu<option value=gn>Guaraní<option value=tg>Tajik<option value=ik>Inupiaq<option value=ms>Malay<option value=kb>Kabyle<option value=tw>Twi<option value=ln>Lingala<option value=bb>Bagobo<option value=yo>Yoruba<option value=sz>Silesian<option value=lb>Luxembourgish<option value=ck>Cherokee<option value=cn>Cheyenne<option value=go>Klingon<option value=jb>Lojban</select></div> <div id=translate-arrow><a>   </a></div> <div class=translate-lang><select id=translateOf name=to><option value=xx>All languages<option value=ru>Russian<option selected value=en>English<option value=de>German<option value=la>Latin<option value=he>Hebrew<option value=es>Spanish<option value=no>Norwegian<option value=zh>Chinese<option value=fr>French<option value=uk>Ukrainian<option value=it>Italian<option value=pt>Portuguese<option value=hu>Hungarian<option value=tr>Turkish<option value=pl>Polish<option value=da>Danish<option value=tt>Tatar<option value=ku>Kurdish<option value=sl>Slovene<option value=el>Greek<option value=id>Indonesian<option value=vi>Vietnamese<option value=mi>Māori<option value=tl>Tagalog<option value=ur>Urdu<option value=is>Icelandic<option value=hi>Hindi<option value=ga>Irish<option value=fo>Faroese<option value=bg>Bulgarian<option value=lv>Latvian<option value=sq>Albanian<option value=ar>Arabic<option value=fi>Finnish<option value=fa>Persian<option value=mn>Mongolian<option value=nl>Dutch<option value=sv>Swedish<option value=pi>Pāli<option value=ja>Japanese<option value=ko>Korean<option value=et>Estonian<option value=ka>Georgian<option value=tg>Tajik<option value=lt>Lithuanian<option value=ro>Romanian, Moldavian<option value=hr>Croatian<option value=sw>Swahili<option value=kk>Kazakh<option value=mk>Macedonian<option value=th>Thai<option value=be>Belarusian<option value=gl>Galician<option value=ca>Catalan<option value=ce>Chechen<option value=kc>Karachay<option value=sk>Slovak<option value=cs>Czech<option value=sr>Serbian<option value=hy>Armenian<option value=az>Azerbaijani<option value=uz>Uzbek<option value=qu>Quechua<option value=ht>Haitian<option value=mu>Maya<option value=ay>Aymara<option value=cj>Shor<option value=eo>Esperanto<option value=ct>Crimean Tatar language<option value=os>Ossetian<option value=ad>Adyghe<option value=sh>Yakut<option value=ai>Ainu<option value=km>Khmer<option value=pr>Old Russian<option value=cu>Old Church Slavonic<option value=ta>Tamil<option value=qy>Quenya<option value=av>Avaric<option value=af>Afrikaans<option value=pm>Papiamento<option value=mf>Moksha<option value=yo>Yoruba<option value=gw>Alsatian<option value=yi>Yiddish<option value=ab>Abkhaz<option value=mv>Erzya<option value=in>Ingush<option value=iz>Ingrian<option value=mj>Mari<option value=cv>Chuvash<option value=ud>Udmurt<option value=vd>Votic<option value=vp>Veps<option value=al>Altaic<option value=kp>Kumyk<option value=tk>Turkmen<option value=ug>Uighur<option value=uu>Idioma urrumano<option value=ev>Evenki<option value=ba>Bashkir<option value=ms>Malay<option value=mt>Maltese<option value=ln>Lingala<option value=pa>Panjabi<option value=ck>Cherokee<option value=ch>Chamorro<option value=go>Klingon<option value=eu>Basque<option value=ps>Pashto</select></div> <input id=did-field name=did type=hidden value=enwiki> <input id=search-type name=stype type=hidden><td><button id=search-button>Search!</button></table></form><input placeholder="interactive contents"title="interactive contents"autocomplete=off id=dic-query name=dic_query></div><ul id=search-tabs><li data-search-type=-1 id=thisdic><a onclick="return false;"href=#> Wikipedia </a><li class=active data-search-type=0 id=interpretations><a onclick="return false;"href=#> Interpretations </a></ul></div><div id=ad_top2></div><div id=content><div style="clear: both;"itemscope itemtype=http://data-vocabulary.org/Breadcrumb><h2 class=breadcrumb><a href=/contents.nsf/enwiki/ itemprop=url> <span itemprop=title> Wikipedia </span> </a></h2></div><div class=content id=selectable-content><div class=title id=TerminTitle><h1>Database design</h1></div><div id=search_links></div><ul class=smm><li class=vk><a onclick="share('vk'); return false;"href=#> </a><li class=ok><a onclick="share('ok'); return false;"href=#> </a><li class=fb><a onclick="share('fb'); return false;"href=#> </a><li class=tw><a onclick="share('tw'); return false;"href=#> </a><li class=gplus><a onclick="share('g+'); return false;"href=#> </a><li class=mailru><a onclick="share('mail.ru'); return false;"href=#> </a><li class=lj><a onclick="share('lj'); return false;"href=#> </a><li class=li><a onclick="share('li'); return false;"href=#> </a></ul><div id=article><dl><div itemscope itemtype=http://webmaster.yandex.ru/vocabularies/enc-article.xml><dt class=term itemprop=title lang=en>Database design<dd class=descript itemprop=content lang=en><div class=mw-content-ltr dir=ltr lang=en><p><b> Database design </b> is the process of producing a detailed <a href=50106> data model </a> of a <a href=4849> database </a> . This <a href=513640> logical data model </a> contains all the needed logical and physical design choices and physical storage parameters needed to generate a design in a <a href=253317> Data Definition Language </a> , which can then be used to create a database. A fully attributed data model contains detailed attributes for each entity.<p>The term database design can be used to describe many different parts of the design of an overall <a href=153122> database system </a> . Principally, and most correctly, it can be thought of as the logical design of the base data structures used to store the data. In the <a href=16079> relational model </a> these are the tables and views. In an <a href=13923> object database </a> the entities and relationships map directly to object classes and named relationships. However, the term database design could also be used to apply to the overall process of designing, not just the base data structures, but also the forms and queries used as part of the overall database application within the <a href=4941> database management system </a> (DBMS). <sup class=reference id=cite_ref-0> <a href=#cite_note-0> <span> [ </span> 1 <span> ] </span> </a> </sup><p>The process of doing database design generally consists of a number of steps which will be carried out by the database designer. Usually, the designer must:<ul><li>Determine the relationships between the different data elements.<li>Superimpose a logical structure upon the data on the basis of these relationships. <sup class=reference id=cite_ref-Teorey.2C_T.J._2009_1-0> <a href=#cite_note-Teorey.2C_T.J._2009-1> <span> [ </span> 2 <span> ] </span> </a> </sup></ul><table class=toc id=toc><tbody><tr><td style="text-align: left;"><div id=toctitle><h2>Contents</h2></div> <ul><li class="toclevel-1 tocsection-1"><a href=#ER_Diagram_.28Entity-relationship_model.29> <span class=tocnumber> 1 </span> <span class=toctext> ER Diagram (Entity-relationship model) </span> </a><li class="toclevel-1 tocsection-2"><a href=#The_Design_Process> <span class=tocnumber> 2 </span> <span class=toctext> The Design Process </span> </a><li class="toclevel-1 tocsection-3"><a href=#Determining_data_to_be_stored> <span class=tocnumber> 3 </span> <span class=toctext> Determining data to be stored </span> </a><li class="toclevel-1 tocsection-4"><a href=#Normalization> <span class=tocnumber> 4 </span> <span class=toctext> Normalization </span> </a><li class="toclevel-1 tocsection-5"><a href=#Types_of_Database_design> <span class=tocnumber> 5 </span> <span class=toctext> Types of Database design </span> </a> <ul><li class="toclevel-2 tocsection-6"><a href=#Conceptual_schema> <span class=tocnumber> 5.1 </span> <span class=toctext> Conceptual schema </span> </a><li class="toclevel-2 tocsection-7"><a href=#Logically_structuring_data> <span class=tocnumber> 5.2 </span> <span class=toctext> Logically structuring data </span> </a><li class="toclevel-2 tocsection-8"><a href=#Physical_database_design> <span class=tocnumber> 5.3 </span> <span class=toctext> Physical database design </span> </a></ul><li class="toclevel-1 tocsection-9"><a href=#See_also> <span class=tocnumber> 6 </span> <span class=toctext> See also </span> </a><li class="toclevel-1 tocsection-10"><a href=#References> <span class=tocnumber> 7 </span> <span class=toctext> References </span> </a><li class="toclevel-1 tocsection-11"><a href=#Further_reading> <span class=tocnumber> 8 </span> <span class=toctext> Further reading </span> </a><li class="toclevel-1 tocsection-12"><a href=#External_links> <span class=tocnumber> 9 </span> <span class=toctext> External links </span> </a></ul></table><h2><span class=mw-headline id=ER_Diagram_.28Entity-relationship_model.29> ER Diagram (Entity-relationship model) </span></h2><div class="thumb tright"><div class=thumbinner style=width:322px;><a href=/pictures/enwiki/69/ER_Diagram_MMORPG.png> <img style="max-width : 98%; height: auto; width: auto;"alt border=0 class=thumbimage height=285 src=/pictures/enwiki/51/320px-ER_Diagram_MMORPG.png width=320> </a><div class=thumbcaption><div class=magnify><img style="max-width : 98%; height: auto; width: auto;"alt border=0 height=11 src=magnify-clip.png width=15></div> A sample Entity-relationship diagram</div></div></div><p>Database designs also include ER( <a href=393044> Entity-relationship model </a> ) diagrams. An ER diagram is a diagram that helps to design databases in an efficient way.<p>Attributes in ER diagrams are usually modeled as an oval with the name of the attribute, linked to the entity or relationship that contains the attribute.<p>Within the <a href=16079> relational model </a> the final step can generally be broken down into two further steps, that of determining the grouping of information within the system, generally determining what are the basic objects about which information is being stored, and then determining the relationships between these groups of information, or objects. This step is not necessary with an <a href=13923> Object database </a> . <sup class=reference id=cite_ref-Teorey.2C_T.J._2009_-_Prosenjit_Mitra_2-0> <a href=#cite_note-Teorey.2C_T.J._2009_-_Prosenjit_Mitra-2> <span> [ </span> 3 <span> ] </span> </a> </sup> <b> Bold text </b><h2><span class=mw-headline id=The_Design_Process> The Design Process </span></h2><p>The design process consists of the following steps <sup class=reference id=cite_ref-3> <a href=#cite_note-3> <span> [ </span> 4 <span> ] </span> </a> </sup> :<ol><li><b> Determine the purpose of your database </b> - This helps prepare you for the remaining steps.<li><b> Find and organize the information required </b> - Gather all of the types of information you might want to record in the database, such as product name and order number.<li><b> Divide the information into tables </b> - Divide your information items into major entities or subjects, such as Products or Orders. Each subject then becomes a table.<li><b> Turn information items into columns </b> - Decide what information you want to store in each table. Each item becomes a field, and is displayed as a column in the table. For example, an Employees table might include fields such as Last Name and Hire Date.<li><b> Specify primary keys </b> - Choose each table’s primary key. The primary key is a column that is used to uniquely identify each row. An example might be Product ID or Order ID.<li><b> Set up the table relationships </b> - Look at each table and decide how the data in one table is related to the data in other tables. Add fields to tables or create new tables to clarify the relationships, as necessary.<li><b> Refine your design </b> - Analyze your design for errors. Create the tables and add a few records of sample data. See if you can get the results you want from your tables. Make adjustments to the design, as needed.<li><b> Apply the normalization rules </b> - Apply the data normalization rules to see if your tables are structured correctly. Make adjustments to the tables</ol><h2><span class=mw-headline id=Determining_data_to_be_stored> Determining data to be stored </span></h2><p>In a majority of cases, a person who is doing the design of a database is a person with expertise in the area of database design, rather than expertise in the domain from which the data to be stored is drawn e.g. financial information, biological information etc. Therefore the data to be stored in the database must be determined in cooperation with a person who does have expertise in that domain, and who is aware of what data must be stored within the system.<p>This process is one which is generally considered part of <a href=287882> requirements analysis </a> , and requires skill on the part of the database designer to elicit the needed information from those with the domain knowledge. This is because those with the necessary domain knowledge frequently cannot express clearly what their system requirements for the database are as they are unaccustomed to thinking in terms of the discrete data elements which must be stored. Data to be stored can be determined by Requirement Specification. <sup class=reference id=cite_ref-4> <a href=#cite_note-4> <span> [ </span> 5 <span> ] </span> </a> </sup><h2><span class=mw-headline id=Normalization> Normalization </span></h2><div class="rellink relarticle mainarticle">Main article: <a href=5021> Database normalization </a></div><p>In the field of <a href=15864> relational database </a> design, <b> normalization </b> is a systematic way of ensuring that a database structure is suitable for general-purpose querying and free of certain undesirable characteristics—insertion, update, and deletion anomalies—that could lead to a loss of <a href=25906> data integrity </a> .<p>A standard piece of database design guidance is that the designer should create a fully normalized design; selective <a href=4971> denormalization </a> can subsequently be performed, but only for <a href=4751528> performance </a> reasons. However, some modeling disciplines, such as the <a href=3476689> dimensional modeling </a> approach to <a href=4595> data warehouse </a> design, explicitly recommend non-normalized designs, i.e. designs that in large part do not adhere to 3NF. Normalization consists of normal forms that are 1NF,2NF,3NF,BOYCE-CODD NF (3.5NF),4NF and 5NF<h2><span class=mw-headline id=Types_of_Database_design> Types of Database design </span></h2><h3><span class=mw-headline id=Conceptual_schema> Conceptual schema </span></h3><div class="rellink relarticle mainarticle">Main article: <a href=36827> Conceptual schema </a></div><p>Once a database designer is aware of the data which is to be stored within the database, they must then determine where dependancy is within the data. Sometimes when data is changed you can be changing other data that is not visible. For example, in a list of names and addresses, assuming a situation where multiple people can have the same address, but one person cannot have more than one address, the name is dependent upon the address, because if the address is different, then the associated name is different too. However, the other way around is different. One attribute can change and not another.<p>(NOTE: A common misconception is that the <a href=16079> relational model </a> is so called because of the stating of relationships between data elements therein. This is not true. The relational model is so named because it is based upon the mathematical structures known as <a href=11797> relations </a> .)<h3><span class=mw-headline id=Logically_structuring_data> Logically structuring data </span></h3><p>Once the relationships and dependencies amongst the various pieces of information have been determined, it is possible to arrange the data into a logical structure which can then be mapped into the storage objects supported by the <a href=4941> database management system </a> . In the case of relational databases the storage objects are tables which store data in rows and columns.<p>Each table may represent an implementation of either a logical object or a relationship joining one or more instances of one or more logical objects. Relationships between tables may then be stored as links connecting child tables with parents. Since complex logical relationships are themselves tables they will probably have links to more than one parent.<p>In an <a href=13923> Object database </a> the storage objects correspond directly to the objects used by the <a href=13876> Object-oriented programming language </a> used to write the applications that will manage and access the data. The relationships may be defined as attributes of the object classes involved or as methods that operate on the object classes.<p><br><h3><span class=mw-headline id=Physical_database_design> Physical database design </span></h3><p>The physical design of the database specifies the physical configuration of the database on the storage media. This includes detailed specification of <a href=25904> data elements </a> , <a href=56546> data types </a> , <a href=829873> indexing </a> options and other parameters residing in the DBMS <a href=345340> data dictionary </a> . It is the detailed design of a system that includes modules & the database's hardware & software specifications of the system.<h2><span class=mw-headline id=See_also> See also </span></h2><ul><li><a href=5021> Database normalization </a><li><a href=15864> Relational database </a><li><a href=16079> Relational model </a><li><a href=568793> POOD </a> ( <a href=10687932> Principle of Orthogonal Design </a> )<li>POFN (Principle of Full Normalization)<li><a href=50932> The Third Manifesto </a><li>Concept mapping<li><a href=395890> Data modeling </a><li><a href=393044> Entity-relationship model </a><li>Object-relationship modelling<li><a href=417387> Object role modeling </a><li><a href=10210> Knowledge representation </a><li><a href=513640> Logical data model </a><li>Mindmap<li><a href=515996> Physical data model </a><li><a href=17913> Semantic Web </a><li><a href=11387961> Three schema approach </a></ul><h2><span class=mw-headline id=References> References </span></h2><div style="list-style-type: decimal;"class=reflist><ol class=references><li id=cite_note-0><b> <a href=#cite_ref-0> ^ </a> </b> Gehani, N. (2006). The Database Book: Principles and practice using MySQL. 1st ed., Summit, NJ.: Silicon Press<li id=cite_note-Teorey.2C_T.J._2009-1><b> <a href=#cite_ref-Teorey.2C_T.J._2009_1-0> ^ </a> </b> Teorey, T.J., Lightstone, S.S., et al., (2009). Database Design: Know it all.1st ed. Burlington, MA.: Morgan Kaufmann Publishers<li id=cite_note-Teorey.2C_T.J._2009_-_Prosenjit_Mitra><b> <a href=#cite_ref-Teorey.2C_T.J._2009_-_Prosenjit_Mitra_0> ^ </a> </b> <strong class=error> Cite error: Invalid <code>
               &LTref>
              </code> tag; no text was provided for refs named <code>
               Teorey.2C_T.J._2009_-_Prosenjit_Mitra
              </code> ; see Help:Cite errors/Cite error references no text </strong><li id=cite_note-3><b> <a href=#cite_ref-3> ^ </a> </b> Database design basics. (n.d.). Database design basics. Retrieved May 1, 2010, from <a class="external free"href=http://office.microsoft.com/en-us/access/HA012242471033.aspx rel=nofollow> http://office.microsoft.com/en-us/access/HA012242471033.aspx </a><li id=cite_note-4><b> <a href=#cite_ref-4> ^ </a> </b> Teorey, T.; Lightstone, S. and Nadeau, T.(2005) <i> Database Modeling & Design: Logical Design </i> , 4th edition, Morgan Kaufmann Press. <a class="internal mw-magiclink-isbn"href=/wiki/Special:BookSources/0126853525> ISBN 0-12-685352-5 </a></ol></div><h2><span class=mw-headline id=Further_reading> Further reading </span></h2><ul><li>S. Lightstone, T. Teorey, T. Nadeau, “Physical Database Design: the database professional's guide to exploiting indexes, views, storage, and more”, Morgan Kaufmann Press, 2007. <a class="internal mw-magiclink-isbn"href=/wiki/Special:BookSources/0123693896> ISBN 0-12369389-6 </a></ul><h2><span class=mw-headline id=External_links> External links </span></h2><ul><li><a class="external autonumber"href=http://www.sqlteam.com/article/database-design-and-modeling-fundamentals rel=nofollow> [1] </a><li><a class="external autonumber"href=http://office.microsoft.com/en-us/access/HA012242471033.aspx rel=nofollow> [2] </a><li><a class="external text"href=http://databases.about.com/od/specificproducts/a/normalization.htm rel=nofollow> Database Normalization Basics </a> by Mike Chapple (About.com)<li><a class="external text"href=http://www.databasejournal.com/sqletc/article.php/1428511 rel=nofollow> Database Normalization Intro </a> , <a class="external text"href=http://www.databasejournal.com/sqletc/article.php/26861_1474411_1 rel=nofollow> Part 2 </a><li><a class="external text"href=http://dev.mysql.com/tech-resources/articles/intro-to-normalization.html rel=nofollow> An Introduction to Database Normalization </a> by Mike Hillyer.<li><a class="external text"href=http://www.utexas.edu/its/windows/database/datamodeling/rm/rm7.html rel=nofollow> Normalization </a> by ITS, University of Texas.<li><a class="external text"href=http://www.sum-it.nl/cursus/enindex.php3#dbdesign rel=nofollow> Efficient Database Design </a><li><a class="external text"href=http://www.datamodelers.com/ rel=nofollow> Data Modelers Community </a></ul><ul><li><a class="external text"href=http://www.dmoz.org/Computers/Data_Formats/Database/ rel=nofollow> Database design </a> at the <a href=10972264> Open Directory Project </a></ul><table cellspacing=0 class=navbox style=;><tbody><tr><td style=padding:2px;><table class="nowraplinks collapsible autocollapse"cellspacing=0 style=width:100%;background:transparent;color:inherit;;><tbody><tr><th class=navbox-title colspan=2 style=;><span style=float:left;width:6em;text-align:left;> <span class="noprint plainlinks navbar"> <span style=white-space:nowrap;word-spacing:-.12em;> <a href=#> <span style=";;background:none transparent;border:none;font-size:100%;"title="View this template"> v </span> </a> <span style=";;background:none transparent;border:none;font-size:100%;"> <b> · </b> </span> <a href=#> <span style=";;background:none transparent;border:none;font-size:100%;"title="Discuss this template"> d </span> </a> <span style=";;background:none transparent;border:none;font-size:100%;"> <b> · </b> </span> <a class="external text"href=//en.wikipedia.org/w/index.php?title=Template:Databases&action=edit> <span style=";;background:none transparent;border:none;font-size:100%;"title="Edit this template"> e </span> </a> </span> </span> </span> <span style=font-size:110%;> <a href=4941> Database management systems </a> </span><tr style=height:2px;><td style="text-align: left;"><tr><td class="navbox-abovebelow hlist"colspan=2 style=;><ul><li><a href=11616178> Database models </a><li><a href=5021> Database normalization </a><li><a href=5965863> Database storage </a><li><a href=958225> Distributed DBMS </a><li><a href=635467> Federated database system </a><li><a href=250100> Referential integrity </a><li><a href=118027> Relational algebra </a><li><a href=118336> Relational calculus </a><li><a href=15864> Relational database </a><li><a href=60070> Relational DBMS </a><li><a href=16079> Relational model </a><li><a href=43051> Object-relational database </a><li><a href=137406> Transaction processing </a></ul><tr style=height:2px;><td style="text-align: left;"><tr><td class=navbox-group style=;;>Concepts<td class="navbox-list navbox-odd hlist"style=text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px;;;><div style="padding:0em 0.25em"><ul><li><a href=4849> Database </a><li><a href=61> ACID </a><li><a href=174915> CRUD </a><li><a href=963195> Null </a><li><a href=199000> Candidate key </a><li><a href=159903> Foreign key </a><li>Primary key<li><a href=569784> Superkey </a><li><a href=263746> Surrogate key </a><li><a href=1623211> Armstrong's axioms </a><li><a href=11825524> NoSQL </a></ul></div><tr style=height:2px><td style="text-align: left;"><tr><td class=navbox-group style=;;>Objects<td class="navbox-list navbox-even hlist"style=text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px;;;><div style="padding:0em 0.25em"><ul><li>Relation ( <a href=825325> Table </a> )<li><a href=944739> View </a><li><a href=147837> Transaction </a><li><a href=153785> Log </a><li><a href=683245> Trigger </a><li><a href=829873> Index </a><li><a href=168441> Stored procedure </a><li><a href=1008122> Cursor </a><li><a href=955156> Partition </a></ul></div><tr style=height:2px><td style="text-align: left;"><tr><td class=navbox-group style=;;>Components<td class="navbox-list navbox-odd hlist"style=text-align:left;border-left-width:2px;border-left-style:solid;width:100%;padding:0px;;;><div style="padding:0em 0.25em"><ul><li><a href=139849> Concurrency control </a><li><a href=345340> Data dictionary </a><li><a href=27268> JDBC </a><li><a href=114135> ODBC </a><li><a href=274662> Query language </a><li><a href=839726> Query optimizer </a><li><a href=829742> Query plan </a></ul></div><tr style=height:2px;><td style="text-align: left;"><tr><td class="navbox-abovebelow hlist"colspan=2 style=;><p><b> Database products: </b></p> <ul><li><a href=763313> Object-oriented </a> ( <a href=775139> comparison </a> )<li><a href=763300> Relational </a> ( <a href=763398> comparison </a> )<li><a href=8418053> Document-oriented </a></ul></table></table></div> <div class=catlinks id=catlinks><div id=mw-normal-catlinks>Categories: <ul><li>Database management systems<li>Databases<li><a href=547559> Database theory </a></ul></div></div></dd><br><p class=src id=TerminSourceInfo><em> <span itemprop=source> Wikimedia Foundation </span> . <span itemprop=source-date> 2010 </span> . </em></div></dl></div><div style="padding:5px 0px;"><b> <a title="онлайн-сервис помощи студентам"href=https://homework.academic.ru> Поможем решить контрольную работу </a> </b></div><div id=socialBar_h></div><ul class=post-nav id=TerminsNavigationBar><li class=prev><a title="Logical schema"href=https://en-academic.com/dic.nsf/enwiki/520864> Logical schema </a><li class=next><a title="Physical schema"href=https://en-academic.com/dic.nsf/enwiki/520868> Physical schema </a></ul><div class=other-info><div class=holder><h3 class=dictionary>Look at other dictionaries:</h3><ul class=terms-list><li><p><strong> <a href=//en-academic.com/dic.nsf/enwiki/11635784> Design for Living (film) </a> </strong> — Design for Living Directed by Ernst Lubitsch Produced by Ernst Lubitsch …   <span class=src2> Wikipedia </span></p><li><p><strong> <a href=//en-academic.com/dic.nsf/enwiki/4221599> Database administration and automation </a> </strong> — Database administration is the function of managing and maintaining database management systems (DBMS) software. Mainstream DBMS software such as Oracle, IBM DB2 and Microsoft SQL Server need ongoing management. As such, corporations that use… …   <span class=src2> Wikipedia </span></p><li><p><strong> <a href=//en-academic.com/dic.nsf/enwiki/11616169> Database Deployment Manager </a> </strong> — Developer(s) The Unauthorized Frog project Stable release 0.1e Operating system Windows 2000, XP and Vista, Linux License …   <span class=src2> Wikipedia </span></p><li><p><strong> <a href=//en-academic.com/dic.nsf/enwiki/3227629> Design history file </a> </strong> — is a compilation of documentation that describes the design history of a finished medical device. The design history file, or DHF, is part of regulation introduced in 1990 when the U.S. Congress passed the Safe Medical Devices Act, which… …   <span class=src2> Wikipedia </span></p><li><p><strong> <a href=//en-academic.com/dic.nsf/enwiki/547559> Database theory </a> </strong> — encapsulates a broad range of topics related to the study and research of the theoretical realm of databases and database management systems. Theoretical aspects of data management include, among other areas, the foundations of query languages,… …   <span class=src2> Wikipedia </span></p><li><p><strong> <a href=//en-academic.com/dic.nsf/enwiki/3601915> Design for Dreaming </a> </strong> — (1956) is a musical sponsored film about a woman (played by dancer and choreographer Tad Tadlock; real name Thelma Tadlock ) who dreams about a masked man (dancer and choreographer Marc Breaux) taking her to the 1956 General Motors Motorama at… …   <span class=src2> Wikipedia </span></p><li><p><strong> <a href=//en-academic.com/dic.nsf/enwiki/4849> Database </a> </strong> — A database is an organized collection of data for one or more purposes, usually in digital form. The data are typically organized to model relevant aspects of reality (for example, the availability of rooms in hotels), in a way that supports… …   <span class=src2> Wikipedia </span></p><li><p><strong> <a href=//en-academic.com/dic.nsf/enwiki/5021> Database normalization </a> </strong> — In the design of a relational database management system (RDBMS), the process of organizing data to minimize redundancy is called normalization. The goal of database normalization is to decompose relations with anomalies in order to produce… …   <span class=src2> Wikipedia </span></p><li><p><strong> <a href=//en-academic.com/dic.nsf/enwiki/3895092> Database refactoring </a> </strong> — A database refactoring is a simple change to a database schema that improves its design while retaining both its behavioral and informational semantics. A database refactoring is conceptually more difficult than a code refactoring; code… …   <span class=src2> Wikipedia </span></p><li><p><strong> <a href=//en-academic.com/dic.nsf/enwiki/11616168> Database Console Commands (Transact-SQL) </a> </strong> — The Database Console Commands (DBCC) are a series of statements in Transact SQL programming language to check the physical and logical consistency of a Microsoft SQL Server database.[1] These commands are also used to fix existing issues.[1] They …   <span class=src2> Wikipedia </span></p></ul></div></div></div></div><div id=ad_bottom></div><div id=footer><div id=liveinternet><a href=https://www.liveinternet.ru/click;academic target=_blank> <img alt height=31 id=licntC2FD src=data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAEALAAAAAABAAEAAAIBTAA7 style=border:0 title=LiveInternet width=31> </a><script>(function(d,s){d.getElementById("licntC2FD").src=
            "https://counter.yadro.ru/hit;academic?t44.6;r"+escape(d.referrer)+
            ((typeof(s)=="undefined")?"":";s"+s.width+"*"+s.height+"*"+
            (s.colorDepth?s.colorDepth:s.pixelDepth))+";u"+escape(d.URL)+
            ";h"+escape(d.title.substring(0,150))+";"+Math.random()})
            (document,screen)</script></div><div id=restrictions>18+</div> © Academic, 2000-2021 <ul><li>Contact us: <a href=# id=m_s> Technical Support </a> , <a href=# id=m_a> Advertising </a></ul><div><a href=//partners.academic.ru/partner_proposal.php> Dictionaries export </a> , created on PHP, <div class="img joom"></div> Joomla, <div class="img drp"></div> Drupal, <div class="img wp"></div> WordPress, MODx.</div></div><div id=contextmenu><ul id=context-actions><li><a data-in=masha> Mark and share </a><li class=separator><li><a data-in=academic> Search through all dictionaries </a><li><a data-in=translate> Translate… </a><li><a data-in=internet> Search Internet </a></ul><ul id=context-suggestions></ul></div><div style="top: 1075px; left: 240px;"id=sharemenu><h3>Share the article and excerpts</h3><ul class=smm><li class=vk><a onclick="share('vk'); return false;"href=#> </a><li class=ok><a onclick="share('ok'); return false;"href=#> </a><li class=fb><a onclick="share('fb'); return false;"href=#> </a><li class=tw><a onclick="share('tw'); return false;"href=#> </a><li class=gplus><a onclick="share('g+'); return false;"href=#> </a><li class=mailru><a onclick="share('mail.ru'); return false;"href=#> </a><li class=lj><a onclick="share('lj'); return false;"href=#> </a><li class=li><a onclick="share('li'); return false;"href=#> </a></ul><div id=share-basement><h5>Direct link</h5><a href id=share-directlink> … </a><small> Do a right-click on the link above <br> and select “Copy Link” </small></div></div><script async src=/js/academic.min.js?20210723></script><div id=ad_right><div class=banner><div id=ACD_ATFR_300n></div></div><div class="banner sticky"><div id=ACD_MIDR_300c></div></div></div></div><div id=div-gpt-ad-bottom><script>googletag.cmd.push(function() { googletag.display('div-gpt-ad-bottom'); });</script></div><div id=div-gpt-ad-4fullscreen></div><script>(function(m,e,t,r,i,k,a){m[i]=m[i]||function(){(m[i].a=m[i].a||[]).push(arguments)};
   m[i].l=1*new Date();k=e.createElement(t),a=e.getElementsByTagName(t)[0],k.async=1,k.src=r,a.parentNode.insertBefore(k,a)})
   (window, document, "script", "https://mc.yandex.ru/metrika/tag.js", "ym");

   ym(70309897, "init", {
        clickmap:false,
        trackLinks:true,
        accurateTrackBounce:false
   });</script><noscript><div><img style="position:absolute; left:-9999px;"alt src=https://mc.yandex.ru/watch/70309897></div></noscript><script>var _comscore = _comscore || [];
  _comscore.push({ c1: "2", c2: "23600742" });
  (function() {
    var s = document.createElement("script"), el = document.getElementsByTagName("script")[0]; s.async = true;
    s.src = (document.location.protocol == "https:" ? "https://sb" : "http://b") + ".scorecardresearch.com/beacon.js";
    el.parentNode.insertBefore(s, el);
  })();</script><noscript><img src=//b.scorecardresearch.com/p?c1=2&c2=23600742&cv=2.0&cj=1></noscript><link href=/css/academic_v2.css?20210501a rel=stylesheet><link href=/css/mobile-menu.css?20190810 rel=stylesheet>