/* OPERACION COMMIT EN BASES DE DATOS */ /* ---------------------------------------------------*/ /* -- Programa: commit.lex ----*/ /* -- TEcnica: Dirigida por la sintAxis ----*/ /* -- Programador: J. Rafael R. ochoa ----*/ /*----------------------------------------------------*/ %{ #include "y.tab.h" %} st [ \t] blank ({st}) let [a-zA-Z] numlet [a-zA-Z0-9_-] numero ([0-9]+) texto ({let}+{numlet}*) todo (\<[^\>]*\>) %% "*" {return ASTERISCO;} "'" {return APOSTROFE;} "," {return COMA;} "=" {return IGUAL;} "\n" {return LINEA;} "(" {return LEFT;} ")" {return RIGHT;} "\\Q" {return SALIR;} "\\q" {return SALIR;} "\\G" {return GO;} "\\g" {return GO;} "INSERT" {return INSERT;} "INTO" {return INTO;} "VALUES" {return VALUES;} "BEGIN" {return BEGINX;} "DELETE" {return DELETE;} "FROM" {return FROM;} "WHERE" {return WHERE;} "SELECT" {return SELECT;} "UPDATE" {return UPDATE;} "CREATE" {return CREATE;} "TABLE" {return TABLE;} "DROP" {return DROP;} "NOT_NULL" {return NOT_NULL;} "SET" {return SET;} "AND" {return AND;} "OR" {return OR;} "CHAR" {return CHAR;} "INT" {return INT;} "COMMIT" {return COMMIT;} "ROLLBACK" {return ROLLBACK;} "TRANSACTION" {return TRANSACTION;} "transaction" {return TRANSACTION;} "begin" {return BEGINX;} "insert" {return INSERT;} "into" {return INTO;} "values" {return VALUES;} "delete" {return DELETE;} "from" {return FROM;} "where" {return WHERE;} "select" {return SELECT;} "update" {return UPDATE;} "create" {return CREATE;} "table" {return TABLE;} "drop" {return DROP;} "not_null" {return NOT_NULL;} "set" {return SET;} "and" {return AND;} "or" {return OR;} "char" {return CHAR;} "int" {return INT;} "commit" {return COMMIT;} "rollback" {return ROLLBACK;} {numero} { sprintf(yylval.str, "%s", yytext); return NUMERO; } {texto} { sprintf(yylval.str, "%s",yytext); return TEXTO; } . { ; } %% int yywrap() { return(1); }