1. A computer-implemented method of database analysis, the method comprising: during code compilation via a computing device, performing extraction from the code via the computing device, the extraction comprising: extracting a set of SQL statements, extracting properties of the SQL statements, and extracting parameters used in SQL queries; analyzing the extracted SQL statements, properties, and parameters to identify data flow; based at least in part on the data flow, building verticals to perform at least one of: workload extraction, integrity checking, and SQL performance analysis; based at least in part on the verticals, rewriting at least one of the parameters, properties, and SQL statements to optimize at least one of performance, integrity, and security.