Skip to content

Instantly share code, notes, and snippets.

@realityking
Created May 22, 2012 11:57
Show Gist options
  • Save realityking/2768598 to your computer and use it in GitHub Desktop.
Save realityking/2768598 to your computer and use it in GitHub Desktop.
Proposed database changes for Joomla 3.0

This is mostly thinking based on MySQL, we'll have to change the MS SQL version accordingly.

Drop the following fields:

  • #__content.title_alias It's been marked as deprecated since 1.6.0 (?).

Change the following tables to InnoDB:

  • #__banners
  • #__banner_clients
  • #__categories
  • #__contact_details
  • #__content
  • #__content_frontpage
  • #__content_rating
  • #__extensions
  • #__finder_filters
  • #__menu
  • #__messages
  • #__messages_cfg
  • #__modules
  • #__modules_menu
  • #__newsfeeds
  • #__session
  • #__template_styles
  • #__users
  • #__user_profiles
  • #__user_notes
  • #__weblinks

Change the data type on the following fields:

  • #__content_frontpage.content_id to integer unsigned. Needed for FK.
  • #__content_rating.content_id to integer unsigned. Needed for FK.
  • #__newsfeeds.checked_out to integer unsigned. Needed for FK.
  • #__session.userid to integer unsigned. Needed for FK.
  • #__users.id to integer unsigned (helpful for foreign keys but B/C issue if extensions already have FK on it) or to smallint unsigned (when we touch it anyways might as well save a byte of storage. However this requires changing many other fields as well)
  • #__user_profiles.id to integer unsigned. Also for FK.
  • #__weblinks.checked_out to integer unsigned. Also for FK.

Other changes: *Changed all checked_out fields from NOT NULL DEFAULT '0' to DEFAULT NULL. Without this changed FK won't be possible. Need to check what, if any, code changes would be required for this.

Add the following Foreign Keys:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment