org.eclipse.datatools.enablement.ase.ddl
Class SybaseASEDdlBuilder

java.lang.Object
  extended by org.eclipse.datatools.connectivity.sqm.core.rte.fe.GenericDdlBuilder
      extended by org.eclipse.datatools.enablement.sybase.ddl.SybaseDdlBuilder
          extended by org.eclipse.datatools.enablement.ase.ddl.SybaseASEDdlBuilder
All Implemented Interfaces:
ISybaseASEDdlConstants, ISybaseDdlConstants

public class SybaseASEDdlBuilder
extends SybaseDdlBuilder
implements ISybaseASEDdlConstants


Field Summary
static java.lang.String ASE_PROCEDURE_WITH_TEMP_TABLE_ANNOTATION
           
static java.lang.String ASE_PROCEDURE_WITH_TEMP_TABLE_NAME
           
static java.lang.String PATTERN
           
 
Fields inherited from interface org.eclipse.datatools.enablement.ase.ISybaseASEDdlConstants
ACCESS, ACCESSRULE, ALL, ALLOW_DUPLICATE_ROW, ALLPAGES, AND, BY, COLUMN_DELIMITER, CONCURRENCY_OPT_THRESHOLD, CONSUMERS, DATABASE_OWNER, DATAPAGES, DATAROWS, DEFAULT_LOCATION, DISABLE, ENABLE, EXEC, EXISTING, EXP_ROW_SIZE, FILLFACTOR, FUTUREONLY, HASH, IDENTITY, IDENTITY_GAP, IGNORE_DUPLICATE_KEY, IGNORE_DUPLICATE_ROW, LESSEQUAL, LIST, LOAD, LOCAL_INDEX, LOCK, master, MATCHFULL, MATERIALIZED, MAX_ROWS_PER_PAGE, MODIFIES_SQL_DATA, MODIFY, MRU, OFF, OR, OVERRIDE, PARTITION, PREFETCH, PROXY_UPDATE, RANGE, REPLACE, RESERVEPAGEGAP, ROUNDROBIN, RULE, SETUSER, SORTED_DATA, SP_ADDGROUP, SP_ADDOBJECTDEF, SP_ADDSEGMENT, SP_ADDTYPE, SP_ADDUSER, SP_BINDCACHE, SP_BINDEFAULT, SP_BINDRULE, SP_CACHESTRATEGY, SP_CHANGEGROUP, SP_CHGATTRIBUTE, SP_DROPGROUP, SP_DROPOBJECTDEF, SP_DROPSEGMENT, SP_DROPTYPE, SP_DROPUSER, SP_EXTENDSEGMENT, SP_PLACEOBJECT, SP_RENAME, SP_UNBINDEFAULT, SP_UNBINDRULE, SP_WEBSERVICES, STATISTICS_USING, TABLE_ONLY, TEXT_ONLY, USE, VALUES
 
Fields inherited from interface org.eclipse.datatools.enablement.sybase.ddl.ISybaseDdlConstants
ALTER_PRIVILEGE, ASC, AT, BEGIN, CAST, CHECKOPTION, CLUSTERED, COLUMN, COMMENT, COMMIT, DATABASE, DELETE_PRIVILEGE, DESC, END, END_IF, EQUAL, EVENT, EXEC_PRIVILEGE, EXISTS, EXTERNAL, EXTERNAL_NAME, FILE, FROM, GO, GO_FOR, GRANT, IF, IN, INOUT, INSERT_PRIVILEGE, IS, JAVA, LOCATOR, LOG, MESSAGE, NONCLUSTERED, OUT, OUTPUT, REFERENCE_PRIVILEGE, REFERENCES_PRIVILEGE, REMOVE, RENAME, REVOKE, SELECT_PRIVILEGE, SEMICOLUMN, THEN, TO, UPDATE_PRIVILEGE, WITH_GRANT_OPTION, WITH_RECOMPILE
 
