Question about what the content should be for a database standards document

Hi Experts,
I am working as development DBA in a J2EE project and have a task to create a database standards document. The document should be used as a reference by the developers when they submit requests for database changes - like adding or making changes to the database schemas (adding tables/modifying them etc.). I thought of what would be the right content for this type of standards document and I think that such a document should have the following as database standards:
1) Naming standards for the database objects.
This will include all database objects like tables, columns, primary keys, foreign keys, views, triggers, procedures etc.. For example a standard can be defined like: all primary keys should be named as PK_TABLENAME. All indexes should be named as <TABLE_NAME>_IDX01 etc.
2) Use of Oracle reserved words should be avoided in the schema object names.
3) The names should be descriptive so as to make their purpose self evident.
4) Wherever possible, tables should have primary keys.
5) Wherever possible columns should be defined NOT NULL -as it helps performance (Indexes on NULLABLE columns are not used by the optimizer).
6) When submitting request for a new table/tables, typical queries against these new tables should also be worked out and based on that indexes that will be needed for the new tables should be defined. In case this is not clear at the time of initial table creation, it should be clarified within 3 weeks (just a reasonable period to be mentioned here).
Is this fair enough content forthe standards document or does it miss some important aspects? Note that we do not have to cover in this document standards for database creation or RAC installation etc. It is a document of standards to be followed by developers as a reference when submitting database changes. I will be thankful for your review.
(Oracle version info: We are on Oracle 11.2.0.2 on Solaris 10.)
Thanks,
OraserN

rp0428 wrote:
>
5) Wherever possible columns should be defined NOT NULL -as it helps performance (Indexes on NULLABLE columns are not used by the optimizer).
>
That isn't true - post a link that supports that statement.
Heap indexes do not INDEX null values but indexes on NULLABLE columns are most certainly used by the optimizer for use cases where your query is looking for non-null values.
Columns should be defined NOT NULL when your business requirement is that the column should ALWAYS have a value. You can, of course, adopt some standard default value (e.g. 'U' for unknown) and make an otherwise NULLABLE column NOT NULL so that each row WILL be indexed. That may only be useful if you want to be able to search for rows that have that value and those rows are in the minority.Then I must be wrong....I will modify the standard as:
5) Whenever the business requirement is such that the column will allways end up having a value , then all such columns should be defined as NOT NULL. Also if a column can be defined to have a default value then this default value should also be specified.
Hope this is more proper then earlier and thanks a lot for the review!!
Edited by: orausern on May 13, 2013 9:53 AM

