{"id":102,"date":"2012-09-10T07:51:44","date_gmt":"2012-09-10T07:51:44","guid":{"rendered":"http:\/\/regina-whipp.com\/blog\/?p=102"},"modified":"2019-05-10T22:05:06","modified_gmt":"2019-05-11T02:05:06","slug":"database-standards","status":"publish","type":"post","link":"https:\/\/regina-whipp.com\/blog\/?p=102","title":{"rendered":"My Database Standards&#8230;"},"content":{"rendered":"<p><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\"><span style=\"color: #000000;\">There is a discussion, *Database Standards when using outside Contractors*, in a group\u00a0that I have been watching\u00a0and it got me to thinking\u2026 \u00a0While I have a set of standards (and a <a title=\"Model Database\" href=\"http:\/\/www.access-diva.com\/d11.html\" target=\"_blank\" rel=\"noopener noreferrer\">Model Database<\/a>), I have not written them down.\u00a0 So every time I need to ask a Subcontractor to do some work for me I have to rattle them off and hope I remember them all which always results in, \u201cOh, yeah, I forgot that one\u2026\u201d.\u00a0 So, why not just type them up?\u00a0 Ahem, no answer for that except that I am doing it now!<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\"><span style=\"color: #000000;\">You may think this is a waste of time and why bother\u2026 but consider the Developer coming in behind you.\u00a0 I get a lot of business from people that already have a database that needs some upgrading or tweaking AND, I spend more time trying to figure out what everything does and\/or where it does it then implementing their request because no Standards were followed.\u00a0 And for you folks that think spending the time to fix the Captions on Fields and Labels is wasted, well,\u00a0let\u2019s look at the example below\u2026<\/span><\/span><\/span><\/p>\n<div id=\"attachment_138\" style=\"width: 189px\" class=\"wp-caption alignright\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-138\" class=\"wp-image-138\" title=\"Ponder\" src=\"http:\/\/regina-whipp.com\/blog\/wp-content\/uploads\/2012\/09\/Ponder-235x300.png\" width=\"179\" height=\"229\" srcset=\"https:\/\/regina-whipp.com\/blog\/wp-content\/uploads\/2012\/09\/Ponder-235x300.png 235w, https:\/\/regina-whipp.com\/blog\/wp-content\/uploads\/2012\/09\/Ponder-117x150.png 117w, https:\/\/regina-whipp.com\/blog\/wp-content\/uploads\/2012\/09\/Ponder.png 749w\" sizes=\"auto, (max-width: 179px) 100vw, 179px\" \/><p id=\"caption-attachment-138\" class=\"wp-caption-text\">(c) Toon-a-Day.com<\/p><\/div>\n<address>If Text15.Value = 0 And Text16.Value = 0 And Text19.Value = 0 Then<\/address>\n<address>\u00a0\u00a0\u00a0\u00a0\u00a0nbr = Text17.Value<\/address>\n<address>\u00a0\u00a0\u00a0\u00a0\u00a0x = modRound.RoundToNearest(nbr, 10, vb_roundup)<\/address>\n<address>\u00a0\u00a0\u00a0\u00a0\u00a0Text193.Value = x<\/address>\n<address>Else<\/address>\n<address>\u00a0\u00a0\u00a0\u00a0\u00a0nbr = (([Text15] + [Text16] + [Text19]) * [Text17]) * (1 &#8211; ([Text181] * -1))<\/address>\n<address>\u00a0\u00a0\u00a0\u00a0\u00a0x = modRound.RoundToNearest(nbr, 10, vb_roundup)<\/address>\n<address>\u00a0\u00a0\u00a0\u00a0\u00a0Text193.Value = x<\/address>\n<address>End If<\/address>\n<p><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\"><span style=\"color: #000000;\">\u2026enough said!<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\"><span style=\"color: #000000;\">Now you\u2019re asking if all my databases follow these Standards\u2026 the answer is *No*.\u00a0 However, the deviations were out of necessity not laziness.\u00a0 Standards are great and help everyone, especially if multiple Developers are working on the same project, but sometimes there are legitimate reasons to digress.\u00a0 When this happens make sure you tell everyone involved and document why and what you did.\u00a0 And finally, the Standards\u2026<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\"><span style=\"color: #000000;\">General\u2026<\/span><\/span><\/span><\/p>\n<ol>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Use UNC Mapping<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Refresh Links\/Relink Module with a *Persistent Connected* form<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Uncheck *Track name Autocorrect info*<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\"><a href=\"http:\/\/www.access-diva.com\/d12.html\" target=\"_blank\" rel=\"noopener noreferrer\">Set Subdatasheet to [None] but not before Step 3 or it will not stick<\/a><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Check *Use four-digit year formatting*.\u00a0 You can change this on the form for data entry should the Client want two digit years<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Uncheck *Show Smart Tags on Datasheets*<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Uncheck *Compact on Close*, this has been known to cause corruption<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">When all done designing hide the Navigation Pane<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Document any passwords and any other pertinent information (and honestly, we can skip the one on the Code)<sup>15<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">No ActiveX controls<sup>14<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">All Databases must have Version included the Caption of the Main Menu or Switchboard<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">All hidden fields will use #FF99CC as the Back Color<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #3366ff;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Uncheck *Enable Layout View*<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #3366ff;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Uncheck *Enable design changes for tables in Datasheet View*<\/span><\/span><\/span><\/li>\n<\/ol>\n<p><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\"><span style=\"color: #000000;\">Code (VB Editor)\u2026<\/span><\/span><\/span><\/p>\n<ol>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">All Modules must contain *Option Compare Database*, as well as, *Option Explicit*.\u00a0 (I have seen databases without either!)<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Comment code<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Error Handling and <strong>not<\/strong> *On Error Resume Next* across the board<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">No Wizard use<sup>2<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Use UPPER CASE for all SQL keywords<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Indent code for easier reading<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Use continuation marks so I don\u2019t have to scroll all the way to the right to see all your code<\/span><\/span><\/span><\/li>\n<\/ol>\n<p><span style=\"font-family: Tahoma; color: #000000; font-size: medium;\">\u00a0<\/span><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\"><span style=\"color: #000000;\">Tables\u2026<\/span><\/span><\/span><\/p>\n<ol>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Must follow my Naming Conventions<sup>1<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Field Size convention and not the Access default<sup>3<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Every table must have a Primary Key<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">The Primary Key should also be AutoNumber AND mean nothing to anything except Access<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Child and Junction tables\u00a0should also contain a Primary Key, as well as, appropiate\u00a0Foreign Keys<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">No spaces, underscores\u00a0and\/or other wildcard characters in names<sup>16<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Non-use of the *Field Caption* property at the Table level<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Non-use of *Validation Rule\/Text* at the Table level<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Non-use of Smart Tags<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">No data entry performed via the tables<sup>11<\/sup><\/span><\/span><\/span><\/li>\n<\/ol>\n<ul>\n<li><span style=\"font-family: Tahoma; color: #000000; font-size: medium;\">\u00a0<\/span><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Fields\u2026<\/span><\/span><\/span><\/li>\n<li>\n<ul>\n<li><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Must follow my Naming Convention<sup>1<\/sup> and be consistent (Same name used across the Tables)<sup>5<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Field Names must mean something, i.e.: no abbreviated names<sup>6<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Non-use of Look-Up Wizard, Attachment and\/or OLE Object<sup>4<\/sup> and\/or Hyperlink fields<sup>7<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\"><a href=\"http:\/\/allenbrowne.com\/AppIssueBadWord.html\" target=\"_blank\" rel=\"noopener noreferrer\">Reserved Words<\/a> for Access and\/or SQL Server not used<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">If you must allow Yes\/No fields they should have a Default Value and not allow NULL\u2019s<sup>8<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">No spaces and\/or wildcard characters<sup>16<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">No image storage in the Database<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">No unnecessary storing of calculated values<sup>9<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Set *Allow AutoCorrect* to No<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Access 2003 and lower remove the Default 0 (zero) that Access places on Number fields unless it will be needed<\/span><\/span><\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\"><span style=\"color: #000000;\">Forms\u2026<\/span><\/span><\/span><\/p>\n<ol>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">My default colors is to be used unless otherwise specified by the Client<\/span><\/span><\/span>\n<ol>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Main Menu or Switchboard &#8211; #FFFFFF<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Main Forms &#8211; #E6E4DD<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Forms used to filter or open Reports &#8211; #E3EBC7<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Maintenance Forms &#8211; #F2F1EE<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Allow Design Changes set to <strong>No<\/strong> <span style=\"color: #999999;\">(added 11.8.2015)<\/span><\/span><\/span><\/span><\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<p style=\"text-align: left;\">\u00a0<span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\"><span style=\"color: #000000;\">This\u2026<\/span><\/span><\/span><span style=\"font-family: Tahoma; color: #000000; font-size: medium;\">\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-122 size-full\" title=\"Yellow Form\" src=\"http:\/\/regina-whipp.com\/blog\/wp-content\/uploads\/2012\/09\/YellowForm.png\" width=\"725\" height=\"308\" srcset=\"https:\/\/regina-whipp.com\/blog\/wp-content\/uploads\/2012\/09\/YellowForm.png 725w, https:\/\/regina-whipp.com\/blog\/wp-content\/uploads\/2012\/09\/YellowForm-300x127.png 300w, https:\/\/regina-whipp.com\/blog\/wp-content\/uploads\/2012\/09\/YellowForm-150x63.png 150w, https:\/\/regina-whipp.com\/blog\/wp-content\/uploads\/2012\/09\/YellowForm-400x169.png 400w\" sizes=\"auto, (max-width: 725px) 100vw, 725px\" \/><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\"><span style=\"color: #000000;\">\u2026is unacceptable, aside from being impossible to read.\u00a0 (Oh, yes there\u2019s writing, it\u2019s in white!)\u00a0 To see another example&#8230; <a href=\"http:\/\/rogersaccessblog.blogspot.com\/2012\/06\/really-bad-design-decisions-case-study.html\" target=\"_blank\" rel=\"noopener noreferrer\">Roger&#8217;s Access Blog:\u00a0Really Bad Design Decisions<\/a><\/span><\/span><\/span><\/p>\n<ol>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Use of Standard Fonts<sup>12<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Size \u2013 no scrolling to see the entire form<sup>10<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Font size for data entry set to 9pt<sup>13<\/sup><\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Give Forms meaningful names<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Controls on forms should evenly spaced and lined up, i.e.: Close button, if you have one, should be placed in the upper right hand corner.\u00a0 Users are accustomed to the *<strong>x<\/strong>* at the upper right corner, moving the Close, to say, the lower right may cause confusion.<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Check the Tab Order<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #339966;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Set Border Size to *Thin*<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #339966;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Set Auto Resize too *Yes*<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #339966;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Set Shorctut Menu to *No*<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #339966;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Set Record Selectors to *No*<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #339966;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Set Navigation Buttons to *No*<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #339966;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Set Min Max Buttons to *None*<\/span><\/span><\/span><\/li>\n<\/ol>\n<ul>\n<li><span style=\"font-family: Tahoma; color: #000000; font-size: medium;\">\u00a0<\/span><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Buttons\u2026<\/span><\/span><\/span><\/li>\n<li>\n<ul>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Uniform Images and\/or Captions across all Forms<\/span><\/span><\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\"><span style=\"color: #000000;\">Reports\u2026<\/span><\/span><\/span><\/p>\n<ol>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Same as Forms minus the Button and scrolling restriction<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Must contain a Revision Version and Date in the lower left hand corner<\/span><\/span><\/span><\/li>\n<\/ol>\n<p><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\"><span style=\"color: #000000;\">Queries\u2026<\/span><\/span><\/span><\/p>\n<ol>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Use of UNION queries sparingly, if at all<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Give Queries meaningful names<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Use of MAKE TABLE queries sparingly, if at all<\/span><\/span><\/span><\/li>\n<\/ol>\n<p><span style=\"font-family: Tahoma; color: #000000; font-size: medium;\">\u00a0<\/span><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\"><span style=\"color: #000000;\">Relationships\u2026<\/span><\/span><\/span><\/p>\n<ol>\n<li><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><span style=\"font-size: medium;\">Turn on Referential Integrity Enforced for all Relationships and&#8230;<\/span><\/span><\/span><\/li>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">Apply *Cascading Updates* but not *Cascading Deletes*<sup>17<\/sup><\/span><\/span><\/span><\/li>\n<\/ol>\n<ul>\n<li><span style=\"color: #000000;\"><span style=\"font-size: medium;\"><span style=\"font-family: Tahoma;\">And just so you are not stuck with just my point of view, have a look at <a href=\"http:\/\/allenbrowne.com\/ser-43.html\">Microsoft Access tips Default Forms and Reports by Allen Browne<\/a>.\u00a0 You will also find how to make a Default Database for use within Access Templates at the bottom of the page.<\/span><\/span><\/span><\/li>\n<\/ul>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>1. <\/sup><a title=\"My Naming Conventions\" href=\"http:\/\/www.access-diva.com\/d1.html\" target=\"_blank\" rel=\"noopener noreferrer\">My Naming Conventions<\/a><\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>2.<\/sup>\u00a0The Wizard produces useless lines of code and I find it sloppy.\u00a0 I even use my standard for Navigation Buttons because the *error* message the Wizard produces when you reach the first or last record is useless.<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>3.<\/sup>\u00a0Access has Defaults like TEXT, 50.\u00a0 (Access 2010 sets the Default to TEXT, 255.)\u00a0 I prefer the field size fits the data that is being entered.\u00a0 So, for State, where I only want to store the two character abbreviation I would make that field TEXT, 2.<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>4. <\/sup>While there is an <a href=\"http:\/\/regina-whipp.com\/blog\/?page_id=49\" target=\"_blank\" rel=\"noopener noreferrer\">equivalent for the OLE Object\u00a0on SQL Server<\/a>, I prefer not to use it.\u00a0 It takes up space and if I don&#8217;t upsize could cause the database to reach its 2 GB limit rather quickly.<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>5.<\/sup>\u00a0If you used apAssociateID as the PK in tblAssociateProfiles then in tblActivities the field would be call aAssociateID<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>6.<\/sup>\u00a0I once spent an hour trying to figure out what AYE Yes\/No meant.\u00a0 It stood for Are You Employed?<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>7.<\/sup>\u00a0None of those Data Types transfer to an SQL Server, so using them in Tables is not thinking ahead should the database be upsized.<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>8.<\/sup>\u00a0Yes\/No fields in an Access table can be empty and translate to <del>contain<\/del>\u00a0NULL <del>but not so<\/del> on an SQL Server.\u00a0\u00a0Once upsized the field becomes a BIT which if NULL will not allow editing or adding to that Table.<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>9.<\/sup>\u00a0The only justification for storing calculated values is because you need it for historical for say, invoicing.<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>10. <\/sup>Scrolling to see additional information in the Detail section is fine.\u00a0 Scrolling because the entire form does not fit on the screen is not.\u00a0 Read the applications Profile, which either I fill out or the Client fills out to find out the smallest monitor and make your form fit on that.<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>11.<\/sup>\u00a0Tables are for storage not for Data Entry, not even DataSheet view.\u00a0 Create a form and you can make it look like a table.<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>12.<\/sup>\u00a0Tahoma or Verdana.\u00a0 Whichever one is used it must be the same one throughout the database.<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>13.<\/sup>\u00a0While the font size on the form can be 8pt, I prefer 9pt for data entry.\u00a0 It is easier to read.<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>14.<\/sup>\u00a0Using ActiveX Controls has historically caused problems if the End User doesn\u2019t have the same version.\u00a0 There is always another way to do it without an ActiveX Control<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>15.<\/sup>\u00a0There are too many stories of how the Programmer left and took all the ADMIN passwords with them.\u00a0 If you don\u2019t want anyone to see your coding then don\u2019t use it.<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>16.<\/sup>\u00a0This goes double for Underscores.\u00a0 If memory serves me correctly, this becomes an issue if you have cross paths with Oracle.<\/span><\/span><\/span><\/p>\n<p><span style=\"font-size: medium;\"><span style=\"color: #000000;\"><span style=\"font-family: Tahoma;\"><sup>17.<\/sup> Data should never be deleted, period, instead hide it from view.\u00a0 Nor should it ever be pushed to a separate Archive table!<\/span><\/span><\/span><\/p>\n<p><span style=\"color: #339966; font-size: small;\"><span style=\"font-family: Tahoma;\">Edit: Green font items were added 9.12.2012 when I realized I had forgotten them!<br \/>\n<span style=\"color: #3366ff; font-size: small;\">Edit: Blue font items were added 11.9.2012 when I realized I had forgotten them!<\/span><\/span><\/span><\/p>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_102\" class=\"pvc_stats all  \" data-element-id=\"102\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/regina-whipp.com\/blog\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>There is a discussion, *Database Standards when using outside Contractors*, in a group that I have been watching and it got me to thinking\u2026 While I have a set of standards (and a Model Database), I have not written them down. So every time I need to ask a Subcontractor to do some work for [&#8230;]<\/p>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_102\" class=\"pvc_stats all  \" data-element-id=\"102\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/regina-whipp.com\/blog\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,63],"tags":[64,18],"class_list":["post-102","post","type-post","status-publish","format-standard","hentry","category-access-tips","category-database-design","tag-access-tips","tag-database-design","odd"],"_links":{"self":[{"href":"https:\/\/regina-whipp.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/102","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/regina-whipp.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/regina-whipp.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/regina-whipp.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/regina-whipp.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=102"}],"version-history":[{"count":59,"href":"https:\/\/regina-whipp.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/102\/revisions"}],"predecessor-version":[{"id":1369,"href":"https:\/\/regina-whipp.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/102\/revisions\/1369"}],"wp:attachment":[{"href":"https:\/\/regina-whipp.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=102"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/regina-whipp.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=102"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/regina-whipp.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=102"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}