QT通过ODBC驱动连接Oracle数据库

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012372584/article/details/83276881

1)我是用的是qt4.8.6,里面是自带odbc驱动的,如果没有的话也可以进行编译,具体方法是:

第一步,打开qt下的黑窗体;

第二步,一次输入:

          1、  cd C:\Qt\4.8.6\src\plugins\sqldrivers\odbc

          2、qmake -o Makefile odbc.pro

         3、nmake release或是nmake

这样,C:\Qt\4.8.6\src\plugins\sqldrivers\odbc目录下就会生成编译的dll和lib文件,拷贝到C:\Qt\4.8.6\plugins\sqldrivers下即可。具体的目录需要根据你安装QT为准。

2)添加ODBC数据源,因为我的是win7 64位下安装的32位数据库,所以我们不通过控制面板进行添加,我们找到C:\Windows\SysWOW64目录下的odbcad32.exe程序,双击进行添加,点击系统DSN,添加:

扫描二维码关注公众号,回复: 4139532 查看本文章

接下来就是在程序中的连接操作:

void qttest::createDatabase()
{
	//添加oracle数据库驱动
	db = QSqlDatabase::addDatabase("QODBC");

	//服务器ip和端口号
	db.setPort(1521);
	db.setHostName("localhost");

	//***数据源配置时填写的那个DataSourceName
	db.setDatabaseName("Oracle");

	//用户名和密码
	db.setUserName("tfds");
	db.setPassword("jtv***jtw");
}
bool qttest::connectDatabase()
{
	if(db.isOpen())
		return true;

	if (!db.open())
	{
		qDebug() << "Error: Failed to connect database." << db.lastError();
		return false;
	}
	return true;
}

连接成功!最重要的是:

//***数据源配置时填写的那个DataSourceName
	db.setDatabaseName("Oracle");

猜你喜欢

转载自blog.csdn.net/u012372584/article/details/83276881
今日推荐