root / pykota / branches / 1.26_fixes / initscripts / postgresql / upgrade-to-1.21.sql

Revision 3133, 2.7 kB (checked in by jerome, 18 years ago)

Changed copyright years.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1--
2-- PyKota - Print Quotas for CUPS and LPRng
3--
4-- (c) 2003, 2004, 2005, 2006, 2007 Jerome Alet <alet@librelogiciel.com>
5-- This program is free software; you can redistribute it and/or modify
6-- it under the terms of the GNU General Public License as published by
7-- the Free Software Foundation; either version 2 of the License, or
8-- (at your option) any later version.
9--
10-- This program is distributed in the hope that it will be useful,
11-- but WITHOUT ANY WARRANTY; without even the implied warranty of
12-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13-- GNU General Public License for more details.
14--
15-- You should have received a copy of the GNU General Public License
16-- along with this program; if not, write to the Free Software
17-- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18--
19-- $Id$
20--
21--
22--
23-- This script has to be used if you already
24-- have a pre-1.21 version of PyKota to upgrade
25-- your database schema.
26--
27-- YOU DON'T NEED TO USE IT IF YOU'VE JUST INSTALLED PYKOTA
28--
29                       
30--                         
31-- Modify the old database schema
32--
33ALTER TABLE users DROP COLUMN coefficient;
34ALTER TABLE users ADD COLUMN overcharge FLOAT;
35ALTER TABLE users ALTER COLUMN overcharge SET DEFAULT 1.0;
36UPDATE users SET overcharge=1.0;
37ALTER TABLE users ALTER COLUMN overcharge SET NOT NULL;
38
39ALTER TABLE userpquota DROP COLUMN warned;
40ALTER TABLE userpquota ADD COLUMN warncount INT4;
41ALTER TABLE userpquota ALTER COLUMN warncount SET DEFAULT 0;
42CREATE INDEX userpquota_u_id_ix ON userpquota (userid);
43CREATE INDEX userpquota_p_id_ix ON userpquota (printerid);
44UPDATE userpquota SET warncount=0;
45
46CREATE INDEX grouppquota_g_id_ix ON grouppquota (groupid);
47CREATE INDEX grouppquota_p_id_ix ON grouppquota (printerid);
48
49ALTER TABLE jobhistory ADD COLUMN md5sum TEXT;
50ALTER TABLE jobhistory ADD COLUMN pages TEXT;
51ALTER TABLE jobhistory ADD COLUMN billingcode TEXT;
52CREATE INDEX jobhistory_u_id_ix ON jobhistory (userid);
53
54--
55-- Create the table for coefficients wrt paper sizes and the like
56--
57CREATE TABLE coefficients (id SERIAL PRIMARY KEY NOT NULL, 
58                           printerid INTEGER NOT NULL REFERENCES printers(id), 
59                           label TEXT NOT NULL, 
60                           coefficient FLOAT DEFAULT 1.0, 
61                           CONSTRAINT coeffconstraint UNIQUE (printerid, label));
62                           
63REVOKE ALL ON coefficients FROM public;                       
64REVOKE ALL ON coefficients_id_seq FROM public;
65GRANT SELECT, INSERT, UPDATE, DELETE, REFERENCES ON coefficients TO pykotaadmin;
66GRANT SELECT, UPDATE ON coefficients_id_seq TO pykotaadmin;
67GRANT SELECT ON coefficients TO pykotauser;
Note: See TracBrowser for help on using the browser.