Embedded SQL StatementsThe extraction processSearch for SQL statementsMove SQL to a Gateway classNamespace and Class namesMethod namesAn initial Gateway class methodDefeating SQL InjectionWrite a testReplace the original codeTest, Commit, Push, Notify QADo ... WhileCommon QuestionsWhat about INSERT, UPDATE, and DELETE Statements?What about Repetitive SQL strings?What about complex query strings?What about queries inside non-Gateway classes?Can we extend from a base Gateway class?What about multiple queries and complex result structures?What if there is no Database Class?