BCB2010 DBX 的
上了BCB2010 UP4 UP5
生成一 SQLConnection , 正常接,可是如下代,生故障:程序法退出。即程序後,程序依然留不能退出。如果有 2010的,一下,不知何原因,如何解。
- C/C++ code
#include <vcl.h>#pragma hdrstop#include "Unit1.h"#include <SqlExpr.hpp>//---------------------------------------#pragma package(smart_init)#pragma resource "*.dfm"TForm1 *Form1;TSQLConnection *SQLConnection = NULL ;//---------------------------------------__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner){ SQLConnection = new TSQLConnection(NULL); SQLConnection->ConnectionName = "MSSQLConnection"; SQLConnection->DriverName = "MSSQL"; SQLConnection->GetDriverFunc = "getSQLDriverMSSQL"; SQLConnection->LibraryName = "dbxmss.dll" ; SQLConnection->VendorLib = "sqlncli10.dll"; SQLConnection->LoadParamsOnConnect = false; SQLConnection->KeepConnection = true ; SQLConnection->LoginPrompt = false; SQLConnection->Params->Text = "DriverName=MSSQL" "\nHostName=" "\nDataBase=MyDBS" "\nBlobSize=-1" "\nUser_Name=" "\nPassword=" "\nErrorResourceFile=" "\nLocaleCode=0000" "\nMSSQL TransIsolation=ReadCommited" "\nOS Authentication=True" "\nPrepare SQL=False" "\nMars_Connection=False" "\nSchemaOverride=sa.dbo" "\n"; SQLConnection->Connected = true ; //如果名注掉,程序可以正常退出。}//---------------------------------------__fastcall TForm1::~TForm1(){ delete SQLConnection ;}[解决办法]
木用2010, 帮顶.
[解决办法]
SQLServer2008 要.net 3.5
由於XX原因 我的不能安.net3.5
不能和主一起
只能
[解决办法]
没SQL Server,在盒子上看过相似的问题,建议安最新版的SQL Server.
DBX连mssql和mysql数据库的错误,与数据库的版本有一定关系.
一般都是安装相对应的数据库.好方法不清楚.
这两个数据库我都不用.
[解决办法]
还没用到这么高的版本
[解决办法]
关闭一下SQLConnection看看
[解决办法]
木用2010, 帮顶.
[解决办法]
问题应该出在 delete SQLConnection; 上,建议关闭连接后销毁,或者指定其父对象,由父对象负责它的销毁
[解决办法]
单位里没环境,回家后试,先mark一下
如果加个头文件#include <DBXMsSQL.hpp>就能解决,也没什么大问题,EHLIB控件在连接数据库时也要针对不同的数据库用不同头文件,而且可同时加上几个以联多个数据库
[解决办法]
我的TSQLConnection 只要在界面上加入,如果是连接SQLSERVER就会自动加入
#include <DBXMsSQL.hpp>
#include <SqlExpr.hpp>
如果是连接oracle就会自动加入
#include <DBXOracle.hpp>
你因为是动态创建的,所以也要手工加入相应的头文件,否则即使能编译运行也可能出错
这在bcb中是常见的
[解决办法]
200分啊,不会也要进来顶顶
[解决办法]
在窗体的构造函数里直接SQLConnection->Connected = true;从来没这么用过,建议在FormShow事件里PostMessage一个消息给本窗体,异步起动连接过程;另外不能直接delete SQLConnection;了事,要先SQLConnection->Connected = false;
还有,如果没有特别原因建议建立一个数据模块,把需要用到的对象直接在设计时放在数据模块上面,以后可以分到多线程里处理,像你现在这样new 来new去的,还不如直接设计时放在窗体上。