Re: How to alter the schema of a database to introducenewfeatures or change the current features
| From: | Richard Quadling | Date: | Thu, 15 Jul 2010 12:35:53 +0000 |
| Subject: | Re: How to alter the schema of a database to introducenewfeatures or change the current features | ||
| References: | 1 2 3 4 5 6 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-306910@lists.php.net to get a copy of this message | ||
On 15 July 2010 13:29, Bob McConnell <rvm@cbord.com> wrote:
> From: Pete Ford
>
>> On 15/07/10 09:14, Ashley Sheridan wrote:
>>> ALTER TABLE is the way to go. If in doubt, look at the SQL phpMyAdmin
>>> produces when you make the changes in there.
>>>
>>
>> Yeah, scripting "ALTER TABLE" commands ... :)
>
> We maintain two files for every schema, site_schema.pgsql and
> site_delta.pgsql. Every time we modify the schema, we add the change
> commands to the delta file. We also have markers in it for each build
> number, so the update scripts can determine which changes need to be run
> when a site is updated.
>
> We use a similar technique on other systems that use Oracle or Sybase
> ASA on the back end, but those are stored as a shell database and sets
> of patch files for each build.
>
> Bob McConnell
I use a tool called SQL Compare and SQL Data Compare - by a company
called RedGate. These allow me and others to work on our in-house DBs
and when we are ready to roll out the release, create a changeset of
all the differences between the last release and this one.
It only works on MS SQL servers, but there are others [1]
Regards,
Richard Quadling.
[1] http://stackoverflow.com/questions/1265962/is-there-an-equivalent-of-redgate-sql-compare-for-mysql-databases