summaryrefslogtreecommitdiff
path: root/ext/mysqlnd/mysqlnd.c
diff options
context:
space:
mode:
authorAndrey Hristov <andrey@php.net>2011-02-25 12:25:36 +0000
committerAndrey Hristov <andrey@php.net>2011-02-25 12:25:36 +0000
commit113cd9dc0f133441b9790a8d13f1e843c4df707f (patch)
tree41cc85efcaffb8e5dd68a73540a4a4ffd354d1f4 /ext/mysqlnd/mysqlnd.c
parente79bf567e8a4f323d2526f0f96a37f2e52d3b5ce (diff)
downloadphp-git-113cd9dc0f133441b9790a8d13f1e843c4df707f.tar.gz
move from macros to functions, which can be overwritten, if needed
Diffstat (limited to 'ext/mysqlnd/mysqlnd.c')
-rw-r--r--ext/mysqlnd/mysqlnd.c42
1 files changed, 41 insertions, 1 deletions
diff --git a/ext/mysqlnd/mysqlnd.c b/ext/mysqlnd/mysqlnd.c
index f2a9f3422e..b233438b14 100644
--- a/ext/mysqlnd/mysqlnd.c
+++ b/ext/mysqlnd/mysqlnd.c
@@ -2225,6 +2225,43 @@ MYSQLND_METHOD(mysqlnd_conn, get_connection_stats)(const MYSQLND * const conn,
/* }}} */
+/* {{{ mysqlnd_conn::set_autocommit */
+static enum_func_status
+MYSQLND_METHOD(mysqlnd_conn, set_autocommit)(MYSQLND * conn, unsigned int mode TSRMLS_DC)
+{
+ enum_func_status ret;
+ DBG_ENTER("mysqlnd_conn::set_autocommit");
+ ret = conn->m->query(conn, (mode) ? "SET AUTOCOMMIT=1":"SET AUTOCOMMIT=0", sizeof("SET AUTOCOMMIT=1") - 1 TSRMLS_CC);
+ DBG_RETURN(ret);
+}
+/* }}} */
+
+
+/* {{{ mysqlnd_conn::tx_commit */
+static enum_func_status
+MYSQLND_METHOD(mysqlnd_conn, tx_commit)(MYSQLND * conn TSRMLS_DC)
+{
+ enum_func_status ret;
+ DBG_ENTER("mysqlnd_conn::tx_commit");
+ ret = conn->m->query(conn, "COMMIT", sizeof("COMMIT") - 1 TSRMLS_CC);
+ DBG_RETURN(ret);
+}
+/* }}} */
+
+
+/* {{{ mysqlnd_conn::tx_rollback */
+static enum_func_status
+MYSQLND_METHOD(mysqlnd_conn, tx_rollback)(MYSQLND * conn TSRMLS_DC)
+{
+ enum_func_status ret;
+ DBG_ENTER("mysqlnd_conn::tx_rollback");
+ ret = conn->m->query(conn, "ROLLBACK", sizeof("ROLLBACK") - 1 TSRMLS_CC);
+ DBG_RETURN(ret);
+}
+/* }}} */
+
+
+
MYSQLND_STMT * _mysqlnd_stmt_init(MYSQLND * const conn TSRMLS_DC);
static enum_func_status MYSQLND_METHOD(mysqlnd_conn, init)(MYSQLND * conn TSRMLS_DC);
@@ -2298,7 +2335,10 @@ MYSQLND_CLASS_METHODS_START(mysqlnd_conn)
MYSQLND_METHOD(mysqlnd_conn, send_close),
MYSQLND_METHOD(mysqlnd_conn, ssl_set),
- mysqlnd_result_init
+ mysqlnd_result_init,
+ MYSQLND_METHOD(mysqlnd_conn, set_autocommit),
+ MYSQLND_METHOD(mysqlnd_conn, tx_commit),
+ MYSQLND_METHOD(mysqlnd_conn, tx_rollback)
MYSQLND_CLASS_METHODS_END;