SQLEP 2.1.0 Tutorial - hudec/sql-processor GitHub Wiki

###The tutorial is updated for SQLP 2.5.2+, SQLMOP 2.1.0+ and SQLMEP 2.1.0+

###Introduction The SQLEP has been split into 2 specialized plugins

SQLMOP - SQL Processor Model Plugin, devoted to POJO, DAO and APP
SQLMEP - SQL Processor META Plugin, devoted to META SQL

The SQLP, SQLMEP and SQLMOP architecture overview

In these plugins the SQLEP grammar syntax has been completely rewritten. The POJO and DAO modeling syntax is not compatible with the previous versions. The primary goal of this change is to model APP layer. This grammar redefinition is one of more steps toward this goal.

To move grammar closer to Java syntax, we have a new set of

  • control directives (common for definitions.model and definitions.meta - descendants of definitions.qry)
  • model directives (common for pojo.model and dao.model - descendants of model.qry and meta.qry)

The only artifact, which hasn't been changed, is the grammar for META SQL statements (statements.meta - a descendant of statements.qry)

###Control directives ##Package directives

  • #Implementation TODO

##Annotation directives

  • #Conflict TODO
  • #Static TODO
  • #Constructor TODO
  • #Standard TODO
  • #Setter TODO
  • #Getter TODO
  • #Attribute TODO

###Implements directives

  • #Generics TODO

###POJO and Enum directives TODO

  • #ToString TODO
  • #Index TODO
  • #Operators TODO
  • #Serializable TODO
  • #InheritanceChild TODO
  • #Equals TODO
  • #HashCode TODO

###POJO attributes directives

  • #Required TODO
  • #PrimaryKey TODO
  • #InheritanceDiscriminator TODO
  • #Index TODO
  • #Version TODO
  • #UpdateCol TODO
  • #CreateCol TODO
  • #ToInit TODO
  • #EnumInit TODO
  • #IsDef TODO
  • #EnumDef TODO

###Enum attributes directives

  • #Values TODO

###DAO directives

  • #Serializable TODO
  • #InheritanceHandler TODO
  • #CRUD TODO
  • #Query TODO
  • #FunctionCallQuery TODO
  • #ProcedureCallQuery TODO
  • #FunctionCall TODO
  • #ProcedureUpdate TODO
  • #FunctionQuery TODO

The sample code can be seen at

All the SQLP samples in version 2.4.2 have been rewritten using the new SQLEP grammar.