Show MySQL errors that occur when I excute $wpdb->insert()

I have the same problem as Nathan ($wpdb->last_error doesn’t show the query on error), obviously, the solution to the specific case was to change the type of data to the column that caused the error … but if the error were different, for example, an incorrect date, or a null value where the field does not support it, as I can show the error that is generated in the database when the $ wpdb-> insert ($ this-> table, $ data_) function is executed;

I have tried to do this by enclosing that function in a try {} catch {} but I don’t have the expected behavior. I share the example code I am using in the class-example.php file.

If I remove the comment from the line * // throw new Exception ('Help please !!!!'); *, if I get the expected behavior, that is, I catch the error in the variable $ msgError, but with the rest I can’t get the other error that occurs on the line that indicates * // column length is 2, but try insert 4 characters *
When I call the function from another side (test.php), it doesn’t detect the error and the code execution doesn’t progress, however there is no sample of any error message. What I want to do is, capture the error message that occurs in the database and insert it as a note in a woocommerce order.