summaryrefslogtreecommitdiff
path: root/ext/dbx/dbx.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/dbx/dbx.c')
-rw-r--r--ext/dbx/dbx.c19
1 files changed, 17 insertions, 2 deletions
diff --git a/ext/dbx/dbx.c b/ext/dbx/dbx.c
index 0b0d4d83d9..d15bbe045b 100644
--- a/ext/dbx/dbx.c
+++ b/ext/dbx/dbx.c
@@ -40,6 +40,7 @@
#define DBX_FBSQL 5
#define DBX_OCI8 6
#define DBX_SYBASECT 7
+#define DBX_SQLITE 8
/* includes for supported databases */
#include "dbx.h"
#include "dbx_mysql.h"
@@ -49,6 +50,7 @@
#include "dbx_fbsql.h"
#include "dbx_oci8.h"
#include "dbx_sybasect.h"
+#include "dbx_sqlite.h"
/* support routines */
int module_exists(char *module_name)
@@ -69,6 +71,7 @@ int module_identifier_exists(long module_identifier)
case DBX_FBSQL: return module_exists("fbsql");
case DBX_OCI8: return module_exists("oci8");
case DBX_SYBASECT: return module_exists("sybase_ct");
+ case DBX_SQLITE: return module_exists("sqlite");
}
return 0;
}
@@ -82,6 +85,7 @@ int get_module_identifier(char *module_name)
if (!strcmp("fbsql", module_name)) return DBX_FBSQL;
if (!strcmp("oci8", module_name)) return DBX_OCI8;
if (!strcmp("sybase_ct", module_name)) return DBX_SYBASECT;
+ if (!strcmp("sqlite", module_name)) return DBX_SQLITE;
return DBX_UNKNOWN;
}
@@ -186,6 +190,7 @@ ZEND_MINIT_FUNCTION(dbx)
REGISTER_LONG_CONSTANT("DBX_FBSQL", DBX_FBSQL, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("DBX_OCI8", DBX_OCI8, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("DBX_SYBASECT", DBX_SYBASECT, CONST_CS | CONST_PERSISTENT);
+ REGISTER_LONG_CONSTANT("DBX_SQLITE", DBX_SQLITE, CONST_CS | CONST_PERSISTENT);
REGISTER_LONG_CONSTANT("DBX_PERSISTENT", DBX_PERSISTENT, CONST_CS | CONST_PERSISTENT);
@@ -226,8 +231,8 @@ ZEND_MINFO_FUNCTION(dbx)
{
php_info_print_table_start();
php_info_print_table_row(2, "dbx support", "enabled");
- php_info_print_table_row(2, "dbx version", "1.0.0");
- php_info_print_table_row(2, "supported databases", "MySQL\nODBC\nPostgreSQL\nMicrosoft SQL Server\nFrontBase\nOracle 8 (oci8)\nSybase-CT");
+ php_info_print_table_row(2, "dbx version", "1.0.1");
+ php_info_print_table_row(2, "supported databases", "MySQL\nODBC\nPostgreSQL\nMicrosoft SQL Server\nFrontBase\nOracle 8 (oci8)\nSybase-CT\nSQLite");
php_info_print_table_end();
DISPLAY_INI_ENTRIES();
}
@@ -725,6 +730,7 @@ int switch_dbx_connect(zval **rv, zval **host, zval **db, zval **username, zval
case DBX_FBSQL: return dbx_fbsql_connect(rv, host, db, username, password, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_OCI8: return dbx_oci8_connect(rv, host, db, username, password, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_SYBASECT: return dbx_sybasect_connect(rv, host, db, username, password, INTERNAL_FUNCTION_PARAM_PASSTHRU);
+ case DBX_SQLITE: return dbx_sqlite_connect(rv, host, db, username, password, INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
php_error_docref(NULL TSRMLS_CC, E_WARNING, "not supported in this module");
return 0;
@@ -741,6 +747,7 @@ int switch_dbx_pconnect(zval **rv, zval **host, zval **db, zval **username, zval
case DBX_FBSQL: return dbx_fbsql_pconnect(rv, host, db, username, password, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_OCI8: return dbx_oci8_pconnect(rv, host, db, username, password, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_SYBASECT: return dbx_sybasect_pconnect(rv, host, db, username, password, INTERNAL_FUNCTION_PARAM_PASSTHRU);
+ case DBX_SQLITE: return dbx_sqlite_pconnect(rv, host, db, username, password, INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
php_error_docref(NULL TSRMLS_CC, E_WARNING, "not supported in this module");
return 0;
@@ -757,6 +764,7 @@ int switch_dbx_close(zval **rv, zval **dbx_handle, INTERNAL_FUNCTION_PARAMETERS,
case DBX_FBSQL: return dbx_fbsql_close(rv, dbx_handle, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_OCI8: return dbx_oci8_close(rv, dbx_handle, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_SYBASECT: return dbx_sybasect_close(rv, dbx_handle, INTERNAL_FUNCTION_PARAM_PASSTHRU);
+ case DBX_SQLITE: return dbx_sqlite_close(rv, dbx_handle, INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
php_error_docref(NULL TSRMLS_CC, E_WARNING, "not supported in this module");
return 0;
@@ -773,6 +781,7 @@ int switch_dbx_query(zval **rv, zval **dbx_handle, zval **db_name, zval **sql_st
case DBX_FBSQL: return dbx_fbsql_query(rv, dbx_handle, db_name, sql_statement, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_OCI8: return dbx_oci8_query(rv, dbx_handle, db_name, sql_statement, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_SYBASECT: return dbx_sybasect_query(rv, dbx_handle, db_name, sql_statement, INTERNAL_FUNCTION_PARAM_PASSTHRU);
+ case DBX_SQLITE: return dbx_sqlite_query(rv, dbx_handle, db_name, sql_statement, INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
php_error_docref(NULL TSRMLS_CC, E_WARNING, "not supported in this module");
return 0;
@@ -789,6 +798,7 @@ int switch_dbx_getcolumncount(zval **rv, zval **result_handle, INTERNAL_FUNCTION
case DBX_FBSQL: return dbx_fbsql_getcolumncount(rv, result_handle, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_OCI8: return dbx_oci8_getcolumncount(rv, result_handle, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_SYBASECT: return dbx_sybasect_getcolumncount(rv, result_handle, INTERNAL_FUNCTION_PARAM_PASSTHRU);
+ case DBX_SQLITE: return dbx_sqlite_getcolumncount(rv, result_handle, INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
php_error_docref(NULL TSRMLS_CC, E_WARNING, "not supported in this module");
return 0;
@@ -805,6 +815,7 @@ int switch_dbx_getcolumnname(zval **rv, zval **result_handle, long column_index,
case DBX_FBSQL: return dbx_fbsql_getcolumnname(rv, result_handle, column_index, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_OCI8: return dbx_oci8_getcolumnname(rv, result_handle, column_index, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_SYBASECT: return dbx_sybasect_getcolumnname(rv, result_handle, column_index, INTERNAL_FUNCTION_PARAM_PASSTHRU);
+ case DBX_SQLITE: return dbx_sqlite_getcolumnname(rv, result_handle, column_index, INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
php_error_docref(NULL TSRMLS_CC, E_WARNING, "not supported in this module");
return 0;
@@ -821,6 +832,7 @@ int switch_dbx_getcolumntype(zval **rv, zval **result_handle, long column_index,
case DBX_FBSQL: return dbx_fbsql_getcolumntype(rv, result_handle, column_index, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_OCI8: return dbx_oci8_getcolumntype(rv, result_handle, column_index, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_SYBASECT: return dbx_sybasect_getcolumntype(rv, result_handle, column_index, INTERNAL_FUNCTION_PARAM_PASSTHRU);
+ case DBX_SQLITE: return dbx_sqlite_getcolumntype(rv, result_handle, column_index, INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
php_error_docref(NULL TSRMLS_CC, E_WARNING, "not supported in this module");
return 0;
@@ -837,6 +849,7 @@ int switch_dbx_getrow(zval **rv, zval **result_handle, long row_number, INTERNAL
case DBX_FBSQL: return dbx_fbsql_getrow(rv, result_handle, row_number, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_OCI8: return dbx_oci8_getrow(rv, result_handle, row_number, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_SYBASECT: return dbx_sybasect_getrow(rv, result_handle, row_number, INTERNAL_FUNCTION_PARAM_PASSTHRU);
+ case DBX_SQLITE: return dbx_sqlite_getrow(rv, result_handle, row_number, INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
php_error_docref(NULL TSRMLS_CC, E_WARNING, "not supported in this module");
return 0;
@@ -853,6 +866,7 @@ int switch_dbx_error(zval **rv, zval **dbx_handle, INTERNAL_FUNCTION_PARAMETERS,
case DBX_FBSQL: return dbx_fbsql_error(rv, dbx_handle, INTERNAL_FUNCTION_PARAM_PASSTHRU);
/* case DBX_OCI8: return dbx_oci8_error(rv, dbx_handle, INTERNAL_FUNCTION_PARAM_PASSTHRU); */
case DBX_SYBASECT: return dbx_sybasect_error(rv, dbx_handle, INTERNAL_FUNCTION_PARAM_PASSTHRU);
+ case DBX_SQLITE: return dbx_sqlite_error(rv, dbx_handle, INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
php_error_docref(NULL TSRMLS_CC, E_WARNING, "not supported in this module");
return 0;
@@ -869,6 +883,7 @@ int switch_dbx_esc(zval **rv, zval **dbx_handle, zval **string, INTERNAL_FUNCTIO
case DBX_FBSQL: return dbx_fbsql_esc(rv, dbx_handle, string, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_OCI8: return dbx_oci8_esc(rv, dbx_handle, string, INTERNAL_FUNCTION_PARAM_PASSTHRU);
case DBX_SYBASECT: return dbx_sybasect_esc(rv, dbx_handle, string, INTERNAL_FUNCTION_PARAM_PASSTHRU);
+ case DBX_SQLITE: return dbx_sqlite_esc(rv, dbx_handle, string, INTERNAL_FUNCTION_PARAM_PASSTHRU);
}
php_error_docref(NULL TSRMLS_CC, E_WARNING, "not supported in this module");
return 0;