asd
Python
code posted
created at 06 May 12:01, updated at 08 May 02:52
Edit
|
Back
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# -*- 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) |
1.6 KB in 3 ms with coderay