sql-ddl-to-json-schema
Version:
Parse and convert SQL DDL statements to a JSON Schema.
146 lines (145 loc) • 4.22 kB
TypeScript
import { P_ALTER_TABLE } from '../../../../../typings';
import { TableModelInterface, DatabaseModelInterface, RuleHandler } from '../typings';
/**
* Formatter for P_ALTER_TABLE rule's parsed JSON.
*/
export declare class AlterTable implements RuleHandler {
database: DatabaseModelInterface;
/**
* Get table with given name.
*
* @param name Table name.
*/
getTable(name: string): TableModelInterface | undefined;
/**
* Setter for database.
*
* @param database Database instance.
*/
setDatabase(database: DatabaseModelInterface): void;
/**
* Alters one of the tables.
*
* @param json JSON format parsed from SQL.
*/
handleDef(json: P_ALTER_TABLE): void;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static addColumn;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static addColumns;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static addIndex;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static addPrimaryKey;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static addUniqueKey;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static addFulltextIndex;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static addSpatialIndex;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static addForeignKey;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static setDefaultColumnValue;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static dropDefaultColumnValue;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static changeColumn;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static dropColumn;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static dropIndex;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static dropPrimaryKey;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static dropForeignKey;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static renameIndex;
/**
* Performs action in ALTER TABLE statement.
*
* @param json O_ALTER_TABLE_SPEC def object in JSON.
* @param table Table to be altered.
*/
private static rename;
}