Hi John, Thanks for the suggestions: I have finally been able to get it working :)
In anyone else runs into the same problem, here is some example code that works in Python 2.4+: ============= Begin Example ================== #!/usr/bin/env python #-*- coding:utf-8 -*- import sys def main(): import MySQLdb, getpass admin = raw_input("Database admin: ") pw = getpass.getpass("Password: ") db = MySQLdb.connect(use_unicode=True, charset = "utf8", user=admin, passwd=pw) cursor = db.cursor() try: cursor.execute("DROP DATABASE IF EXISTS unicode_test;") cursor.execute("CREATE DATABASE unicode_test DEFAULT CHARACTER SET utf8;") except: print "" cursor.execute(''' CREATE TABLE `unicode_test`.`test` ( `id` SMALLINT unsigned NOT NULL AUTO_INCREMENT, `name` VARCHAR(255) NOT NULL, PRIMARY KEY (`id`), INDEX (`id`) ) DEFAULT CHARSET=utf8;''') cursor.execute("INSERT INTO `unicode_test`.`test` VALUES (NULL, '%s');" % u"Ångström") # Test 1 print "Just printing: %s" % 'Ångström' # Test 2 cursor.execute("SELECT name FROM unicode_test.test;") print "From database: %s" % cursor.fetchone()[0] # Test 3 (Manual) print 'To verify manually: mysql -u %s -p -e "SELECT name FROM unicode_test.test"' % admin if __name__ == '__main__': sys.exit(main()) ============= End Example ==================== Thanks all for taking the time to help! Best, Keith -- http://mail.python.org/mailman/listinfo/python-list