Difference between revisions of "SqlCVS - Managing schema changes"
From LinuxMCE
m (Phenigma moved page SqlCVS-Modifying table structure to SqlCVS - Managing schema changes: referenced from other page this way.) |
m |
||
Line 1: | Line 1: | ||
[[Category: Programmer's Guide]] | [[Category: Programmer's Guide]] | ||
− | Modifying existing tables in sqlCVS is a multistep process which involves manually executing stuff on the sqlCVS main server (schema.linuxmce.org as of this writing). The current master database is | + | Modifying existing tables in sqlCVS is a multistep process which involves manually executing stuff on the sqlCVS main server (schema.linuxmce.org as of this writing). The current master database is main_sqlcvs_utf8. |
= On the main sqlCVS server = | = On the main sqlCVS server = | ||
Line 12: | Line 12: | ||
== Modifying the actual table == | == Modifying the actual table == | ||
− | Now we modify the actual table, by executing the ALTER TABLE command in the | + | Now we modify the actual table, by executing the ALTER TABLE command in the main_sqlcvs_utf8 database |
ALTER TABLE `CommandGroup` ADD `FK_Text` INT(11) DEFAULT NULL AFTER `TemplateParm2`; | ALTER TABLE `CommandGroup` ADD `FK_Text` INT(11) DEFAULT NULL AFTER `TemplateParm2`; | ||
Revision as of 02:43, 20 April 2014
Modifying existing tables in sqlCVS is a multistep process which involves manually executing stuff on the sqlCVS main server (schema.linuxmce.org as of this writing). The current master database is main_sqlcvs_utf8.
Contents
On the main sqlCVS server
Add the modification statement to psc_<repo>_schema
For example, to add a new field FK_Text to the CommandGroup table in the local repository, the command is
insert into psc_local_schema set Value= "ALTER TABLE `CommandGroup` ADD `FK_Text` INT(11) DEFAULT NULL AFTER `TemplateParm2`";
Update the psc_<repo>_repset table
After adding the above alter statement to the schema, we need to update table rep_set with the latest psc_id created by the above statement
UPDATE psc_local_repset SET Value=(Select max(psc_id) From psc_local_schema);
Modifying the actual table
Now we modify the actual table, by executing the ALTER TABLE command in the main_sqlcvs_utf8 database
ALTER TABLE `CommandGroup` ADD `FK_Text` INT(11) DEFAULT NULL AFTER `TemplateParm2`;
On the local system
To update the schema on our system, we need to run the dump command locally
/usr/pluto/bin/sqlCVS -H schema.linuxmce.org -R 3999 -r local dump
Notes
If anyone knows of a simpler approach, please amend. Thanks.