diff options
author | Antoine Pitrou <solipsis@pitrou.net> | 2013-02-09 23:02:44 (GMT) |
---|---|---|
committer | Antoine Pitrou <solipsis@pitrou.net> | 2013-02-09 23:02:44 (GMT) |
commit | 902fc8b5a0035cc95f6d849f759577f9d315caaf (patch) | |
tree | 76fc231932346ba359e0de8a4cb0fce4e892c361 /Modules/_sqlite/module.c | |
parent | 8ad5b07ccb81f51551ac087a5409ebc85c0d16a7 (diff) | |
download | cpython-902fc8b5a0035cc95f6d849f759577f9d315caaf.zip cpython-902fc8b5a0035cc95f6d849f759577f9d315caaf.tar.gz cpython-902fc8b5a0035cc95f6d849f759577f9d315caaf.tar.bz2 |
Issue #13773: sqlite3.connect() gets a new `uri` parameter to pass the filename as a URI, allowing to pass custom options.
Diffstat (limited to 'Modules/_sqlite/module.c')
-rw-r--r-- | Modules/_sqlite/module.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/Modules/_sqlite/module.c b/Modules/_sqlite/module.c index bea6d6a..7a7e860 100644 --- a/Modules/_sqlite/module.c +++ b/Modules/_sqlite/module.c @@ -50,19 +50,26 @@ static PyObject* module_connect(PyObject* self, PyObject* args, PyObject* * C-level, so this code is redundant with the one in connection_init in * connection.c and must always be copied from there ... */ - static char *kwlist[] = {"database", "timeout", "detect_types", "isolation_level", "check_same_thread", "factory", "cached_statements", NULL, NULL}; + static char *kwlist[] = { + "database", "timeout", "detect_types", "isolation_level", + "check_same_thread", "factory", "cached_statements", "uri", + NULL + }; char* database; int detect_types = 0; PyObject* isolation_level; PyObject* factory = NULL; int check_same_thread = 1; int cached_statements; + int uri = 0; double timeout = 5.0; PyObject* result; - if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s|diOiOi", kwlist, - &database, &timeout, &detect_types, &isolation_level, &check_same_thread, &factory, &cached_statements)) + if (!PyArg_ParseTupleAndKeywords(args, kwargs, "s|diOiOip", kwlist, + &database, &timeout, &detect_types, + &isolation_level, &check_same_thread, + &factory, &cached_statements, &uri)) { return NULL; } @@ -77,7 +84,8 @@ static PyObject* module_connect(PyObject* self, PyObject* args, PyObject* } PyDoc_STRVAR(module_connect_doc, -"connect(database[, timeout, isolation_level, detect_types, factory])\n\ +"connect(database[, timeout, detect_types, isolation_level,\n\ + check_same_thread, factory, cached_statements, uri])\n\ \n\ Opens a connection to the SQLite database file *database*. You can use\n\ \":memory:\" to open a database connection to a database that resides in\n\ |