diff options
Diffstat (limited to 'doc/src/snippets/code/src_sql_kernel_qsqldriver.cpp')
-rw-r--r-- | doc/src/snippets/code/src_sql_kernel_qsqldriver.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/doc/src/snippets/code/src_sql_kernel_qsqldriver.cpp b/doc/src/snippets/code/src_sql_kernel_qsqldriver.cpp new file mode 100644 index 0000000..d5992c3 --- /dev/null +++ b/doc/src/snippets/code/src_sql_kernel_qsqldriver.cpp @@ -0,0 +1,24 @@ +//! [0] +QSqlDatabase db = ...; +QVariant v = db.driver()->handle(); +if (v.isValid() && qstrcmp(v.typeName(), "sqlite3*")==0) { + // v.data() returns a pointer to the handle + sqlite3 *handle = *static_cast<sqlite3 **>(v.data()); + if (handle != 0) { // check that it is not NULL + ... + } +} +//! [0] + + +//! [1] +if (v.typeName() == "PGconn*") { + PGconn *handle = *static_cast<PGconn **>(v.data()); + if (handle != 0) ... +} + +if (v.typeName() == "MYSQL*") { + MYSQL *handle = *static_cast<MYSQL **>(v.data()); + if (handle != 0) ... +} +//! [1] |