Method Summary
 java.lang.String[] addCheckConstraint(CheckConstraint constraint, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
          Returns the SQL Statement for adding check constraint clause.
 java.lang.String[] addForeignKey(ForeignKey foreignKey, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
          Returns the SQL Statement for adding foreign key clause.
 java.lang.String[] addUniqueConstraint(UniqueConstraint constraint, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
          Returns the SQL Statement for adding unique constraint/primary key clause.
 java.lang.String[] createAuthorizationId(AuthorizationIdentifier authId, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
           sp_adduser loginame [, name_in_db [, grpname]] sp_addgroup grpname sp_changegroup grpname, username
 java.lang.String createBoundDefault(Column col, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
           
 java.lang.String[] createCatalogs(Catalog catalog, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
           
 java.lang.String createColumn(Column col, boolean quoteIdentifiers, boolean qualifyNames)
           
 java.lang.String[] createColumn(Column col, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
           alter table [[database.][owner].table_name add column_name datatype [default {constant_expression | user | null}] {identity | null | not null} [off row | in row]
 java.lang.String[] createDatabase(Database database, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
           
 java.lang.String[] createDefault(SybaseASEDefault aseDefault, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
          Returns the SQL Statement for creating default.
 java.lang.String[] createEvent(Event event, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
           
 java.lang.String[] createIndex(Index index, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
           
 java.lang.String[] createProcedure(Procedure procedure, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
           
 java.lang.String[] createProcedureBody(Procedure procedure, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
          TSQL procedure:
 java.lang.String[] createProcedureObject(java.lang.String body, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
          add temp table creation support for stored procedure and trigger
 java.lang.String[] createRule(SybaseASERule aseRule, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
          Returns the SQL Statement for creating rule.
 java.lang.String[] createSegment(SybaseASESegment segment, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
           sp_addsegment segname, dbname, devname sp_extendsegment segname, dbname, devname
 java.lang.String[] createTrigger(Trigger trigger, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
           create trigger [owner .]trigger_name on [owner .]table_name for {insert , update , delete} as SQL_statements
 java.lang.String[] createUserDefinedFunction(UserDefinedFunction function, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
           create function [owner.]sql_function_name ( [ sql_parameter_name sql_datatype [( length)| (precision[, scale ]) ] [ [, sql_parameter_name sql_datatype [( length )| ( precision[, scale ]) ]] ...
 java.lang.String[] createUserDefinedType(UserDefinedType udt, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
          Returns the SQL Statement for creating user defined type.
 java.lang.String[] createView(ViewTable view, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
           CREATE VIEW [ owner.]view-name [ ( column-name, .
 java.lang.String[] createWebServiceTable(SybaseASEWebServiceTable ws, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
          Returns the SQL Statement for creating a webservice table.
 java.lang.String dropAuthorizationId(AuthorizationIdentifier authId, boolean quoteIdentifiers, boolean qualifyNames)
           sp_dropuser name_in_db sp_dropgroup grpname
 java.lang.String dropCatalog(Catalog db, boolean quoteIdentifiers, boolean qualifyNames)
           
 java.lang.String dropCheckConstraint(CheckConstraint constraint, boolean quoteIdentifiers, boolean qualifyNames)
           
 java.lang.String dropDefault(SybaseASEDefault aseDefault, boolean quoteIdentifiers, boolean qualifyNames)
          Returns the SQL Statement for droping default.
 java.lang.String dropForeignKey(ForeignKey foreignKey, boolean quoteIdentifiers, boolean qualifyNames)
           
 java.lang.String dropIndex(Index index, boolean quoteIdentifiers, boolean qualifyNames)
           
 java.lang.String dropProcedure(Procedure procedure, boolean quoteIdentifiers, boolean qualifyNames)
           
 java.lang.String dropRule(SybaseASERule aseRule, boolean quoteIdentifiers, boolean qualifyNames)
          Returns the SQL Statement for droping rule.
 java.lang.String dropSegment(SybaseASESegment segment, boolean quoteIdentifiers, boolean qualifyNames)
           
 java.lang.String dropTable(BaseTable table, boolean quoteIdentifiers, boolean qualifyNames)
           
 java.lang.String dropTrigger(Trigger trigger, boolean quoteIdentifiers, boolean qualifyNames)
           
 java.lang.String dropUniqueConstraint(UniqueConstraint constraint, boolean quoteIdentifiers, boolean qualifyNames)
           
 java.lang.String dropUserDefinedType(UserDefinedType udt, boolean quoteIdentifiers, boolean qualifyNames)
          Returns the SQL Statement for droping user defined type.
 java.lang.String dropView(ViewTable view, boolean quoteIdentifiers, boolean qualifyNames)
           DROP VIEW [ owner.]view-name
 java.lang.String dropWebServiceTable(SybaseASEWebServiceTable ws, boolean quoteIdentifiers, boolean qualifyNames)
          Returns the SQL Statement for droping a webservice table.
 java.lang.String getIndexKeyColumns(Index index, boolean quoteIdentifiers)
           
static SybaseDdlBuilder getInstance()
           
 java.lang.String getName(org.eclipse.emf.ecore.ENamedElement element, boolean quoteIdentifiers, boolean qualifyNames)
           
 java.lang.String getName(Table table, boolean quoteIdentifiers, boolean qualifyNames)
           
 java.util.List getRuleBindingStmt(BaseTable table, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
           
 java.lang.String[] grantPrivilege(Privilege privilege, boolean quoteIdentifiers, boolean qualifyNames, boolean fullSyntax)
          Assemble SQL statement to grant privilege.
One thing needs to be pointed out is, a privilege instance can be referenced by an instance of AuthorizationIdentifier (The grantor), it can also be contained by an instance of AuthorizationIdentifier (The grantee).
 java.lang.String revokePrivilege(Privilege privilege, boolean quoteIdentifiers, boolean qualifyNames)
          Assemble SQL statement to revoke privilege.
 
Methods inherited from class org.eclipse.datatools.enablement.sybase.ddl.SybaseDdlBuilder
createTable, createTSQLTrigger, dropColumn, dropDatabase, dropEvent, dropFunction, getDatabaseIdentifier, getTriggerBody, getTriggerEvents, getTSQLParameter, getTSQLParameter
 
Methods inherited from class org.eclipse.datatools.connectivity.sqm.core.rte.fe.GenericDdlBuilder
addCheckConstraint, addForeignKey, addUniqueConstraint, alterTableAddColumn, createAssertion, createIndex, createProcedure, createSchema, createTable, createTrigger, createUserDefinedFunction, createUserDefinedType, createView, dropAssertion, dropSchema, dropTableConstraint, getEngineeringCallBack, isImplicitConstraint, setEngineeringCallBack
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ASE_PROCEDURE_WITH_TEMP_TABLE_ANNOTATION

public static final java.lang.String ASE_PROCEDURE_WITH_TEMP_TABLE_ANNOTATION
See Also:
Constant Field Values

ASE_PROCEDURE_WITH_TEMP_TABLE_NAME

public static final java.lang.String ASE_PROCEDURE_WITH_TEMP_TABLE_NAME
See Also:
Constant Field Values

PATTERN

public static final java.lang.String PATTERN
See Also:
Constant Field Values
Method Detail

dropIndex

public java.lang.String dropIndex(Index index,
                                  boolean quoteIdentifiers,
                                  boolean qualifyNames)
Overrides:
dropIndex in class GenericDdlBuilder

getInstance

public static SybaseDdlBuilder getInstance()

createCatalogs

public java.lang.String[] createCatalogs(Catalog catalog,
                                         boolean quoteIdentifiers,
                                         boolean qualifyNames,
                                         boolean fullSyntax)
Specified by:
createCatalogs in class SybaseDdlBuilder

createDatabase

public java.lang.String[] createDatabase(Database database,
                                         boolean quoteIdentifiers,
                                         boolean qualifyNames,
                                         boolean fullSyntax)
Specified by:
createDatabase in class SybaseDdlBuilder

createUserDefinedType

public java.lang.String[] createUserDefinedType(UserDefinedType udt,
                                                boolean quoteIdentifiers,
                                                boolean qualifyNames,
                                                boolean fullSyntax)
Returns the SQL Statement for creating user defined type.

See following SQL Syntax:

  sp_addtype typename,
           phystype [(length) | (precision [, scale])]
           [, "identity" | nulltype]
  sp_bindefault defname, objname [, futureonly]
  sp_bindrule rulename, objname [, futureonly]
   
 

Specified by:
createUserDefinedType in class SybaseDdlBuilder
Parameters:
aseUDT -
quoteIdentifiers -
qualifyNames -
fullSyntax -
Returns:

createDefault

public java.lang.String[] createDefault(SybaseASEDefault aseDefault,
                                        boolean quoteIdentifiers,
                                        boolean qualifyNames,
                                        boolean fullSyntax)
Returns the SQL Statement for creating default.

See following SQL Syntax:

  create default [owner.]default_name
           as constant_expression
   
 

Parameters:
aseDefault -
quoteIdentifiers -
qualifyNames -
fullSyntax -
Returns:

createRule

public java.lang.String[] createRule(SybaseASERule aseRule,
                                     boolean quoteIdentifiers,
                                     boolean qualifyNames,
                                     boolean fullSyntax)
Returns the SQL Statement for creating rule.

See following SQL Syntax:

  create [ [ and | or ] access]] rule
           [owner.]rule_name
           as condition_expression
   
 

Parameters:
aseRule -
quoteIdentifiers -
qualifyNames -
fullSyntax -
Returns:

createProcedureBody

public java.lang.String[] createProcedureBody(Procedure procedure,
                                              boolean quoteIdentifiers,
                                              boolean qualifyNames,
                                              boolean fullSyntax)
TSQL procedure:
       create procedure [owner.]procedure_name[;number]
       [[(]@parameter_name
       datatype [(length ) | (precision [, scale ])]
       [= default][output]
       [, @parameter_name
       datatype [(length ) | (precision [, scale ])]
       [= default][output]]...[)]]
       [with recompile]
       as {SQL_statements | external name dll_name}
 

SQLJ

        [modifies sql data ]
        [dynamic result sets integer]
        [deterministic | not deterministic]
        language java
        parameter style java
        external name 'java_method_name
        [ ( [java_datatype[, java_datatype
        ...]] ) ]'
 


createProcedure

public java.lang.String[] createProcedure(Procedure procedure,
                                          boolean quoteIdentifiers,
                                          boolean qualifyNames,
                                          boolean fullSyntax)
Specified by:
createProcedure in class SybaseDdlBuilder

createProcedureObject

public java.lang.String[] createProcedureObject(java.lang.String body,
                                                boolean quoteIdentifiers,
                                                boolean qualifyNames,
                                                boolean fullSyntax)
add temp table creation support for stored procedure and trigger


createUserDefinedFunction

public java.lang.String[] createUserDefinedFunction(UserDefinedFunction function,
                                                    boolean quoteIdentifiers,
                                                    boolean qualifyNames,
                                                    boolean fullSyntax)
    create function [owner.]sql_function_name
       ( [ sql_parameter_name sql_datatype
       [( length)| (precision[, scale ]) ]
       [ [, sql_parameter_name sql_datatype
       [( length )| ( precision[, scale ]) ]]
       ... ] ] )
       returns sql_datatype
       [ ( length)| (precision[, scale ]) ]
       [modifies sql data]
       [returns null on null input |
       called on null input]
       [deterministic | not deterministic]
       [exportable]
       language java
       parameter style java
       external name 'java_method_name
       [ ( [java_datatype[, java_datatype
       ...] ] ) ] '
 

Specified by:
createUserDefinedFunction in class SybaseDdlBuilder

createTrigger

public java.lang.String[] createTrigger(Trigger trigger,
                                        boolean quoteIdentifiers,
                                        boolean qualifyNames,
                                        boolean fullSyntax)
       create trigger [owner .]trigger_name
       on [owner .]table_name
       for {insert , update , delete}
       as SQL_statements
 

Specified by:
createTrigger in class SybaseDdlBuilder

createEvent

public java.lang.String[] createEvent(Event event,
                                      boolean quoteIdentifiers,
                                      boolean qualifyNames,
                                      boolean fullSyntax)
Specified by:
createEvent in class SybaseDdlBuilder

getRuleBindingStmt

public java.util.List getRuleBindingStmt(BaseTable table,
                                         boolean quoteIdentifiers,
                                         boolean qualifyNames,
                                         boolean fullSyntax)

grantPrivilege

public java.lang.String[] grantPrivilege(Privilege privilege,
                                         boolean quoteIdentifiers,
                                         boolean qualifyNames,
                                         boolean fullSyntax)
Description copied from class: SybaseDdlBuilder
Assemble SQL statement to grant privilege.
One thing needs to be pointed out is, a privilege instance can be referenced by an instance of AuthorizationIdentifier (The grantor), it can also be contained by an instance of AuthorizationIdentifier (The grantee).

In this case, to avoid generating a same grant statement two times, we only generate the statement for a contained privilege.

Syntax:
Adaptive Server Anywhere 9.x

        GRANT {
            ALL [ PRIVILEGES ],
            ALTER,
            DELETE,
            INSERT,
            REFERENCES [ ( column-name, ... ) ],
            SELECT [ ( column-name, ... ) ],
            UPDATE [ ( column-name, ... ) ],
            }
            ON [ owner.]table-name
            TO userid, ...
            [ WITH GRANT OPTION ]
            [ FROM userid  ]
 
   GRANT EXECUTE ON [ owner.]procedure-name TO userid, ...
 

Adaptive Server Enterprise 12.5.x & 15.x

        grant {all [privileges]| permission_list}
            on { table_name [(column_list)]
            | view_name[(column_list)]
            | stored_procedure_name}
            to {public | name_list | role_name}
            [with grant option]
 
           Object              permission_list
           ------------------------------------------------------
           Table               select, insert, delete, update, references
           View                select, insert, delete, update
           Column              select, update, references
           Stored procedure    execute
 
TODO: For ASE15, there're new types of permissions, I'll do research to find out if we should support them. The "[FROM userid]" sub clause won't be used here.
Generally speaking, the "[ALL PRIVILEGES]" won't appear since in system table there is no "[ALL PRIVILEGES]" type.

Overrides:
grantPrivilege in class SybaseDdlBuilder
Parameters:
privilege - the privilege instance
quoteIdentifiers - the status of "quoted_identifier"
qualifyNames - if qulified name should be used

revokePrivilege

public java.lang.String revokePrivilege(Privilege privilege,
                                        boolean quoteIdentifiers,
                                        boolean qualifyNames)
Description copied from class: SybaseDdlBuilder
Assemble SQL statement to revoke privilege. Syntax:
Adaptive Server Anywhere 9.x
       REVOKE table-priv, ...
           ON [ owner.]table-name
           FROM userid, ...
      
           table-priv :
           ALL [PRIVILEGES]
           | ALTER
           | DELETE
           | INSERT
           | REFERENCES [ ( column-name, ...) ]
           | SELECT [ ( column-name, ...) ]
           | UPDATE [ ( column-name, ...) ]
      
 
      REVOKE EXECUTE
          ON [ owner.]procedure-name
          FROM userid, ...
 
Adaptive Server Enterprise 12.5.x & 15.x
   revoke [grant option for]
       {all [privileges] | permission_list}
       on { table_name [(column_list)]
       | view_name [(column_list)]
       | stored_procedure_name}
       from {public | name_list | role_name}
       [cascade]
 
Generally speaking, the "[ALL PRIVILEGES]" won't appear since in system table there is no "[ALL PRIVILEGES]" type.
"[cascade]" is to control whether we should revoke the privilege granted by the revokee, thus won't used here.
"[grant option for]" will be used in delta ddl gen provider.

Overrides:
revokePrivilege in class SybaseDdlBuilder
Parameters:
privilege - the privilege instance
quoteIdentifiers - the status of "quoted_identifier"
qualifyNames - if qulified name should be used

addUniqueConstraint

public java.lang.String[] addUniqueConstraint(UniqueConstraint constraint,
                                              boolean quoteIdentifiers,
                                              boolean qualifyNames,
                                              boolean fullSyntax)
Returns the SQL Statement for adding unique constraint/primary key clause.

See following SQL Syntax:

    alter table [[database.][owner].table_name
       add {[constraint constraint_name]
       { unique | primary key}
       [clustered | nonclustered]
       (column_name [asc | desc]
       [, column_name [asc | desc]...])
       [with { fillfactor = pct,
       max_rows_per_page = num_rows,
       reservepagegap = num_pages}]
       [on segment_name]
 

Specified by:
addUniqueConstraint in class SybaseDdlBuilder
Parameters:
constraint -
quoteIdentifiers -
qualifyNames -
fullSyntax -
Returns:
String[]

addForeignKey

public java.lang.String[] addForeignKey(ForeignKey foreignKey,
                                        boolean quoteIdentifiers,
                                        boolean qualifyNames,
                                        boolean fullSyntax)
Returns the SQL Statement for adding foreign key clause.

See following SQL Syntax:

    alter table [[database.][owner].table_name
       add {[constraint constraint_name]
       foreign key (column_name [{, column_name}...])
       references [[database.]owner.]ref_table
       [(ref_column [{, ref_column}...])]
       [match full]
 

Specified by:
addForeignKey in class SybaseDdlBuilder
Parameters:
constraint -
quoteIdentifiers -
qualifyNames -
fullSyntax -
Returns:
String[]

createIndex

public java.lang.String[] createIndex(Index index,
                                      boolean quoteIdentifiers,
                                      boolean qualifyNames,
                                      boolean fullSyntax)
Overrides:
createIndex in class SybaseDdlBuilder

createView

public java.lang.String[] createView(ViewTable view,
                                     boolean quoteIdentifiers,
                                     boolean qualifyNames,
                                     boolean fullSyntax)
    CREATE VIEW
    [ owner.]view-name [ ( column-name, . . . ) ]
    AS select [distinct]select-statement
    [ WITH CHECK OPTION ]
 

Specified by:
createView in class SybaseDdlBuilder

createWebServiceTable

public java.lang.String[] createWebServiceTable(SybaseASEWebServiceTable ws,
                                                boolean quoteIdentifiers,
                                                boolean qualifyNames,
                                                boolean fullSyntax)
Returns the SQL Statement for creating a webservice table.

See following SQL Syntax:

  sp_webservices 'add','wsdl_uri'[,sds_name]
  [,'method_name=proxy_table'
  [,method_name=proxy_table]*']
  
 

Parameters:
ws -
quoteIdentifiers -
qualifyNames -
Returns:

dropWebServiceTable

public java.lang.String dropWebServiceTable(SybaseASEWebServiceTable ws,
                                            boolean quoteIdentifiers,
                                            boolean qualifyNames)
Returns the SQL Statement for droping a webservice table.

See following SQL Syntax:

  sp_webservices 'remove','wsdl_uri'[,sds_name]
 

Parameters:
ws -
quoteIdentifiers -
qualifyNames -
Returns:

dropCatalog

public java.lang.String dropCatalog(Catalog db,
                                    boolean quoteIdentifiers,
                                    boolean qualifyNames)
Overrides:
dropCatalog in class SybaseDdlBuilder

dropProcedure

public java.lang.String dropProcedure(Procedure procedure,
                                      boolean quoteIdentifiers,
                                      boolean qualifyNames)
Overrides:
dropProcedure in class SybaseDdlBuilder

dropUserDefinedType

public java.lang.String dropUserDefinedType(UserDefinedType udt,
                                            boolean quoteIdentifiers,
                                            boolean qualifyNames)
Returns the SQL Statement for droping user defined type.

See following SQL Syntax:

  sp_droptype typename
   
 

Specified by:
dropUserDefinedType in class SybaseDdlBuilder
Parameters:
aseUDT -
quoteIdentifiers -
qualifyNames -
Returns:

dropDefault

public java.lang.String dropDefault(SybaseASEDefault aseDefault,
                                    boolean quoteIdentifiers,
                                    boolean qualifyNames)
Returns the SQL Statement for droping default.

See following SQL Syntax:

  drop default [owner.]default_name
           [, [owner.]default_name] ...
   
 

Parameters:
aseDefault -
quoteIdentifiers -
qualifyNames -
Returns:

dropRule

public java.lang.String dropRule(SybaseASERule aseRule,
                                 boolean quoteIdentifiers,
                                 boolean qualifyNames)
Returns the SQL Statement for droping rule.

See following SQL Syntax:

  drop rule [owner.]rule_name [, [owner.]rule_name] ...
   
 

Parameters:
aseRule -
quoteIdentifiers -
qualifyNames -
Returns:

dropTrigger

public java.lang.String dropTrigger(Trigger trigger,
                                    boolean quoteIdentifiers,
                                    boolean qualifyNames)
Overrides:
dropTrigger in class GenericDdlBuilder

dropTable

public java.lang.String dropTable(BaseTable table,
                                  boolean quoteIdentifiers,
                                  boolean qualifyNames)
Overrides:
dropTable in class GenericDdlBuilder

dropView

public java.lang.String dropView(ViewTable view,
                                 boolean quoteIdentifiers,
                                 boolean qualifyNames)
Description copied from class: SybaseDdlBuilder
     DROP VIEW
     [ owner.]view-name 
 

Overrides:
dropView in class SybaseDdlBuilder

createColumn

public java.lang.String createColumn(Column col,
                                     boolean quoteIdentifiers,
                                     boolean qualifyNames)

dropForeignKey

public java.lang.String dropForeignKey(ForeignKey foreignKey,
                                       boolean quoteIdentifiers,
                                       boolean qualifyNames)
Specified by:
dropForeignKey in class SybaseDdlBuilder

dropCheckConstraint

public java.lang.String dropCheckConstraint(CheckConstraint constraint,
                                            boolean quoteIdentifiers,
                                            boolean qualifyNames)
Specified by:
dropCheckConstraint in class SybaseDdlBuilder

dropUniqueConstraint

public java.lang.String dropUniqueConstraint(UniqueConstraint constraint,
                                             boolean quoteIdentifiers,
                                             boolean qualifyNames)
Specified by:
dropUniqueConstraint in class SybaseDdlBuilder

getName

public java.lang.String getName(org.eclipse.emf.ecore.ENamedElement element,
                                boolean quoteIdentifiers,
                                boolean qualifyNames)
Overrides:
getName in class SybaseDdlBuilder

getName

public java.lang.String getName(Table table,
                                boolean quoteIdentifiers,
                                boolean qualifyNames)

createAuthorizationId

public java.lang.String[] createAuthorizationId(AuthorizationIdentifier authId,
                                                boolean quoteIdentifiers,
                                                boolean qualifyNames,
                                                boolean fullSyntax)
  sp_adduser loginame [, name_in_db [, grpname]]
  
  sp_addgroup grpname
  
  sp_changegroup grpname, username
 

Specified by:
createAuthorizationId in class SybaseDdlBuilder

createColumn

public java.lang.String[] createColumn(Column col,
                                       boolean quoteIdentifiers,
                                       boolean qualifyNames,
                                       boolean fullSyntax)
  alter table [[database.][owner].table_name
  add column_name
   datatype
   [default {constant_expression | user | null}]
   {identity | null | not null}
   [off row | in row]
 

Specified by:
createColumn in class SybaseDdlBuilder

createBoundDefault

public java.lang.String createBoundDefault(Column col,
                                           boolean quoteIdentifiers,
                                           boolean qualifyNames,
                                           boolean fullSyntax)

dropAuthorizationId

public java.lang.String dropAuthorizationId(AuthorizationIdentifier authId,
                                            boolean quoteIdentifiers,
                                            boolean qualifyNames)
  sp_dropuser name_in_db
  sp_dropgroup grpname
 

Specified by:
dropAuthorizationId in class SybaseDdlBuilder

createSegment

public java.lang.String[] createSegment(SybaseASESegment segment,
                                        boolean quoteIdentifiers,
                                        boolean qualifyNames,
                                        boolean fullSyntax)
  sp_addsegment segname, dbname, devname
  sp_extendsegment segname, dbname, devname
 


dropSegment

public java.lang.String dropSegment(SybaseASESegment segment,
                                    boolean quoteIdentifiers,
                                    boolean qualifyNames)

getIndexKeyColumns

public java.lang.String getIndexKeyColumns(Index index,
                                           boolean quoteIdentifiers)
Overrides:
getIndexKeyColumns in class SybaseDdlBuilder

addCheckConstraint

public java.lang.String[] addCheckConstraint(CheckConstraint constraint,
                                             boolean quoteIdentifiers,
                                             boolean qualifyNames,
                                             boolean fullSyntax)
Returns the SQL Statement for adding check constraint clause.

See following SQL Syntax:

   alter table [[database.][owner].table_name
      add {[constraint constraint_name]
      check (search_condition)}
 

Overrides:
addCheckConstraint in class SybaseDdlBuilder
Parameters:
constraint -
quoteIdentifiers -
qualifyNames -
fullSyntax -
Returns:
String[]