Similar Messages

  • Question about what computer I should get.

    I'm looking for a new computer that would be able to run http://www.adobe.com/products/creativesuite/design​.edu.html. Does it matter what type of computer I get?

    The link takes you to a suite.  Inside you'll see it includes PhotoShop, Illustrator, InDesign and few other goodies.
    Looking at Photoshop, you can see what it requires...
    Intel® Pentium® 4 or AMD Athlon® 64 processor
    Microsoft® Windows® XP with Service Pack 3; Windows Vista® Home Premium, Business, Ultimate, or Enterprise with Service Pack 1 (Service Pack 2 recommended); or Windows 7
    1GB of RAM
    1GB of available hard-disk space for installation; additional free space required during installation (cannot install on removable flash storage devices)
    1024x768 display (1280x800 recommended) with qualified hardware-accelerated OpenGL graphics card, 16-bit color, and 256MB of VRAM
    Some GPU-accelerated features require graphics support for Shader Model 3.0 and OpenGL 2.0
    DVD-ROM drive
    QuickTime 7.6.2 software required for multimedia features
    Broadband Internet connection required for online services and to validate Subscription Edition (if applicable) on an ongoing basis* 
    Illustrator needs
    Intel® Pentium® 4 or AMD Athlon® 64 processor
    Microsoft® Windows® XP with Service Pack 3; Windows Vista® Home Premium, Business, Ultimate, or Enterprise with Service Pack 1; or Windows 7
    1GB of RAM
    2GB of available hard-disk space for installation; additional free space required during installation (cannot install on removable flash storage devices)
    1024x768 display (1280x800 recommended) with 16-bit video card
    DVD-ROM drive*
    Broadband Internet connection required for online services and to validate Subscription Edition (if applicable) on an ongoing basis
    Indesign likes
    Intel® Pentium® 4 or AMD Athlon® 64 processor
    Microsoft® Windows® XP with Service Pack 2 (Service Pack 3 recommended); Windows Vista® Home Premium, Business, Ultimate, or Enterprise with Service Pack 1; or Windows 7
    1GB of RAM (2GB recommended)
    1.6GB of available hard-disk space for installation; additional free space required during installation (cannot install on removable flash storage devices)
    1024x768 display (1280x800 recommended) with 16-bit video card
    DVD-ROM drive
    Adobe® Flash® Player 10 software required to export SWF files
    Broadband Internet connection required for online services and to validate Subscription Edition (if applicable) on an ongoing basis*
    In general, you can run this software on any decent laptop..... however.... choose one with a large screen like 17" or larger.  You'll quickly find it easier to navigate around with a larger screen with all the buttons and controls.

  • General Question about what the work that you created.

    If I took an image online, let's say of a cat. Then I used Live Trace and then went to Object - Expand and changed the color; would that qualify as it being my design? And what I mean is would that qualify as something you could sell and call your design. (Like if you sold it as a logo.)
    I can easily use the Pen tool to trace any image, but I find that this option saves a pretty impressive amount of time.

    (Like if you sold it as a logo.)...
    ...or try a site like http://www.freedigitalphotos.net/?
    No. A logo, by definition, is a piece of artwork for which the owner can claim copyright. Never use a piece of stock photography as the basis for something that you try to pass off as a client's logo.
    Imagine the trouble you'd find yourself in after you charged a client for a "logo", he tried to register it, and found out that it is not original at all, but just a cheezy knock-off of some royalty-free stock photography that anyone else in the world can also copy and thereby claim as much "rights" to as you.
    JET

  • TS2446 I forgot the security question about what was my first car and what is my favorite car! What is the solution to change that? please help me, thank you in advance Leo

    I forgot the security question about what was my first car and what is my favorite car! What is the solution to change that? please help me, thank you in advance Leo

    If you have a rescue email address set up on your account then you can try going to https://appleid.apple.com/ and click 'Manage your Apple ID' on the right-hand side of that page and log into your account. Then click on 'Password and Security' on the left-hand side of that page and on the right-hand side you might see an option to send security question reset info to your rescue email address.
    If you don't have a rescue email address set up then go to Express Lane  and select 'iTunes' from the list of 'products' in the middle of the screen.
    Then select 'iTunes Store', and on the next screen select 'Account Management'
    Next choose 'iTunes Store Account Questions' or 'iTunes Store account security' (it appears to vary by country) and fill in that you'd like your security questions/answers reset.
    You should get an email reply within about 24 hours (and check your Spam folder as well as your Inbox)

  • What image resolution should use for the new iPad with Retina display?

    What image resolution should use for the new iPad with Retina display?

    http://www.ipadcasereview.com/ipad-3-cases-and-covers-top-of-page/#sthash.hZKnxH ku.dpbs
    these are the best

  • After installing Leopard, my G4 will no longer boot in OS 9.22. (Classic still works, but I need it to boot in OS 9.)  Any clues about what the Leopard installer might have done to my machine that rendered OS 9 boot unusable? What can I do to fix it?

    After installing Leopard, my G4 will no longer boot in OS 9.22.
    (Classic still works, but I need it to boot in OS 9.)
    Any clues about what the Leopard installer might have done to my machine that rendered OS 9 boot unusable? (And what can I do to fix it?)
    Details:
    G4 Gigabit Ethernet
    Boot ROM version: 4.2.8fl
    Accelerator card added: 1.6 MHz
    1.5 Gig Ram
    I have erased the partition that had Leopard installed on it.
    I zapped the pram.
    In Open Firmware, I "reset-nvram", and then "reset-all"
    I tried to reinstall G4 FW Update 4.2.8, but that must be done when booted from OS 9, and of course, that's the problem: it won't boot into 9.
    I tried restarting from 9.2.1 DVD.
    I tried restarting from an external firewire drive containing OS 9.2.2.
    I tried moving a fresh OS 9.2.2 system folder into an empty partition on an internal hard drive. (Partition was created WITH OS 9 drivers installed.)
    All attempts to boot into OS 9 give me the same results - grey screen - no spinning beach ball, no icons or logos - just a blank grey screen.
    This machine still works fine in OS 10.3 and 10.4, and it worked fine for many years booting into OS 9, until I installed Leopard, and I haven't been able to boot into OS 9 since then, although I have done considerable research online and tried many things.
    I have since learned that this machine does not support Leopard - 10.5. Fine, but how did it break 9.2.2?
    Any help greatly appreciated.

    Thanks for checking in, BDAQua.
    Problem solved.
    In the docs that came with my Powerlogix accelerator card, I found this sentence buried:
    "If you reset the PRAM, the NVRAM code for OS9 compatibility is cleared, so you will have to boot from the Firmawre Update CD and perform this process again in order to boot in OS9."
    The "process" it's referring to is the process of setting up the NVRAM for booting into OS9 from the CD.
    Fortunately, I was able to find the disk, and it worked as expected. I can now, once again boot into OS9.
    Conclusion: My (unadvised) attempt to load Leopard on this old machine apparently reset the PRAM on the accelerator card and cleared the NVRAM code for OS9 boot. Although I did attempt to reset the NVRAM via Open Firmware, it did not reset it on the accelerator card.
    So, thank you BDAQua, for your "Ah yes" . . . that's all I needed to steer me in the right direction.
    Gratefully,
    tupester

  • One question about Pricing and Conditions puzzle me for a long time!

    One question about Pricing and Conditions puzzle me for a long time.I take one example to explain my question:
    1-First,my sale order use pricing procedure RVAA01.
    2-Next,the pricing procedure RVAA01 have some condition type,such as EK01(Actual Costs),PR00(Price)....,and so on.
    3-Next,the condition type PR00 define the Access Sequences PR00 as it's Access Sequences.
    4-Next,the Access Sequences PR00 have some Condition tables,such as:
         table 118 : "Empties" Prices (Material-Dependent)
         table 5 : Customer/Material
         table 6 : Price List Type/Currency/Material
         table 4 : Material
    5-Next,I need to maintain Condition tables's Records.Such as the table 5(Customer/Material).I guess the sap would supply one screen for me to input the data of table 5.At this screen,the sap would ask me to select one table,such as table 5.When I select the table 5,the sap would go to the screen to let me input the data of table 5.But when I use the T-CODE VK31 or VK32 to maintain Condition tables's Record,I found it's total different from my guess:
    A-First,I can not found one place for me to open the table,such as table 5,to let me input the data?
    B-Second,For example,when I select the VK31->Discounts/Surcharges->By Customer/Material,the sap show the grid view at the right side.At the each line of the grid view,you need to select the Condition Type at the first field.And this make me confused very much.Why the sap need me to select one Condition Type but not the Condition table?To the normal logic,it ought not to select Condition table but not the Condition Type!
    Dear all,I'm a new one in sd.May be this is a very stupid question.But it did puzzle me for a long time.If any one can  explain this question in detail and let me understand the concept,I will appreciate him/her very much.Thank you.

    Hi,
    You said that you are using the T.codes VK31 or VK32.
    These transaction codes are used to enter condition records for standard condition types. As you can see a grid left side having all the standard condition types like price, discounts, taxes, frieghts.
    Pl check using T.code VK11 OR VK12 (change mode)
    Here you can enter the required condition type, in the intial screen. (like PR00, MWST, K004, K005 .....etc)
    After giving the condition type, press enter or click on Combinations icon on top of the screen. Then you can see all the condition tables which you maintained for that condition type. Like as you said table 118, table 5, table 6 and table 4.
    You can select any table and press enter, then you can go into the screen in which you have all the field cataglogues you maintained for that table. For example you selected combination of Customer/Material (table 5) then after you press enter then you can see customer field on top, and material fields.
    You can give all the required values and save the conditon record.
    Hope this is clear.
    REWARD IF HELPFUL.
    Regards,
    praveen

  • Whats the BEST Deployment Practice for appsTier (2 Node) with RAC Database

    Hi All,
    Whats the BEST Deployment Practice for appsTier on Shared APPL_TOP between two application tier Nodes and a RAC Database.
    Regards
    Satish

    Satish,
    Could you elaborate; are you looking for how to distribute the tiers(forms, web, conc., etc.); are you asking about PCP (parallelt concurrent processing)..
    Regards,

  • Can anyone tell me how i go about downloading the free dock app for the ipod touch?

    hi,can anyone tell me how to go about downloading the free dock app for the ipod touch gen 4?

    What "free dock app"?

  • Hi Whats the best solar charger for my i phone 4

    Hi. Whats the best solar charger for my iphone 4. Thanks  James

    Hi James,
    I do a lot of biking and I found a company called Misuny that make a solar battery charger that your iphone slides into. You can charge it via USB and when I'm out and about it tops itself up by the solar panel. When your iPhone is running low on battery power just press the power button twice and it transfers the charge. It solved my problems! (although i cant make excuses to my wife that my battery ran out anymore!)
    misuny.co.uk for UK orders and i think misunycanada.com for US.
    Cheers!
    Jason

  • Do any imacs come with a touch screen if not whats the best touch  screen for a 2012 13inch macbook air

    Do any imacs come with a touch screen if not whats the best touch  screen for a 2012 13inch macbook air?
    Thx

    No they don't.
    Apple's position is that touchscreens are for tablets and phones (in Apple's case the iPad and iPhone) and that OSX does not need a touchscreen - the trackpad and/or mouse is more flexible.
    That may change in future but no one here knows.
    In answer to your second question, there is NO touch screen available for the MacBook Air (2012 or any other vintage), nor for the MacBook Pro.  If you must have a touchscreen, consider an iPad with a stand and a wireless keyboard.  Alternatively, a Windows 8.1 laptop or desktop???

  • What format i should use for my external hard drive that can be used interchangeably between mac and pc?

    What format i should use for my external hard drive that can be used interchangeably between mac and pc?

    Usually Fat32/MS-DOS as mentioned, but that has several limitatiuns, like 4GB filesize limit.
    One option is MacDrive for you PCs... allows them to Read/Write HFS+...
    http://www.mediafour.com/products/macdrive/
    More options...
    NTFS-3G Stable Read/Write Driver...
    http://www.ntfs-3g.org/
    MacFUSE: Full Read-Write NTFS for Mac OS X, Among Others...
    http://www.osnews.com/story/16930

  • How to change the Content-Transfer-Encoding for the fmddataa.fmd from base

    Dear all,
       When I using this SO_DOCUMENT_REPOSITORY_MANAGERto send email,I find the fmddata.fmd  file have been changed  to binary file attachment. I don't hope so.any one have good idea to avoid this case occur?
      Can you tell me how to change the Content-Transfer-Encoding for the fmddata.fmd from base64 to quoted-printable.  The quoted-printable is the Content-Transfer-Encoding for text file with extension .txt
    Best Regards,
    Merry

    Thank you

  • Does anyone know what the default font is for MacMail?

    Does anyone know what the default font is for the Mail program? My son changed my mail font and I want to change it back, but I can't remember what the original default is! Anyone? Thanks!

    I rarely use Mail (normally use Gmail in Safari) so I am 99.99% sure mine is still at the default. It is Helvetica 12.

  • Does anyone know what the download size is for iOS 7.0.3?

    Does anyone know what the download size is for iOS 7.0.3?

    It depends on your device.  For my devices it ranged from 1.1 - 1.3GB.

Maybe you are looking for