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 |
- |
|
|