Results 1 to 9 of 9

Thread: Books/Resources on web databases?

  1. #1
    Join Date
    Nov 2008

    Books/Resources on web databases?

    Hey all,

    Having focused on front end development up until now, I'm finally getting round to my ambition to delve into a back end language, probably PHP, although the frameworks for Ruby/Python seem appealing too.

    I've already got a pretty decent handle on Python, and jumped into the (official) Django tutorial but got stumped pretty quick by the talk of databases. Same applied when I had a quick look at the Rails tutorial. It quickly struck me that the problem I'm having is that I know nothing about databases.

    With that said, it seems I might be better off starting with PHP with a view to learning MySQL in conjunction with it. Are there any recommended books/websites/guides that offer a good solid foundation on both PHP and SQL, or failing that, a decent (comprehensive) primer on SQL?


  2. #2
    Join Date
    Aug 2004
    Most of my database knowledge has come over many years of accretion, as opposed to any single book or other source. I have seen "PHP and MySQL Web Development" by Welling and Thomson mentioned in several places over the past few years, so it might be a decent place to start.

    Also, it probably would not be a bad idea to search for tutorials on "database normalization", as understanding the gist of this can take you a long way toward developing good, scalable data designs.
    "Well done....Consciousness to sarcasm in five seconds!" ~ Terry Pratchett, Night Watch

    How to Ask Questions the Smart Way (not affiliated with this site, but well worth reading)

    My Blog
    cwrBlog: simple, no-database PHP blogging framework

  3. #3
    Join Date
    Nov 2008
    Thanks, NogDog.

    Ok, I'll do a bit of digging. I tend to learn best by using a hands-on approach so I'll try to build something along with my learning.

  4. #4
    Join Date
    Aug 2013
    I don't know if this will help, but here's what I found when I was looking a few months ago:

    Dreamweaver: Creating a Data-Driven Website:

    Building a Database-Driven Web Site (Adobe):

    Building your first dynamic website:

    I wish there was more information on dynamic website development using Dreamweaver, PHP, and (MySQL) databases out there. It doesn't seem to be covered in books or classes or YouTube videos.

    I need to know how to display 16 cities and 19 vendor types (cameras, audio, food, cards, etc) on the website using Dreamweaver, PHP, and MySQL. I designed the databases using MySQL Workbench, which produces the data model (columns, Primary Keys, & secondary indexes), and using MAMP, created the databases and loaded the data into the tables.

    It's the programming in the website to display the data that's tricky to me.

  5. #5
    Join Date
    Aug 2013
    I forgot to add, for a data normalization book, one of the most readable I came across in my Database Admin days was "Database Design for Mere Mortals" by Michael J. Hernandez. Go for a used copy which is better priced.

    Remember, every piece of data has it's place. That's what normalization is. Typically, Third Normal Form (3NF) will do fine on operational data.

  6. #6
    Join Date
    Nov 2008
    Great, thanks for the links. I've never used Dreamweaver, but there's plenty of info there.

    I must admit I had no idea learning databases was going to be such an involved process on the path to learning to build web apps.

    I thought I'd struggle with the coding part the most but I actually picked up the PHP fundamentals pretty quick, although I think my background in JavaScript and general programming helped a lot with that. Even trying Python/Ruby, it's a breeze to learn the syntax and simple patterns but databases, well they've gone straight over my head!

    The most frustrating thing is that most of the big tutorials only lightly brush databases as if it's common knowledge. It's most certainly not!

  7. #7
    Join Date
    Aug 2004
    I'm at the point now where the first thing I think about in detail when starting a new project (after nailing down the essential business requirements) is the database design. If I get that part right, the rest is relatively easy (for some undefined value of "easy").
    "Well done....Consciousness to sarcasm in five seconds!" ~ Terry Pratchett, Night Watch

    How to Ask Questions the Smart Way (not affiliated with this site, but well worth reading)

    My Blog
    cwrBlog: simple, no-database PHP blogging framework

  8. #8
    Join Date
    Nov 2008
    Yeah I hear you.

    I'm surprised at just how little they are covered in a lot of the guides I mentioned. Does this mean that a lot of the "I learned to code and built a startup in 5 minutes with Rails" style apps have skimped on the DB front? Or is it just common knowledge among proper devs?

  9. #9
    Join Date
    Aug 2004
    Or just a lot of sub-optimal sites?

    Most of the stuff we'll use is not rocket science, and doesn't really need to take a long time to learn. I'm at the point now where I'm trying to learn for my day job some of the more esoteric stuff you need to optimize performance as things scale up really big and somewhat complex, and finding I still have a lot to learn.
    "Well done....Consciousness to sarcasm in five seconds!" ~ Terry Pratchett, Night Watch

    How to Ask Questions the Smart Way (not affiliated with this site, but well worth reading)

    My Blog
    cwrBlog: simple, no-database PHP blogging framework

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
HTML5 Development Center



X vBulletin 4.2.2 Debug Information

  • Page Generation 0.10212 seconds
  • Memory Usage 2,930KB
  • Queries Executed 15 (?)
More Information
Template Usage (32):
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_global_above_footer
  • (1)ad_global_below_navbar
  • (1)ad_global_header1
  • (1)ad_global_header2
  • (1)ad_navbar_below
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (1)ad_thread_first_post_content
  • (1)ad_thread_last_post_content
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)headinclude_bottom
  • (9)memberaction_dropdown
  • (1)navbar
  • (4)navbar_link
  • (1)navbar_moderation
  • (1)navbar_noticebit
  • (1)navbar_tabs
  • (2)option
  • (9)postbit
  • (9)postbit_onlinestatus
  • (9)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available (6):
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files (26):
  • ./showthread.php
  • ./global.php
  • ./includes/class_bootstrap.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/functions_navigation.php
  • ./includes/class_friendly_url.php
  • ./includes/class_hook.php
  • ./includes/class_bootstrap_framework.php
  • ./vb/vb.php
  • ./vb/phrase.php
  • ./includes/functions_facebook.php
  • ./includes/functions_calendar.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_notice.php
  • ./packages/vbattach/attach.php
  • ./vb/types.php
  • ./vb/cache.php
  • ./vb/cache/db.php
  • ./vb/cache/observer/db.php
  • ./vb/cache/observer.php 

Hooks Called (72):
  • init_startup
  • friendlyurl_resolve_class
  • init_startup_session_setup_start
  • database_pre_fetch_array
  • database_post_fetch_array
  • init_startup_session_setup_complete
  • global_bootstrap_init_start
  • global_bootstrap_init_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • load_show_variables
  • load_forum_show_variables
  • global_state_check
  • global_bootstrap_complete
  • global_start
  • style_fetch
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • strip_bbcode
  • friendlyurl_clean_fragment
  • friendlyurl_geturl
  • forumjump
  • cache_templates
  • cache_templates_process
  • template_register_var
  • template_render_output
  • fetch_template_start
  • fetch_template_complete
  • parse_templates
  • fetch_musername
  • notices_check_start
  • notices_noticebit
  • process_templates_complete
  • friendlyurl_redirect_canonical
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • memberaction_dropdown
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • build_navigation_data
  • build_navigation_array
  • check_navigation_permission
  • process_navigation_links_start
  • process_navigation_links_complete
  • set_navigation_menu_element
  • build_navigation_menudata
  • build_navigation_listdata
  • build_navigation_list
  • set_navigation_tab_main
  • set_navigation_tab_fallback
  • navigation_tab_complete
  • fb_like_button
  • showthread_complete
  • page_templates