Esempio n. 1
0
 def generateHiddenPK(self, nombreTabla):
     typeChecker = TypeChecker()
     tipoEscondido = {
         '_tipoColumna': 'HIDDEN',
         '_paramOne': None,
         '_paramTwo': None
     }
     columnaEscondida = Column('HIDDEN', tipoEscondido)
     columnaEscondida._primaryKey = True
     tableToInsert = typeChecker.searchTable(SymbolTable().useDatabase,
                                             nombreTabla)
     typeChecker.createColumnTable(tableToInsert, columnaEscondida, 0, 0)
     print('### SE HA GENERADO UNA LLAVE PRIMARIA ESCONDIDA')
Esempio n. 2
0
    def agregarCol(self, columna, nombreTabla):
        typeChecker = TypeChecker()

        tipoFinal = {
            '_tipoColumna': str(columna._type_column._tipoColumna),
            '_paramOne': columna._type_column._paramOne,
            '_paramTwo': columna._type_column._paramTwo
        }

        columnaFinal = Column(columna._column_name, tipoFinal)
        tableToInsert = typeChecker.searchTable(SymbolTable().useDatabase,
                                                nombreTabla)
        validateCol = typeChecker.createColumnTable(tableToInsert,
                                                    columnaFinal, 0, 0)
        # if return None an error ocurrio
        if validateCol == None:
            return
Esempio n. 3
0
    def addInherits(self, nameChildTable, nameParentTable):
        typeChecker = TypeChecker()
        tablaPadre = typeChecker.searchTable(SymbolTable().useDatabase,
                                             nameParentTable)
        tablaHija = typeChecker.searchTable(SymbolTable().useDatabase,
                                            nameChildTable)

        # La tabla de la que hereda no existe
        if tablaPadre == None:
            desc = f": parent table dont exists"
            ErrorController().add(27, 'Execution', desc, 0, 0)
            self._can_create_flag = False
            return

        for colPar in tablaPadre._colums:
            # Vamos a insertar en la hija
            validarCol = typeChecker.createColumnTable(tablaHija, colPar, 0, 0)
            # Si es una columna repetida entonces no puede crear la tabla
            if validarCol == None:
                self._can_create_flag = False
                return