Column group_id Null Errors
On this page
Problem
You see the following Integrity constraint violation
error:
SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'group_id' cannot be null (SQL: insert into tblproducts_slugs (group_id, group_slug, slug, active, product_id, updated_at, created_at) values (?, ?, , 1, 1, 2021-09-30 10:24:30, 2021-09-30 10:24:30))
Cause
This indicates that there are orphaned products in the database (products which are not in a valid product group).
Solution
You can download a script to correct the integrity of product data in the WHMCS installation, which will allow the update process to complete successfully.
To do this:
- Download the script.
- Unzip the script and upload it to the main WHMCS directory (the directory that contains the
init.php
file). - In your preferred browser, go to the
orphaned_product_fixer.php
file to run the script.- The script will create a new hidden product group and assign the orphaned products to it.
- When the script finishes, it will display
Orphaned products have been reassigned to product group ID x
.
- Delete the
orphaned_product_fixer.php
script from the server. - Go to
/install/install.php
. - Follow the displayed instructions to complete the update.
Workaround
You can also resolve this issue directly in the database.
To do this:
Identify the affected product records using the following MySQL® query:
SELECT * FROM tblproducts WHERE
gidNOT IN (SELECT id FROM tblproductgroups);
Correct the records using the following query:
UPDATE
tblproductsSET
gid= "x" WHERE
gidNOT IN (SELECT id FROM tblproductgroups);
In the above command, replace
x
with a valid group ID fromtblproductgroups.id
.Go to the
/install/install.php
file and follow the displayed instructions to run the update process again.
Last modified: October 30, 2024