* Added enum for SQL Error and basic functions for it
* fmt
* Restructured code to allow multiple database system simultaneously
* updated code error and moved Eq to derive by compiler
* added ForeignKeyViolation implementation
* fmt
* added type param
* changed type param and used unwrap_or_default instead of unwrap
* fmt
* refactor code and update documentation
* updated some error code and fixed formatting
* create SQL Err test for UniqueConstraintViolation
* fmt
* updated error codes for mysql errors
* added test for ForeignKeyConstraintViolation and removed unused imports/codes
* fmt
* updated doc and error message
* added static str in SqlErr
* changed to add error message into SqlErr as String
* updated test file to check database type through connection
* fmt
* updated test for SqlErr to match the error type only
* Removed comment and fixed grammar mistake
* fmt
* Update src/error.rs
* Refactoring
---------
Co-authored-by: Chris Tsang <chris.2y3@outlook.com>
Co-authored-by: Billy Chan <ccw.billy.123@gmail.com>