code: def set_character_set(self, charset):
          
          if charset in ("utf8mb4", "utf8mb3"):
              py_charset = "utf8"
          else:
              py_charset = charset
          if self.character_set_name() != charset:
              try:
                  super(Connection, self).set_character_set(charset)
              except AttributeError:
                  if self._server_version < (4, 1):
                      raise NotSupportedError("server is too old to set charset")
                  self.query('SET NAMES %s' % charset)
                  self.store_result()
          self.encoding = py_charset
docs: Set the connection character set to charset. The character
          set can only be changed in MySQL-4.1 and newer. If you try
          to change the character set from the current value in an
          older version, NotSupportedError will be raised.