/// <summary>
        /// Load Customer by primary key
        /// </summary>
        /// <param name="CustomerIdentifier"></param>
        /// <param name="pBad">true for incorrect SQL, false for correct SQL</param>
        /// <returns>DataTable with one record on success or empty rows for failure</returns>
        public DataTable LoadCustomers(int CustomerIdentifier, bool pBad = true)
        {
            mHasException = false;

            var dt = new DataTable();

            using (var cn = new SqlConnection {
                ConnectionString = ConnectionString
            })
            {
                using (var cmd = new SqlCommand {
                    Connection = cn
                })
                {
                    cmd.CommandText = pBad ? SelectStatementBad : SelectStatementGood;

                    cmd.Parameters.AddWithValue("@CustomerIdentifier", CustomerIdentifier);

                    try
                    {
                        cn.Open();
                        dt.Load(cmd.ExecuteReader());
                        dt.HideIdentifierFields();
                    }
                    catch (Exception ex)
                    {
                        ActualCommandText = cmd.ActualCommandText();
                        mHasException     = true;
                        mLastException    = ex;
                    }
                }
            }

            return(dt);
        }