コード例 #1
0
ファイル: sql_grammar.py プロジェクト: edgarJ91/tytus
def p_aux_instruccion(t):
    '''instruccion      : SHOW DATABASES PUNTOCOMA
                        | INSERT INTO ID VALUES PAR_ABRE list_val PAR_CIERRA PUNTOCOMA
                        | INSERT INTO ID PAR_ABRE list_id PAR_CIERRA VALUES PAR_ABRE list_val PAR_CIERRA PUNTOCOMA
                        | UPDATE ID SET ID IGUAL expression where PUNTOCOMA
                        | DELETE FROM ID WHERE expression PUNTOCOMA
                        | DELETE FROM ID PUNTOCOMA
                        | USE DATABASE ID PUNTOCOMA'''
    global num_nodo
    if t[1].lower() == 'show':
        t[0] = show_db(t.lineno(1), t.lexpos(1), num_nodo)
        num_nodo += 2
    elif t[1].lower() == 'insert':
        if t[4].lower() == 'values':
            t[0] = insert_into(t[3], t[6], None, t.lineno(1), t.lexpos(1), num_nodo)
            num_nodo += 7
        else:
            t[0] = insert_into(t[3], t[9], t[5], t.lineno(1), t.lexpos(1), num_nodo)
            num_nodo += 10 + len(t[5])
    elif t[1].lower() == 'update':
        t[0] = update_st(t[2], t[4], t[6], t[7], t.lineno(1), t.lexpos(1), num_nodo)
        num_nodo += 8
    elif t[1].lower() == 'delete':
        try:
            t[0] = delete_from(t[3], t[5], t.lineno(1), t.lexpos(1), num_nodo)
            num_nodo += 8
        except:
            t[0] = delete_from(t[3], None, t.lineno(1), t.lexpos(1), num_nodo)
            num_nodo += 8
    elif t[1].lower() == 'use':
        t[0] = use_db(t[3], t.lineno(1), t.lexpos(1), num_nodo)
        num_nodo += 3
コード例 #2
0
def p_aux_instruccion(t):
    '''instruccion      : SHOW DATABASES PUNTOCOMA
                        | INSERT INTO ID VALUES PAR_ABRE list_val PAR_CIERRA PUNTOCOMA
                        | UPDATE ID SET ID IGUAL op_val where PUNTOCOMA
                        | DELETE FROM ID WHERE ID IGUAL op_val PUNTOCOMA'''
    global num_nodo

    if t[1].lower() == 'show':

        t[0] = show_db(t.lineno(1), t.lexpos(1), num_nodo)
        num_nodo += 1

    elif t[1].lower() == 'insert':

        t[0] = insert_into(t[3], t[6], t.lineno(1), t.lexpos(1), num_nodo)
        num_nodo += 7

    elif t[1].lower() == 'update':

        t[0] = update_st(t[2], t[4], t[6], t[7], t.lineno(1), t.lexpos(1),
                         num_nodo)
        num_nodo += 8

    elif t[1].lower() == 'delete':

        t[0] = delete_from(t[3], t[5], t[7], t.lineno(1), t.lexpos(1),
                           num_nodo)
        num_nodo += 8