Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "EDT:Default SQL Generation"

Line 3: Line 3:
 
   EDT 0.7.0 release provides quick assist support for the following EGL action statements to  
 
   EDT 0.7.0 release provides quick assist support for the following EGL action statements to  
 
  generate default SQL statements:
 
  generate default SQL statements:
  1 ADD Statement
+
1 ADD Statement
  2 DELETE Statement
+
2 DELETE Statement
  3 GET Statement
+
3 GET Statement
  4 OPEN Statement
+
4 OPEN Statement
  5 REPLACE Statement
+
5 REPLACE Statement
 
   
 
   
 
  Use examples to show how to use the feature in EDT plugin.
 
  Use examples to show how to use the feature in EDT plugin.
Line 14: Line 14:
 
  ''    record Product{@Table {name="Product"}}''
 
  ''    record Product{@Table {name="Product"}}''
 
  ''      id bigint{@Id};''
 
  ''      id bigint{@Id};''
      name string;
+
    name string;
      price float;
+
    price float;
  end
+
  end
 
   
 
   
 
   
 
   
Line 24: Line 24:
 
   
 
   
 
  record OrderItem type '''Entity'''{@table{name = "OrderItem"}}
 
  record OrderItem type '''Entity'''{@table{name = "OrderItem"}}
    ITEM_ID int{@Id};
+
  ITEM_ID int{@Id};
    NAME string{ @Column { insertable=true } };
+
  NAME string{ @Column { insertable=true } };
    IMAGE string?{ @Column { updateable=true } };
+
  IMAGE string?{ @Column { updateable=true } };
    PRICE decimal(7, 2)?;
+
  PRICE decimal(7, 2)?;
    DESCRIPTION string?;
+
  DESCRIPTION string?;
 
  end
 
  end
 
   
 
   
Line 36: Line 36:
 
   
 
   
 
  '''EGL Variable Definition'''
 
  '''EGL Variable Definition'''
    basicRec Product;    
+
  basicRec Product;    
    itemEntity OrderItem;
+
  itemEntity OrderItem;
    rs SQLResultSet?;
+
  rs SQLResultSet?;
    ds SQLDataSource? = new SQLDataSource("jdbc:derby:C:/databases/EGLDerbyR7;create=true");    
+
  ds SQLDataSource? = new SQLDataSource("jdbc:derby:C:/databases/EGLDerbyR7;create=true");    
 
   
 
   
 
   
 
   
 
  '''ADD Statement'''
 
  '''ADD Statement'''
  '''
+
   
    '''Click anywhere in the EGL statement and press CTRL+1, and press “Add SQL Statement” proposal,  
+
  '''Click anywhere in the EGL statement and press CTRL+1, and press “Add SQL Statement” proposal, '''
 
  default SQL statement will be added to the above statement:  
 
  default SQL statement will be added to the above statement:  
        (1) add basicRec to ds; //for basic record  
+
      (1) add basicRec to ds; //for basic record  
 
   
 
   
 
  Change To:  
 
  Change To:  
        add basicRec to ds with  
+
      add basicRec to ds with  
            #sql{ insert into Product (id, name, price) values (?, ?, ?)};  
+
          #sql{ insert into Product (id, name, price) values (?, ?, ?)};  
 +
 +
      (2) add itemEntity to ds; //for entity record
 +
 +
Change To:
 +
        add itemEntity to ds with
 +
#sql{
 +
insert into OrderItem
 +
(ITEM_ID, Name, IMAGE, price, description)
 +
values
 +
(?, ?, ?, ?, ?)
 +
};
 +
  
 
**GET Statement  
 
**GET Statement  

Revision as of 03:38, 22 December 2011

         Quick Assist Support for Default SQL Generation

  EDT 0.7.0 release provides quick assist support for the following EGL action statements to 
generate default SQL statements:
1 ADD Statement
2 DELETE Statement
3 GET Statement
4 OPEN Statement
5 REPLACE Statement

Use examples to show how to use the feature in EDT plugin.

EGL Record Definition:
    record Product{@Table {name="Product"}}
       id bigint{@Id};
    name string;
    price float;
 end


The above is a basic record definition, one must use annotation @Id to specific which record 
field is used as primary key, also can use annotation @Table to specify to which table the record 
is mapped, just as 'Product' definition shows, but this is optional.

record OrderItem type Entity{@table{name = "OrderItem"}}
  ITEM_ID int{@Id};
  NAME string{ @Column { insertable=true } };
  IMAGE string?{ @Column { updateable=true } };
  PRICE decimal(7, 2)?;
  DESCRIPTION string?;
end

The above is an entity record definition that is generated from a table schema.



EGL Variable Definition
  basicRec Product;    
  itemEntity OrderItem;
  rs SQLResultSet?;
  ds SQLDataSource? = new SQLDataSource("jdbc:derby:C:/databases/EGLDerbyR7;create=true");    


ADD Statement

  Click anywhere in the EGL statement and press CTRL+1, and press “Add SQL Statement” proposal, 
default SQL statement will be added to the above statement: 
      (1) add basicRec to ds; //for basic record 

Change To: 
      add basicRec to ds with 
          #sql{ insert into Product (id, name, price) values (?, ?, ?)}; 

      (2) add itemEntity to ds; //for entity record

Change To:
       add itemEntity to ds with
			#sql{
				insert into OrderItem
					(ITEM_ID, Name, IMAGE, price, description)
				values
					(?, ?, ?, ?, ?)
			};

    • GET Statement
  • OPEN Statement
  • REPLACE Statement



Back to the top