Difference between revisions of "VbzCart/coding/integrity checks"

from HTYP, the free directory anyone can edit if they can prove to me that they're not a spambot
Jump to navigation Jump to search
(another ol-pl cross-check)
m (fixed markup tags)
 
Line 3: Line 3:
 
==Cross-table checks==
 
==Cross-table checks==
 
Package Lines and Order Lines which don't agree about what ID_Item they're tracking:
 
Package Lines and Order Lines which don't agree about what ID_Item they're tracking:
<mysql>SELECT  
+
<source lang=mysql>SELECT  
 
     *
 
     *
 
FROM
 
FROM
Line 10: Line 10:
 
     ord_lines AS ol ON pl.ID_OrdLine = ol.ID
 
     ord_lines AS ol ON pl.ID_OrdLine = ol.ID
 
WHERE
 
WHERE
     ol.ID_Item != pl.ID_Item</mysql>
+
     ol.ID_Item != pl.ID_Item</source>
 
Package lines whose Order Line is either not set or nonexistent(!):
 
Package lines whose Order Line is either not set or nonexistent(!):
<mysql>SELECT  
+
<source lang=mysql>SELECT  
 
     pl.*
 
     pl.*
 
FROM
 
FROM
Line 19: Line 19:
 
     ord_lines AS ol ON pl.ID_OrdLine = ol.ID
 
     ord_lines AS ol ON pl.ID_OrdLine = ol.ID
 
WHERE
 
WHERE
     ol.ID IS NULL</mysql>
+
     ol.ID IS NULL</source>

Latest revision as of 22:04, 16 July 2019

Table-specific checks:

Cross-table checks

Package Lines and Order Lines which don't agree about what ID_Item they're tracking:

SELECT 
    *
FROM
    ord_pkg_lines AS pl
        JOIN
    ord_lines AS ol ON pl.ID_OrdLine = ol.ID
WHERE
    ol.ID_Item != pl.ID_Item

Package lines whose Order Line is either not set or nonexistent(!):

SELECT 
    pl.*
FROM
    ord_pkg_lines AS pl
        LEFT JOIN
    ord_lines AS ol ON pl.ID_OrdLine = ol.ID
WHERE
    ol.ID IS NULL