Lines 4370-4375
if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
Link Here
|
4370 |
SetVersion($DBversion); |
4370 |
SetVersion($DBversion); |
4371 |
} |
4371 |
} |
4372 |
|
4372 |
|
|
|
4373 |
$DBversion = "3.05.00.005"; |
4374 |
if (C4::Context->preference("Version") < TransformToNum($DBversion)) { |
4375 |
$dbh->do("INSERT INTO old_issues (borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate) |
4376 |
SELECT borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate FROM issues WHERE borrowernumber IS NULL"); |
4377 |
$dbh->do("DELETE FROM issues WHERE borrowernumber IS NULL"); |
4378 |
|
4379 |
$dbh->do("INSERT INTO old_issues (borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate) |
4380 |
SELECT borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate FROM issues WHERE itemnumber IS NULL"); |
4381 |
$dbh->do("DELETE FROM issues WHERE itemnumber IS NULL"); |
4382 |
|
4383 |
$dbh->do("INSERT INTO old_issues (borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate) |
4384 |
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)"); |
4385 |
$dbh->do("DELETE FROM issues WHERE NOT EXISTS (SELECT * FROM borrowers WHERE borrowernumber = issues.borrowernumber)"); |
4386 |
|
4387 |
$dbh->do("INSERT INTO old_issues (borrowernumber, itemnumber, date_due, branchcode, issuingbranch, returndate, lastreneweddate, `return`, renewals, timestamp, issuedate) |
4388 |
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)"); |
4389 |
$dbh->do("DELETE FROM issues WHERE NOT EXISTS (SELECT * FROM items WHERE itemnumber = issues.itemnumber)"); |
4390 |
|
4391 |
$dbh->do("ALTER TABLE issues ALTER COLUMN borrowernumber DROP DEFAULT"); |
4392 |
$dbh->do("ALTER TABLE issues ALTER COLUMN itemnumber DROP DEFAULT"); |
4393 |
$dbh->do("ALTER TABLE issues MODIFY COLUMN borrowernumber int(11) NOT NULL"); |
4394 |
$dbh->do("ALTER TABLE issues MODIFY COLUMN itemnumber int(11) NOT NULL"); |
4395 |
$dbh->do("ALTER TABLE issues DROP KEY `issuesitemidx`"); |
4396 |
$dbh->do("ALTER TABLE issues ADD PRIMARY KEY (`itemnumber`)"); |
4397 |
$dbh->do("ALTER TABLE issues DROP FOREIGN KEY `issues_ibfk_1`"); |
4398 |
$dbh->do("ALTER TABLE issues DROP FOREIGN KEY `issues_ibfk_2`"); |
4399 |
$dbh->do("ALTER TABLE issues ADD CONSTRAINT `issues_ibfk_1` FOREIGN KEY (`borrowernumber`) REFERENCES `borrowers` (`borrowernumber`) ON DELETE RESTRICT ON UPDATE CASCADE"); |
4400 |
$dbh->do("ALTER TABLE issues ADD CONSTRAINT `issues_ibfk_2` FOREIGN KEY (`itemnumber`) REFERENCES `items` (`itemnumber`) ON DELETE RESTRICT ON UPDATE CASCADE"); |
4401 |
|
4402 |
print "Upgrade to $DBversion done (issues referential integrity)\n"; |
4403 |
SetVersion ($DBversion); |
4404 |
} |
4405 |
|
4373 |
=head1 FUNCTIONS |
4406 |
=head1 FUNCTIONS |
4374 |
|
4407 |
|
4375 |
=head2 DropAllForeignKeys($table) |
4408 |
=head2 DropAllForeignKeys($table) |