scottmac Tue Jan 13 02:50:23 2009 UTC Added files: /php-src/ext/pdo_sqlite/tests bug_42589.phpt
Modified files: /php-src/ext/pdo_sqlite config.m4 sqlite_statement.c /php-src/ext/sqlite3 config0.m4 Log: Add table key to getColumnMeta() with SQLite http://cvs.php.net/viewvc.cgi/php-src/ext/pdo_sqlite/config.m4?r1=1.41&r2=1.42&diff_format=u Index: php-src/ext/pdo_sqlite/config.m4 diff -u php-src/ext/pdo_sqlite/config.m4:1.41 php-src/ext/pdo_sqlite/config.m4:1.42 --- php-src/ext/pdo_sqlite/config.m4:1.41 Mon Jan 12 19:02:41 2009 +++ php-src/ext/pdo_sqlite/config.m4 Tue Jan 13 02:50:22 2009 @@ -1,4 +1,4 @@ -dnl $Id: config.m4,v 1.41 2009/01/12 19:02:41 scottmac Exp $ +dnl $Id: config.m4,v 1.42 2009/01/13 02:50:22 scottmac Exp $ dnl config.m4 for extension pdo_sqlite dnl vim:et:sw=2:ts=2: @@ -79,7 +79,7 @@ threadsafe_flags="-DSQLITE_THREADSAFE=0" fi - other_flags="-DSQLITE_ENABLE_FTS3=1 -DSQLITE_CORE=1" + other_flags="-DSQLITE_ENABLE_FTS3=1 -DSQLITE_CORE=1 -DSQLITE_ENABLE_COLUMN_METADATA=1" if test "$PHP_SQLITE3" != "yes"; then PHP_ADD_SOURCES(PHP_EXT_DIR(sqlite3), libsqlite/sqlite3.c) http://cvs.php.net/viewvc.cgi/php-src/ext/pdo_sqlite/sqlite_statement.c?r1=1.27&r2=1.28&diff_format=u Index: php-src/ext/pdo_sqlite/sqlite_statement.c diff -u php-src/ext/pdo_sqlite/sqlite_statement.c:1.27 php-src/ext/pdo_sqlite/sqlite_statement.c:1.28 --- php-src/ext/pdo_sqlite/sqlite_statement.c:1.27 Wed Dec 31 11:12:34 2008 +++ php-src/ext/pdo_sqlite/sqlite_statement.c Tue Jan 13 02:50:23 2009 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: sqlite_statement.c,v 1.27 2008/12/31 11:12:34 sebastian Exp $ */ +/* $Id: sqlite_statement.c,v 1.28 2009/01/13 02:50:23 scottmac Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -323,6 +323,13 @@ add_assoc_string(return_value, "sqlite:decl_type", str, 1); } +#ifdef SQLITE_ENABLE_COLUMN_METADATA + str = sqlite3_column_table_name(S->stmt, colno); + if (str) { + add_assoc_string(return_value, "table", str, 1); + } +#endif + add_assoc_zval(return_value, "flags", flags); return SUCCESS; http://cvs.php.net/viewvc.cgi/php-src/ext/sqlite3/config0.m4?r1=1.8&r2=1.9&diff_format=u Index: php-src/ext/sqlite3/config0.m4 diff -u php-src/ext/sqlite3/config0.m4:1.8 php-src/ext/sqlite3/config0.m4:1.9 --- php-src/ext/sqlite3/config0.m4:1.8 Mon Dec 22 16:42:34 2008 +++ php-src/ext/sqlite3/config0.m4 Tue Jan 13 02:50:23 2009 @@ -1,4 +1,4 @@ -dnl $Id: config0.m4,v 1.8 2008/12/22 16:42:34 scottmac Exp $ +dnl $Id: config0.m4,v 1.9 2009/01/13 02:50:23 scottmac Exp $ dnl config.m4 for extension sqlite3 dnl vim:et:ts=2:sw=2 @@ -67,7 +67,7 @@ debug_flags="-DSQLITE_DEBUG=1" fi - other_flags="-DSQLITE_ENABLE_FTS3=1 -DSQLITE_CORE=1 -DSQLITE_ENABLE_ICU=1" + other_flags="-DSQLITE_ENABLE_FTS3=1 -DSQLITE_CORE=1 -DSQLITE_ENABLE_ICU=1 -DSQLITE_ENABLE_COLUMN_METADATA=1" PHP_SQLITE3_CFLAGS="-...@ext_srcdir@/libsqlite -...@ext_builddir@/libsqlite $other_flags $threadsafe_flags $debug_flags" fi http://cvs.php.net/viewvc.cgi/php-src/ext/pdo_sqlite/tests/bug_42589.phpt?view=markup&rev=1.1 Index: php-src/ext/pdo_sqlite/tests/bug_42589.phpt +++ php-src/ext/pdo_sqlite/tests/bug_42589.phpt --TEST-- PDO SQLite Feature Request #42589 (getColumnMeta() should also return table name) --SKIPIF-- <?php if (!extension_loaded('pdo') || !extension_loaded('pdo_sqlite')) die('skip not loaded'); ?> --FILE-- <?php $db = new PDO("sqlite::memory:"); $db->exec('CREATE TABLE test (field1 VARCHAR(10))'); $db->exec('INSERT INTO test VALUES("test")'); $result = $db->query('SELECT * FROM test t1 LEFT JOIN test t2 ON t1.field1 = t2.field1'); $meta1 = $result->getColumnMeta(0); $meta2 = $result->getColumnMeta(1); var_dump(!empty($meta1[b'table']) && $meta1[b'table'] == b'test'); var_dump(!empty($meta2[b'table']) && $meta2[b'table'] == b'test'); ?> --EXPECTF-- bool(true) bool(true) -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php