易截截图软件、单文件、免安装、纯绿色、仅160KB

终于编译好了qt的oracle驱动QOCI,连接成功!!!

这么多天以来终于有件事可以小舒畅了一下了。
今天终于编译好了qt的oracle驱动QOCI,连接成功!!!
Qt Commercial版只自带了SQLLite和ODBC的驱动,oracle的驱动要自己编译,折腾了许久,终于成功了。具体如下:
编译QOCI:
1st
:
go to Qt’s Command Prompt window. (VS 2008

)
2nd
:
set INCLUDE=%INCLUDE%;D:\Work\Oracle_10.2_client\oci\include
3rd
:
set LIB=%LIB%;D:\Work\Oracle_10.2_client\oci\lib\msvc
4th
:
cd %QTDIR%\src\plugins\sqldrivers\oci
5th
:
qmake -o Makefile oci.pro
6th
:
nmake
连接数据库:
#include <QtCore/QCoreApplication>
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QVariant>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
////////////////////////////////////////////////////
QSqlDatabase db = QSqlDatabase::addDatabase("QOCI");
db.setHostName("192.168.0.192");
db.setDatabaseName("dbname");
db.setUserName("username");
db.setPassword("passwd");
db.setPort(1521);
if (db.open())
printf("打开成功\n");
else
printf("打开失败\n");
////////////////////////////////////////////////////
QSqlQuery query("SELECT column_1 from table_1");
while (query.next()) {
QString country = query.value(0).toString();
printf("%s\n",country.toLocal8Bit().data());
}
////////////////////////////////////////////////////
return a.exec();
}

以前一直显示
QSqlDatabase: QOCI driver not loaded
QSqlDatabase: available drivers: QSQLITE QODBC3 QODBC
打开失败
QSqlQuery::exec: database not open
Cheers!
顺带记录下Solaris10下的编译方法(没试过)
Oracle的环境变量:
ORACLE_BASE=/oracle
ORACLE_HOME=$ORACLE_BASE/product/10.0.2
Qt的编译文件在Solaris 10下的路径:
/export/home/qt-4.3.1/qt-X11-commercial-src-4.3.1
Qt的环境变量:
QTDIR=/usr/local/Trolltech/Qt-4.3.1
Show下环境变量:
ORACLE_BASE=/oracle
ORACLE_HOME=$ORACLE_BASE/p


相关文档:

oracle调用java程序连sqlserver2005

1、在oracle的sys-sysdba下登陆
写一个java source程序链接sqlserver2005:
create or replace and compile java source named test as
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
public class excutesql1
{
    public static String entry ......

java jdbc 连接Oracle9i

     自己在做这个程序的时候看过很多的资料,上网也查了不少的资料,可是多半说的是出神入化,云里雾里...不光看了不明白,而且是有明白一点的人,看了也变的有些模糊了。
     这里我掩饰一套完整的java jdbc 连接Oracle9i的范例。
package com.lxh.dbcon;//打包
import ......

MySQL与Oracle数据类型转换


MySQL Data Type
Oracle Data Type
BIGINT
NUMBER(19, 0)
BIT
RAW
BLOB
BLOB, RAW
CHAR
CHAR
DATE
DATE
DATETIME
DATE
DECIMAL
FLOAT (24)
DOUBLE
FLOAT (24)
DOUBLE PRECISION
FLOAT (24)
ENUM
VARCHAR2
FLOAT
FLOAT
INT
NUMBER(10, 0)
INTEGER
NUMBER(10, 0)
LONGBLOB
BLOB, RAW
LONGTEX ......

连接oracle,sqlserver中数据库的示例代码

一 在Oracle中连接数据库
public class Test1 {
 public static void main(String[] args) {
  try {
   Class.forName("oracle.jdbc.driver.OracleDriver");
   Connection conn = DriverManager.getConnection(
       &nbs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号