/* represents a prepared statement */
struct _pdo_stmt_t {
/* driver specifics */
- struct pdo_stmt_methods *methods;
+ const struct pdo_stmt_methods *methods;
void *driver_data;
/* if true, we've already successfully executed this statement at least
}
-struct pdo_stmt_methods dblib_stmt_methods = {
+const struct pdo_stmt_methods dblib_stmt_methods = {
pdo_dblib_stmt_dtor,
pdo_dblib_stmt_execute,
pdo_dblib_stmt_fetch,
int severity, char *msgtext, char *srvname, char *procname, DBUSMALLINT line);
extern const pdo_driver_t pdo_dblib_driver;
-extern struct pdo_stmt_methods dblib_stmt_methods;
+extern const struct pdo_stmt_methods dblib_stmt_methods;
typedef struct {
int severity;
/* }}} */
-struct pdo_stmt_methods firebird_stmt_methods = { /* {{{ */
+const struct pdo_stmt_methods firebird_stmt_methods = { /* {{{ */
firebird_stmt_dtor,
firebird_stmt_execute,
firebird_stmt_fetch,
extern const pdo_driver_t pdo_firebird_driver;
-extern struct pdo_stmt_methods firebird_stmt_methods;
+extern const struct pdo_stmt_methods firebird_stmt_methods;
void _firebird_error(pdo_dbh_t *dbh, pdo_stmt_t *stmt, char const *file, zend_long line);
}
/* }}} */
-struct pdo_stmt_methods mysql_stmt_methods = {
+const struct pdo_stmt_methods mysql_stmt_methods = {
pdo_mysql_stmt_dtor,
pdo_mysql_stmt_execute,
pdo_mysql_stmt_fetch,
#define pdo_mysql_error(s) _pdo_mysql_error(s, NULL, __FILE__, __LINE__)
#define pdo_mysql_error_stmt(s) _pdo_mysql_error(stmt->dbh, stmt, __FILE__, __LINE__)
-extern struct pdo_stmt_methods mysql_stmt_methods;
+extern const struct pdo_stmt_methods mysql_stmt_methods;
enum {
PDO_MYSQL_ATTR_USE_BUFFERED_QUERY = PDO_ATTR_DRIVER_SPECIFIC,
}
} /* }}} */
-struct pdo_stmt_methods oci_stmt_methods = {
+const struct pdo_stmt_methods oci_stmt_methods = {
oci_stmt_dtor,
oci_stmt_execute,
oci_stmt_fetch,
#define oci_drv_error(w) _oci_error(H->err, dbh, NULL, w, H->last_err, FALSE, __FILE__, __LINE__)
#define oci_stmt_error(w) _oci_error(S->err, stmt->dbh, stmt, w, S->last_err, FALSE, __FILE__, __LINE__)
-extern struct pdo_stmt_methods oci_stmt_methods;
+extern const struct pdo_stmt_methods oci_stmt_methods;
/* Default prefetch size in number of rows */
#define PDO_OCI_PREFETCH_DEFAULT 100
return 1;
}
-struct pdo_stmt_methods odbc_stmt_methods = {
+const struct pdo_stmt_methods odbc_stmt_methods = {
odbc_stmt_dtor,
odbc_stmt_execute,
odbc_stmt_fetch,
} pdo_odbc_param;
extern const pdo_driver_t pdo_odbc_driver;
-extern struct pdo_stmt_methods odbc_stmt_methods;
+extern const struct pdo_stmt_methods odbc_stmt_methods;
void pdo_odbc_error(pdo_dbh_t *dbh, pdo_stmt_t *stmt, PDO_ODBC_HSTMT statement, char *what, const char *file, int line);
#define pdo_odbc_drv_error(what) pdo_odbc_error(dbh, NULL, SQL_NULL_HSTMT, what, __FILE__, __LINE__)
return 1;
}
-struct pdo_stmt_methods pgsql_stmt_methods = {
+const struct pdo_stmt_methods pgsql_stmt_methods = {
pgsql_stmt_dtor,
pgsql_stmt_execute,
pgsql_stmt_fetch,
#define pdo_pgsql_error_stmt(s,e,z) _pdo_pgsql_error(s->dbh, s, e, z, NULL, __FILE__, __LINE__)
#define pdo_pgsql_error_stmt_msg(s,e,m) _pdo_pgsql_error(s->dbh, s, e, NULL, m, __FILE__, __LINE__)
-extern struct pdo_stmt_methods pgsql_stmt_methods;
+extern const struct pdo_stmt_methods pgsql_stmt_methods;
#define pdo_pgsql_sqlstate(r) PQresultErrorField(r, PG_DIAG_SQLSTATE)
#define pdo_sqlite_error(s) _pdo_sqlite_error(s, NULL, __FILE__, __LINE__)
#define pdo_sqlite_error_stmt(s) _pdo_sqlite_error(stmt->dbh, stmt, __FILE__, __LINE__)
-extern struct pdo_stmt_methods sqlite_stmt_methods;
+extern const struct pdo_stmt_methods sqlite_stmt_methods;
enum {
PDO_SQLITE_ATTR_OPEN_FLAGS = PDO_ATTR_DRIVER_SPECIFIC,
return 1;
}
-struct pdo_stmt_methods sqlite_stmt_methods = {
+const struct pdo_stmt_methods sqlite_stmt_methods = {
pdo_sqlite_stmt_dtor,
pdo_sqlite_stmt_execute,
pdo_sqlite_stmt_fetch,