A message that reads "Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 1364 Field 'XXXXXX' doesn't have a default value'", has been noted by a number of users who installed SimpleRisk in XAMPP. This is caused by an issue where the field was declared as "NOT NULL" when it was created, but a null value is being submitting in the query. This has been captured as a bug with the intent to correct it in a future version of SimpleRisk, but in the meantime it is possible to bypass these errors by disabling STRICT mode in MySQL (set by default in XAMPP, but not other installations). 


To confirm that you have STRICT mode enabled for your MySQL instance, run the following command:


SELECT @@sql_mode;


Let's say, for example, it output something like:


+--------------------------------------------+

| @@sql_mode |

+--------------------------------------------+

| STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION |

+--------------------------------------------+


If it comes back with a row containing "STRICT_TRANS_TABLES", then you have STRICT mode enabled.  To disable STRICT mode, take the output of the SQL command and create a new query like the following with "STRICT_TRANS_TABLES" removed:


SET sql_mode=‘NO_ENGINE_SUBSTITUTION’;  


Once you have done this you will also need to remove "STRICT_TRANS_TABLE" from the [mysqld]  section in your my.cnf so that it doesn't come back upon the next restart. My.cnf is typically located at /etc/mysql/my.cnf.