def connect(self):
        # Get Host and Port
        if ((len(self.host) == 0) or (self.host == None)):
            from envvar import Env
            print "Reading Host from ENV"
            self.host = Env('', '').etl_map['Host']

        if (self.port == 0):
            from envvar import Env
            print "Reading Port from ENV"
            self.port = Env('', '').etl_map['MD_DB_PORT']

        # Still no info about Host and Port, GO BACK
        if ((self.host is None) or (self.port == 0)):
            print "Unable to get Host and Port"
            return (StatusCodes.ERROR)

        os.system("clear")
        print "Connecting to Host:", self.host, ":", self.port
        from tdscli import TDSClient

        self.db_client = TDSClient()

        try:
            self.db_client.connect(self.host, self.port)
        except Exception as e:
            print "Unable to connect: Details Below"
            #print "Error Code: ", e.errno
            #print "Error String: ", e.strerror
            print e.message
            return (StatusCodes.ERROR)

        print "Connected ..."
        return (StatusCodes.SUCCESS)
    def execute_SQL_query(self):
        from tdscli import TDSError, TDSClient

        self.db_client = TDSClient()
        self.prepare_query()

        print "Connecting to Host:", self.host, ":", self.port, "To execute SQL"

        try:
            result_set = self.db_client.execute_sql(self.host, self.port,
                                                    self.dao, self.query_str)
        except TDSError as err_info:
            print "Error while executing SQL"
            print err_info
            return (StatusCodes.ERROR)
        except socket.error as e:
            print "Error while executing SQL"
            print e
            return (StatusCodes.ERROR)

        return result_set