1035510db3eef17429d97e1966dd7592625e8adb
[freeside.git] / httemplate / docs / upgrade10.html
1 <pre>
2 this is incomplete
3
4 install DBIx::DBSchema 0.21
5
6 install NetAddr::IP and Chart::Base
7
8 CREATE TABLE cust_bill_pkg_detail (
9   detailnum serial,
10   pkgnum int NOT NULL,
11   invnum int NOT NULL,
12   detail varchar(80),
13   PRIMARY KEY (detailnum)
14 );
15 CREATE INDEX cust_bill_pkg_detail1 ON cust_bill_pkg_detail ( pkgnum, invnum );
16
17 CREATE TABLE router (
18   routernum serial,
19   routername varchar(80),
20   svcnum int,
21   PRIMARY KEY (routernum)
22 );
23
24 CREATE TABLE part_svc_router (
25   svcpart int NOT NULL,
26   routernum int NOT NULL
27 );
28
29 CREATE TABLE part_router_field (
30   routerfieldpart serial,
31   name varchar(80),
32   length int NOT NULL,
33   check_block text,
34   list_source text,
35   PRIMARY KEY (routerfieldpart)
36 );
37
38 CREATE TABLE router_field (
39   routerfieldpart int NOT NULL,
40   routernum int NOT NULL,
41   value varchar(128)
42 );
43 CREATE UNIQUE INDEX router_field1 ON router_field ( routerfieldpart, routernum );
44
45 CREATE TABLE addr_block (
46   blocknum serial,
47   routernum int NOT NULL,
48   ip_gateway varchar(15) NOT NULL,
49   ip_netmask int NOT NULL,
50   PRIMARY KEY (blocknum)
51 );
52 CREATE UNIQUE INDEX addr_block1 ON addr_block ( blocknum, routernum );
53
54 CREATE TABLE part_sb_field (
55   sbfieldpart serial,
56   svcpart int NOT NULL,
57   name varchar(80) NOT NULL,
58   length int NOT NULL,
59   check_block text NULL,
60   list_source text NULL,
61   PRIMARY key (sbfieldpart)
62 );
63 CREATE UNIQUE INDEX part_sb_field1 ON part_sb_field ( sbfieldpart, svcpart );
64
65 CREATE TABLE sb_field (
66   sbfieldpart int NOT NULL,
67   svcnum int NOT NULL,
68   value varchar(128)
69 );
70 CREATE UNIQUE INDEX sb_field1 ON sb_field ( sbfieldpart, svcnum );
71
72 CREATE TABLE svc_broadband (
73   svcnum int NOT NULL,
74   blocknum int NOT NULL,
75   speed_up int NOT NULL,
76   speed_down int NOT NULL,
77   ip_addr varchar(15),
78   PRIMARY KEY (svcnum)
79 );
80
81 DELETE INDEX cust_bill_pkg1;
82
83 ALTER TABLE cust_bill_pkg ADD itemdesc varchar(80) NULL;
84 ALTER TABLE h_cust_bill_pkg ADD itemdesc varchar(80) NULL;
85 ALTER TABLE cust_main_county ADD taxname varchar(80) NULL;
86 ALTER TABLE h_cust_main_county ADD taxname varchar(80) NULL;
87 ALTER TABLE cust_pkg ADD last_bill int NULL;
88 ALTER TABLE h_cust_pkg ADD last_bill int NULL;
89
90 dump database, edit:
91 - cust_main: increase otaker from 8 to 32
92 - cust_main: change ss from char(11) to varchar(11)
93 - cust_credit: increase otaker from 8 to 32
94 - cust_pkg: increase otaker from 8 to 32
95 - cust_refund: increase otaker from 8 to 32
96 - domain_record: increase reczone from 80 to 255
97 - domain_record: change rectype from char to varchar
98 - domain_record: increase recdata from 80 to 255
99 then reload
100
101 optionally:
102
103   CREATE INDEX cust_main6 ON cust_main ( daytime );
104   CREATE INDEX cust_main7 ON cust_main ( night );
105   CREATE INDEX cust_main8 ON cust_main ( fax );
106   CREATE INDEX cust_main9 ON cust_main ( ship_daytime );
107   CREATE INDEX cust_main10 ON cust_main ( ship_night );
108   CREATE INDEX cust_main11 ON cust_main ( ship_fax );
109
110   serial columns
111
112 mandatory again:
113
114 dbdef-create username
115 create-history-tables username cust_bill_pkg_detail router part_svc_router part_router_field router_field addr_block part_sb_field sb_field svc_broadband
116 dbdef-create username
117
118
119
120 </pre>