change properties
move the job of create db to another module
deal with errors by exception
fix bug--compile errors