Esempio n. 1
0
def renameSql(old, new, table, c, n):
    tempTable = Expression.Relation("temp" + str(n), c)
    where = ""
    rd.createTempAs("tempRename", rd.selectSql("*", table.name, where, c), c)
    rd.modifAttr("tempRename", "RENAME COLUMN", old.name + " to " + new.name,
                 c)
    sel = rd.selectSql("*", "tempRename", where, c)
    rd.createTempAs("temp" + str(n), sel, c)
    c.execute("DROP TABLE tempRename")
    return tempTable
Esempio n. 2
0
def joinSql(table, table2, c, n):
    tempTable = Expression.Relation("temp" + str(n), c)
    rd.createTempAs(
        "temp" + str(n),
        rd.selectSql("*", table.name + " Natural Join " + table2.name, "", c),
        c)
    return tempTable
Esempio n. 3
0
def selectionSqlAttr(attr1, attr2, table, c, n):
    tempTable = Expression.Relation("temp" + str(n), c)
    rd.createTempAs(
        "temp" + str(n),
        rd.selectSql("*", table, " WHERE " + attr1.name + "=" + attr2.name, c),
        c)
    return tempTable
Esempio n. 4
0
def selectionSqlCst(attr, cst, table, c, n):
    tempTable = Expression.Relation("temp" + str(n), c)
    rd.createTempAs(
        "temp" + str(n),
        rd.selectSql("*", table,
                     " WHERE " + attr.name + "='" + str(cst.valeur) + "'", c),
        c)
    return tempTable
Esempio n. 5
0
def projectionSql(attrlist, table, c, n):
    where = " GROUP BY "
    attrs = ""
    for i in range(len(attrlist)):
        if i != len(attrlist) - 1:
            attrs += str(attrlist[i]) + ", "
        else:
            attrs += str(attrlist[i]) + " "
    rd.createTempAs("temp" + str(n),
                    rd.selectSql(attrlist, table, where + attrs, c), c)
    tempTable = Expression.Relation("temp" + str(n), c)
    return tempTable
Esempio n. 6
0
def unionSql(table, table2, c, n):
    tempTable = Expression.Relation("temp" + str(n), c)
    sel1 = rd.selectSql("*", table.name, "", c)
    colstab = rd.getColAndTypes(table.name, c)
    cols = ""
    for i in range(len(colstab)):
        if i != len(colstab) - 1:
            cols += colstab[i][0] + ", "
        else:
            cols += colstab[i][0] + " "
    sel2 = "SELECT " + cols + " FROM " + table2.name
    rd.createTempAs("temp" + str(n), sel1 + " UNION " + sel2, c)
    return tempTable