SQL: more documentation and test cleanups
Remove some stuff no longer supported and refine others. Pick-to: 6.5 Change-Id: I29730d5acfcf4a7ef3f569f101d3a4f72dd8b3aa Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
This commit is contained in:
parent
2b2065bf35
commit
65a5efae69
@ -35,14 +35,6 @@ QSqlDatabase db;
|
|||||||
db.setHostName("MyServer");
|
db.setHostName("MyServer");
|
||||||
db.setDatabaseName("C:\\test.gdb");
|
db.setDatabaseName("C:\\test.gdb");
|
||||||
//! [24]
|
//! [24]
|
||||||
|
|
||||||
|
|
||||||
//! [25]
|
|
||||||
// connect to database using the Latin-1 character set
|
|
||||||
db.setConnectOptions("ISC_DPB_LC_CTYPE=Latin1");
|
|
||||||
if (db.open())
|
|
||||||
qDebug("The database connection is open.");
|
|
||||||
//! [25]
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void exProc()
|
void exProc()
|
||||||
@ -87,18 +79,3 @@ while (query1.next()) {
|
|||||||
}
|
}
|
||||||
//! [37]
|
//! [37]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void setConnString()
|
|
||||||
{
|
|
||||||
//! [39]
|
|
||||||
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
|
|
||||||
QString connectString = QStringLiteral(
|
|
||||||
"DRIVER=/path/to/installation/libodbcHDB.so;"
|
|
||||||
"SERVERNODE=hostname:port;"
|
|
||||||
"UID=USER;"
|
|
||||||
"PWD=PASSWORD;"
|
|
||||||
"SCROLLABLERESULT=true");
|
|
||||||
db.setDatabaseName(connectString);
|
|
||||||
//! [39]
|
|
||||||
}
|
|
||||||
|
@ -27,8 +27,7 @@ END
|
|||||||
//! [3]
|
//! [3]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
qt-cmake -G Ninja <qt_source_directory>/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DMySQL_INCLUDE_DIR="/usr/local/mysql/include" -DMySQL_LIBRARY="/usr/local/mysql/lib/libmysqlclient.<so|dylib>"
|
||||||
qt-cmake -G Ninja <qt_installation_path>/Src/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DMySQL_INCLUDE_DIR="/usr/local/mysql/include" -DMySQL_LIBRARY="/usr/local/mysql/lib/libmysqlclient.<so|dylib>"
|
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
//! [3]
|
//! [3]
|
||||||
@ -37,7 +36,6 @@ cmake --install .
|
|||||||
//! [5]
|
//! [5]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
|
||||||
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform> -DMySQL_INCLUDE_DIR="C:\mysql-8.0.22-winx64\include" -DMySQL_LIBRARY="C:\mysql-8.0.22-winx64\lib\libmysql.lib"
|
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform> -DMySQL_INCLUDE_DIR="C:\mysql-8.0.22-winx64\include" -DMySQL_LIBRARY="C:\mysql-8.0.22-winx64\lib\libmysql.lib"
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
@ -47,8 +45,7 @@ cmake --install .
|
|||||||
//! [7]
|
//! [7]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
qt-cmake -G Ninja <qt_source_directory>/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DOracle_INCLUDE_DIR="/usr/include/oracle/21/client64" -DOracle_LIBRARY="/usr/lib/oracle/21/client64/lib/libclntsh.<so|dylib>"
|
||||||
qt-cmake -G Ninja <qt_installation_path>/Src/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DOracle_INCLUDE_DIR="/usr/include/oracle/21/client64" -DOracle_LIBRARY="/usr/lib/oracle/21/client64/lib/libclntsh.<so|dylib>"
|
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
//! [7]
|
//! [7]
|
||||||
@ -71,8 +68,7 @@ set PATH=%PATH%;C:\oracle
|
|||||||
//! [11]
|
//! [11]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
qt-cmake -G Ninja <qt_source_directory>/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DODBC_INCLUDE_DIR="/usr/local/unixODBC/include" -DODBC_LIBRARY="/usr/local/unixODBC/lib/libodbc.<so|dylib>"
|
||||||
qt-cmake -G Ninja <qt_installation_path>/Src/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DODBC_INCLUDE_DIR="/usr/local/unixODBC/include" -DODBC_LIBRARY="/usr/local/unixODBC/lib/libodbc.<so|dylib>"
|
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
//! [11]
|
//! [11]
|
||||||
@ -81,7 +77,6 @@ cmake --install .
|
|||||||
//! [12]
|
//! [12]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
|
||||||
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform>
|
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform>
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
@ -92,7 +87,7 @@ cmake --install .
|
|||||||
mkdir build-psql-driver
|
mkdir build-psql-driver
|
||||||
cd build-psql-driver
|
cd build-psql-driver
|
||||||
|
|
||||||
qt-cmake -G Ninja <qt_installation_path>/Src/qtbase/src/plugins/sqldrivers-DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DCMAKE_INCLUDE_PATH="/usr/local/pgsql/include" -DCMAKE_LIBRARY_PATH="/usr/local/pgsql/lib"
|
qt-cmake -G Ninja <qt_source_directory>/qtbase/src/plugins/sqldrivers-DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DCMAKE_INCLUDE_PATH="/usr/local/pgsql/include" -DCMAKE_LIBRARY_PATH="/usr/local/pgsql/lib"
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
//! [13]
|
//! [13]
|
||||||
@ -101,7 +96,6 @@ cmake --install .
|
|||||||
//! [15]
|
//! [15]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
|
||||||
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform> -DCMAKE_INCLUDE_PATH="C:\pgsql\include" -DCMAKE_LIBRARY_PATH="C:\pgsql\lib"
|
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform> -DCMAKE_INCLUDE_PATH="C:\pgsql\include" -DCMAKE_LIBRARY_PATH="C:\pgsql\lib"
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
@ -111,8 +105,7 @@ cmake --install .
|
|||||||
//! [18]
|
//! [18]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
qt-cmake -G Ninja <qt_source_directory>/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DDB2_INCLUDE_DIR="/usr/local/db2/include" -DDB2_LIBRARY="/usr/local/db2/lib/libdb2.<so|dylib>"
|
||||||
qt-cmake -G Ninja <qt_installation_path>/Src/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DDB2_INCLUDE_DIR="/usr/local/db2/include" -DDB2_LIBRARY="/usr/local/db2/lib/libdb2.<so|dylib>"
|
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
//! [18]
|
//! [18]
|
||||||
@ -121,7 +114,6 @@ cmake --install .
|
|||||||
//! [20]
|
//! [20]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
|
||||||
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform> -DDB2_INCLUDE_DIR="C:\db2\include" -DDB2_LIBRARY="C:\db2\lib\db2.lib"
|
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform> -DDB2_INCLUDE_DIR="C:\db2\include" -DDB2_LIBRARY="C:\db2\lib\db2.lib"
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
@ -131,8 +123,7 @@ cmake --install .
|
|||||||
//! [21]
|
//! [21]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
qt-cmake -G Ninja <qt_source_directory>/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DFEATURE_system_sqlite=ON -DCMAKE_INCLUDE_PATH="$SQLITE/include" -DCMAKE_LIBRARY_PATH="$SQLITE/lib"
|
||||||
qt-cmake -G Ninja <qt_installation_path>/Src/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DFEATURE_system_sqlite=ON -DCMAKE_INCLUDE_PATH="$SQLITE/include" -DCMAKE_LIBRARY_PATH="$SQLITE/lib"
|
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
//! [21]
|
//! [21]
|
||||||
@ -141,7 +132,6 @@ cmake --install .
|
|||||||
//! [23]
|
//! [23]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
|
||||||
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform> -DFEATURE_system_sqlite=ON -DCMAKE_INCLUDE_PATH="C:\SQLITE\include" -DCMAKE_LIBRARY_PATH="C:\SQLITE\lib"
|
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform> -DFEATURE_system_sqlite=ON -DCMAKE_INCLUDE_PATH="C:\SQLITE\include" -DCMAKE_LIBRARY_PATH="C:\SQLITE\lib"
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
@ -151,8 +141,7 @@ cmake --install .
|
|||||||
//! [27]
|
//! [27]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
qt-cmake -G Ninja <qt_source_directory>/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DInterbase_INCLUDE_DIR="/opt/interbase/include" -DInterbase_LIBRARY="/opt/interbase/lib/libgds.<so|dylib>"
|
||||||
qt-cmake -G Ninja <qt_installation_path>/Src/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DInterbase_INCLUDE_DIR="/opt/interbase/include" -DInterbase_LIBRARY="/opt/interbase/lib/libgds.<so|dylib>"
|
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
//! [27]
|
//! [27]
|
||||||
@ -161,8 +150,7 @@ cmake --install .
|
|||||||
//! [28]
|
//! [28]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
qt-cmake -G Ninja <qt_source_directory>/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DInterbase_INCLUDE_DIR="/opt/interbase/include" -DInterbase_LIBRARY="/opt/interbase/lib/libfbclient.<so|dylib>"
|
||||||
qt-cmake -G Ninja <qt_installation_path>/Src/qtbase/src/plugins/sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>/<platform> -DInterbase_INCLUDE_DIR="/opt/interbase/include" -DInterbase_LIBRARY="/opt/interbase/lib/libfbclient.<so|dylib>"
|
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
//! [28]
|
//! [28]
|
||||||
@ -171,7 +159,6 @@ cmake --install .
|
|||||||
//! [29]
|
//! [29]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
|
||||||
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform> -DInterbase_INCLUDE_DIR="C:\interbase\include" -DInterbase_LIBRARY="C:\interbase\gds.lib"
|
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform> -DInterbase_INCLUDE_DIR="C:\interbase\include" -DInterbase_LIBRARY="C:\interbase\gds.lib"
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
@ -181,7 +168,6 @@ cmake --install .
|
|||||||
//! [30]
|
//! [30]
|
||||||
mkdir build-sqldrivers
|
mkdir build-sqldrivers
|
||||||
cd build-sqldrivers
|
cd build-sqldrivers
|
||||||
|
|
||||||
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform> -DInterbase_INCLUDE_DIR="C:\interbase\include" -DInterbase_LIBRARY="C:\interbase\lib\fbclient_ms.lib"
|
qt-cmake -G Ninja <qt_installation_path>\Src\qtbase\src\plugins\sqldrivers -DCMAKE_INSTALL_PREFIX=<qt_installation_path>\<platform> -DInterbase_INCLUDE_DIR="C:\interbase\include" -DInterbase_LIBRARY="C:\interbase\lib\fbclient_ms.lib"
|
||||||
cmake --build .
|
cmake --build .
|
||||||
cmake --install .
|
cmake --install .
|
||||||
|
@ -125,7 +125,7 @@
|
|||||||
|
|
||||||
\section3 QMYSQL Stored Procedure Support
|
\section3 QMYSQL Stored Procedure Support
|
||||||
|
|
||||||
MySQL 5 has stored procedure support at the SQL level, but no
|
MySQL has stored procedure support at the SQL level, but no
|
||||||
API to control IN, OUT, and INOUT parameters. Therefore, parameters
|
API to control IN, OUT, and INOUT parameters. Therefore, parameters
|
||||||
have to be set and read using SQL commands instead of QSqlQuery::bindValue().
|
have to be set and read using SQL commands instead of QSqlQuery::bindValue().
|
||||||
|
|
||||||
@ -239,8 +239,8 @@
|
|||||||
\section3 How to Build the QMYSQL Plugin on Windows
|
\section3 How to Build the QMYSQL Plugin on Windows
|
||||||
|
|
||||||
You need to get the MySQL installation files (e.g.
|
You need to get the MySQL installation files (e.g.
|
||||||
\l {https://dev.mysql.com/downloads/installer/}{mysql-installer-web-community-8.0.22.0.msi} or
|
\l {https://dev.mysql.com/downloads/installer/}{MySQL web installer} or
|
||||||
\l {https://downloads.mariadb.com/Connectors/c/connector-c-3.1.11/}{mariadb-connector-c-3.1.11-win64.msi}).
|
\l {https://downloads.mariadb.com/Connectors/c/}{MariaDB C Connector}).
|
||||||
Run the installer,
|
Run the installer,
|
||||||
select custom installation and install the MySQL C Connector
|
select custom installation and install the MySQL C Connector
|
||||||
which matches your Qt installation (x86 or x64).
|
which matches your Qt installation (x86 or x64).
|
||||||
@ -362,7 +362,7 @@
|
|||||||
|
|
||||||
\snippet code/doc_src_sql-driver.qdoc 8
|
\snippet code/doc_src_sql-driver.qdoc 8
|
||||||
|
|
||||||
When you run your application, you will also need to add the \c oci.lib
|
When you run your application, you will also need to add the \c oci.dll
|
||||||
path to your \c PATH environment variable:
|
path to your \c PATH environment variable:
|
||||||
|
|
||||||
\snippet code/doc_src_sql-driver.qdoc 9
|
\snippet code/doc_src_sql-driver.qdoc 9
|
||||||
@ -413,17 +413,11 @@
|
|||||||
e.g., the SQLSTATEs. Before setting this connect option, consult
|
e.g., the SQLSTATEs. Before setting this connect option, consult
|
||||||
your ODBC documentation about behavior differences you can expect.
|
your ODBC documentation about behavior differences you can expect.
|
||||||
|
|
||||||
When using the SAP HANA database, the connection has to be
|
|
||||||
established using the option "SCROLLABLERESULT=TRUE", as the
|
|
||||||
HANA ODBC driver does not provide scrollable results by default, e.g.:
|
|
||||||
|
|
||||||
\snippet code/doc_src_sql-driver.cpp 39
|
|
||||||
|
|
||||||
If you experience very slow access of the ODBC datasource, make sure
|
If you experience very slow access of the ODBC datasource, make sure
|
||||||
that ODBC call tracing is turned off in the ODBC datasource manager.
|
that ODBC call tracing is turned off in the ODBC datasource manager.
|
||||||
|
|
||||||
Some drivers do not support scrollable cursors. In that case, only
|
Some drivers do not support scrollable cursors. In that case, only
|
||||||
queries in forwardOnly mode can be used successfully.
|
queries in \l QSqlQuery::setForwardOnly() mode can be used successfully.
|
||||||
|
|
||||||
\section3 ODBC Stored Procedure Support
|
\section3 ODBC Stored Procedure Support
|
||||||
|
|
||||||
@ -440,12 +434,12 @@
|
|||||||
\section3 ODBC Unicode Support
|
\section3 ODBC Unicode Support
|
||||||
|
|
||||||
The QODBC Plugin will use the Unicode API if UNICODE is defined. On
|
The QODBC Plugin will use the Unicode API if UNICODE is defined. On
|
||||||
Windows NT based systems, this is the default. Note that the ODBC
|
Windows based systems, this is the default. Note that the ODBC
|
||||||
driver and the DBMS must also support Unicode.
|
driver and the DBMS must also support Unicode.
|
||||||
|
|
||||||
For the Oracle 9 ODBC driver (Windows), it is necessary to check
|
For the Oracle 9 ODBC driver (Windows), it is necessary to check
|
||||||
"SQL_WCHAR support" in the ODBC driver manager otherwise Oracle
|
"SQL_WCHAR support" in the ODBC driver manager otherwise Oracle
|
||||||
will convert all Unicode strings to local 8-bit.
|
will convert all Unicode strings to local 8-bit representation.
|
||||||
|
|
||||||
\section3 Connection options
|
\section3 Connection options
|
||||||
The Qt ODBC plugin honors the following connection options:
|
The Qt ODBC plugin honors the following connection options:
|
||||||
@ -491,7 +485,7 @@
|
|||||||
\row
|
\row
|
||||||
\li SQL_ATTR_ODBC_VERSION
|
\li SQL_ATTR_ODBC_VERSION
|
||||||
\li SQL_OV_ODBC3: The driver should act as a ODBC 3.x driver\br
|
\li SQL_OV_ODBC3: The driver should act as a ODBC 3.x driver\br
|
||||||
SQL_OV_ODBC2: The driver should act as a ODBC 2.x driver
|
SQL_OV_ODBC2: The driver should act as a ODBC 2.x driver (default)
|
||||||
\endtable
|
\endtable
|
||||||
For more detailed information about the connect options please refer
|
For more detailed information about the connect options please refer
|
||||||
to the \l {https://learn.microsoft.com/en-us/sql/odbc/reference/syntax/sqlsetconnectattr-function}
|
to the \l {https://learn.microsoft.com/en-us/sql/odbc/reference/syntax/sqlsetconnectattr-function}
|
||||||
@ -517,7 +511,7 @@
|
|||||||
\snippet code/doc_src_sql-driver.qdoc 12
|
\snippet code/doc_src_sql-driver.qdoc 12
|
||||||
|
|
||||||
\target QPSQL
|
\target QPSQL
|
||||||
\section2 QPSQL for PostgreSQL (Version 7.3 and Above)
|
\section2 QPSQL for PostgreSQL (Version 7.3 and above)
|
||||||
|
|
||||||
The QPSQL driver supports version 7.3 and higher of the PostgreSQL server.
|
The QPSQL driver supports version 7.3 and higher of the PostgreSQL server.
|
||||||
|
|
||||||
@ -625,7 +619,7 @@
|
|||||||
as the application executable.
|
as the application executable.
|
||||||
|
|
||||||
\target QDB2
|
\target QDB2
|
||||||
\section2 QDB2 for IBM DB2 (Version 7.1 and Above)
|
\section2 QDB2 for IBM DB2 (Version 7.1 and above)
|
||||||
|
|
||||||
The Qt DB2 plugin makes it possible to access IBM DB2 databases. It
|
The Qt DB2 plugin makes it possible to access IBM DB2 databases. It
|
||||||
has been tested with IBM DB2 v7.1 and 7.2. You must install the IBM
|
has been tested with IBM DB2 v7.1 and 7.2. You must install the IBM
|
||||||
@ -664,7 +658,7 @@
|
|||||||
\snippet code/doc_src_sql-driver.qdoc 20
|
\snippet code/doc_src_sql-driver.qdoc 20
|
||||||
|
|
||||||
\target QSQLITE
|
\target QSQLITE
|
||||||
\section2 QSQLITE for SQLite (Version 3 and Above)
|
\section2 QSQLITE for SQLite (Version 3 and above)
|
||||||
|
|
||||||
The Qt SQLite plugin makes it possible to access SQLite
|
The Qt SQLite plugin makes it possible to access SQLite
|
||||||
databases. SQLite is an in-process database, which means that it
|
databases. SQLite is an in-process database, which means that it
|
||||||
@ -819,20 +813,6 @@
|
|||||||
Edition are not allowed to link this plugin to the commercial editions of
|
Edition are not allowed to link this plugin to the commercial editions of
|
||||||
InterBase. Please use Firebird or the free edition of InterBase.
|
InterBase. Please use Firebird or the free edition of InterBase.
|
||||||
|
|
||||||
\section3 QIBASE Unicode Support and Text Encoding
|
|
||||||
|
|
||||||
By default the driver connects to the database using UNICODE_FSS. This can
|
|
||||||
be overridden by setting the ISC_DPB_LC_CTYPE parameter with
|
|
||||||
QSqlDatabase::setConnectOptions() before opening the connection.
|
|
||||||
|
|
||||||
\snippet code/doc_src_sql-driver.cpp 25
|
|
||||||
|
|
||||||
If Qt does not support the given text encoding the driver will issue a
|
|
||||||
warning message and connect to the database using UNICODE_FSS.
|
|
||||||
|
|
||||||
Note that if the text encoding set when connecting to the database is
|
|
||||||
not the same as in the database, problems with transliteration might arise.
|
|
||||||
|
|
||||||
\section3 QIBASE Stored procedures
|
\section3 QIBASE Stored procedures
|
||||||
|
|
||||||
InterBase/Firebird return OUT values as result set, so when calling stored
|
InterBase/Firebird return OUT values as result set, so when calling stored
|
||||||
@ -895,7 +875,7 @@
|
|||||||
Qt Creator, you can update the \c PATH environment variable in the
|
Qt Creator, you can update the \c PATH environment variable in the
|
||||||
\gui Run section of the \gui Project panel to include the path to
|
\gui Run section of the \gui Project panel to include the path to
|
||||||
the folder containing the client libraries.
|
the folder containing the client libraries.
|
||||||
\li Compile Qt with \c{QT_DEBUG_COMPONENT} defined to get very verbose
|
\li Compile Qt with \c{QT_DEBUG_PLUGINS} defined to get very verbose
|
||||||
debug output when loading plugins.
|
debug output when loading plugins.
|
||||||
\endlist
|
\endlist
|
||||||
|
|
||||||
|
@ -137,8 +137,6 @@ private slots:
|
|||||||
void ibase_numericFields(); // For task 125053
|
void ibase_numericFields(); // For task 125053
|
||||||
void ibase_fetchBlobs_data() { generic_data("QIBASE"); }
|
void ibase_fetchBlobs_data() { generic_data("QIBASE"); }
|
||||||
void ibase_fetchBlobs(); // For task 143471
|
void ibase_fetchBlobs(); // For task 143471
|
||||||
void ibase_useCustomCharset_data() { generic_data("QIBASE"); }
|
|
||||||
void ibase_useCustomCharset(); // For task 134608
|
|
||||||
void ibase_procWithoutReturnValues_data() { generic_data("QIBASE"); } // For task 165423
|
void ibase_procWithoutReturnValues_data() { generic_data("QIBASE"); } // For task 165423
|
||||||
void ibase_procWithoutReturnValues();
|
void ibase_procWithoutReturnValues();
|
||||||
void ibase_procWithReturnValues_data() { generic_data("QIBASE"); } // For task 177530
|
void ibase_procWithReturnValues_data() { generic_data("QIBASE"); } // For task 177530
|
||||||
@ -1906,31 +1904,6 @@ void tst_QSqlDatabase::mysql_multiselect()
|
|||||||
QVERIFY_SQL(q, exec("SELECT * FROM " + qtest));
|
QVERIFY_SQL(q, exec("SELECT * FROM " + qtest));
|
||||||
}
|
}
|
||||||
|
|
||||||
void tst_QSqlDatabase::ibase_useCustomCharset()
|
|
||||||
{
|
|
||||||
QFETCH(QString, dbName);
|
|
||||||
QSqlDatabase db = QSqlDatabase::database(dbName);
|
|
||||||
CHECK_DATABASE(db);
|
|
||||||
QString nonlatin1string("<EFBFBD><EFBFBD>");
|
|
||||||
|
|
||||||
db.close();
|
|
||||||
db.setConnectOptions("ISC_DPB_LC_CTYPE=Latin1");
|
|
||||||
db.open();
|
|
||||||
|
|
||||||
const QString tableName(qTableName("latin1table", __FILE__, db));
|
|
||||||
|
|
||||||
QSqlQuery q(db);
|
|
||||||
QEXPECT_FAIL("", "Currently fails, potentially due to invalid test - needs further "
|
|
||||||
"investigation - QTBUG-85828", Abort);
|
|
||||||
QVERIFY_SQL(q, exec(QString("CREATE TABLE %1(text VARCHAR(6) CHARACTER SET Latin1)").arg(tableName)));
|
|
||||||
QVERIFY_SQL(q, prepare(QString("INSERT INTO %1 VALUES(?)").arg(tableName)));
|
|
||||||
q.addBindValue(nonlatin1string);
|
|
||||||
QVERIFY_SQL(q, exec());
|
|
||||||
QVERIFY_SQL(q, exec(QString("SELECT text FROM %1").arg(tableName)));
|
|
||||||
QVERIFY_SQL(q, next());
|
|
||||||
QCOMPARE(toHex(q.value(0).toString()), toHex(nonlatin1string));
|
|
||||||
}
|
|
||||||
|
|
||||||
void tst_QSqlDatabase::oci_serverDetach()
|
void tst_QSqlDatabase::oci_serverDetach()
|
||||||
{
|
{
|
||||||
QFETCH(QString, dbName);
|
QFETCH(QString, dbName);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user