|
Lines 4354-4359
if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
Link Here
|
| 4354 |
SetVersion ($DBversion); |
4354 |
SetVersion ($DBversion); |
| 4355 |
} |
4355 |
} |
| 4356 |
|
4356 |
|
|
|
4357 |
$DBversion = "3.05.00.XXX"; |
| 4358 |
if (C4::Context->preference("Version") < TransformToNum($DBversion)) { |
| 4359 |
$dbh->do("INSERT INTO old_issues (borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate) |
| 4360 |
SELECT borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate FROM issues WHERE borrowernumber IS NULL"); |
| 4361 |
$dbh->do("DELETE FROM issues WHERE borrowernumber IS NULL"); |
| 4362 |
|
| 4363 |
$dbh->do("INSERT INTO old_issues (borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate) |
| 4364 |
SELECT borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate FROM issues WHERE itemnumber IS NULL"); |
| 4365 |
$dbh->do("DELETE FROM issues WHERE itemnumber IS NULL"); |
| 4366 |
|
| 4367 |
$dbh->do("INSERT INTO old_issues (borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate) |
| 4368 |
SELECT borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate FROM issues WHERE NOT EXISTS (SELECT * FROM borrowers WHERE borrowernumber = issues.borrowernumber)"); |
| 4369 |
$dbh->do("DELETE FROM issues WHERE NOT EXISTS (SELECT * FROM borrowers WHERE borrowernumber = issues.borrowernumber)"); |
| 4370 |
|
| 4371 |
$dbh->do("INSERT INTO old_issues (borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate) |
| 4372 |
SELECT borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate FROM issues WHERE NOT EXISTS (SELECT * FROM items WHERE itemnumber = issues.itemnumber)"); |
| 4373 |
$dbh->do("DELETE FROM issues WHERE NOT EXISTS (SELECT * FROM items WHERE itemnumber = issues.itemnumber)"); |
| 4374 |
|
| 4375 |
$dbh->do("ALTER TABLE issues ALTER COLUMN borrowernumber DROP DEFAULT"); |
| 4376 |
$dbh->do("ALTER TABLE issues ALTER COLUMN itemnumber DROP DEFAULT"); |
| 4377 |
$dbh->do("ALTER TABLE issues MODIFY COLUMN borrowernumber int(11) NOT NULL"); |
| 4378 |
$dbh->do("ALTER TABLE issues MODIFY COLUMN itemnumber int(11) NOT NULL"); |
| 4379 |
$dbh->do("ALTER TABLE issues DROP KEY `issuesitemidx`"); |
| 4380 |
$dbh->do("ALTER TABLE issues ADD PRIMARY KEY (`itemnumber`)"); |
| 4381 |
$dbh->do("ALTER TABLE issues DROP FOREIGN KEY `issues_ibfk_1`"); |
| 4382 |
$dbh->do("ALTER TABLE issues DROP FOREIGN KEY `issues_ibfk_2`"); |
| 4383 |
$dbh->do("ALTER TABLE issues ADD CONSTRAINT `issues_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE RESTRICT ON UPDATE CASCADE"); |
| 4384 |
$dbh->do("ALTER TABLE issues ADD CONSTRAINT `issues_ibfk_2` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE RESTRICT ON UPDATE CASCADE"); |
| 4385 |
|
| 4386 |
print "Upgrade to $DBversion done (issues referential integrity)\n"; |
| 4387 |
SetVersion ($DBversion); |
| 4388 |
} |
| 4389 |
|
| 4357 |
=head1 FUNCTIONS |
4390 |
=head1 FUNCTIONS |
| 4358 |
|
4391 |
|
| 4359 |
=head2 DropAllForeignKeys($table) |
4392 |
=head2 DropAllForeignKeys($table) |
| 4360 |
- |
|
|