Title / Description
Code # -*- coding: utf-8 -*- """ Обертка Ð´Ð»Ñ ÐºÐ»Ð°ÑÑа MySQLdb.connection. Служит Ð´Ð»Ñ ÑƒÐ¿Ñ€Ð¾Ñ‰ÐµÐ½Ð¸Ñ Ñ€ÑƒÑ‚Ð¸Ð½Ð½Ñ‹Ñ… операций Ñ Ð±Ð°Ð·Ð¾Ð¹ """ from MySQLdb import connection, escape_string class AdvancedConnection(connection): def query(self, *args, **kwargs): """ ВыполнÑет Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð² одно дейÑтвие. Возвращает курÑор """ cursor = self.cursor() cursor.execute(*args, **kwargs) return cursor def insert(self, table, data): """ ВыполнÑет INSERT в таблицу table, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð² качеÑтве имен полей ключи ÑÐ»Ð¾Ð²Ð°Ñ€Ñ data """ fields_name = [] fileds_value = [] for k,v in data.items(): fields_name.append("`%s`" % str(k)) fields_value.append("'%s'" % escape_string(str(v))) query = "INSERT INTO `%s` (%s) values (%s)" % (table, ",".join(fields_name), ",".join(fields_value)) self.query(query) def update(self, table, data, where_clause=""): """ ВыполнÑет UPDATE в таблице table, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð² качеÑтве имен полей ключи ÑÐ»Ð¾Ð²Ð°Ñ€Ñ data. УÑловие WHERE может быть задано в where_clause. Expl: update("sometable", update_data, "`MyKey` = 31337") """ fields_list = [] for k,v in data.items(): fields_list.append("`%s` = '%s'" % (str(k), escape_string(str(v)))) if where_clause: where_clause = "WHERE %s" % where_clause query = "UPDATE `%s` SET %s %s" % (table, ", ".join(fields_list), where_clause) self.query(query)
Author
Highlight as C C++ CSS Clojure Delphi ERb Groovy (beta) HAML HTML JSON Java JavaScript PHP Plain text Python Ruby SQL XML YAML diff code