关于程序打包问题——如何将程序的数据库部分打包(我访问远程Oracle数据库)!

路人丁 2002-03-22 01:55:09
关于程序打包问题——如何将程序的数据库部分打包(我访问远程Oracle数据库)!我用的打包文件是d盘上带的Express for C++Builder5;我的程序用BCB5编的,我打包时怎么才能使我的别名能够联接到我的远程数据库上?
...全文
101 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
路人丁 2002-03-30
  • 打赏
  • 举报
回复
谢谢楼上的兄弟!我是这么做的
bool __fastcall BuildAlias()
{ bool bRTN=true;
TStringList *MyStringList = new TStringList();
Session->GetAliasNames(MyStringList);
if(MyStringList->Count>0)
{
int iSessCnt=MyStringList->Count;
bool bAliasName=false;
for(int i=0;i<iSessCnt;i++)
{
if(LowerCase(MyStringList->Strings[i])=="dzpc")
{
bAliasName=true;
break;
}
else bAliasName=false;
}
delete MyStringList;
if(bAliasName==false)
{
TStringList *MyList=new TStringList();
try
{
MyList->Add("SERVER NAME=SERVER.WORLD");
MyList->Add("USER NAME=li");
//MyList->Add("LANGDRIVER=Paradox China 936");
//这句有错误
Session->AddAlias("dzpc","ORACLE",MyList);
Session->SaveConfigFile();

}
catch(...)
{
delete MyList;
throw;
bRTN=false;
}
delete MyList;
}
}
return(bRTN);
}
但是我无法加入上面这句而且我发现虽然我用的是oracle数据库但是当我加入Oracle SQL WE850作为语言驱动时不能操作汉语于是我使用了上面的驱动语言
非常好用可是在程序中作设置时总是出错!出错信息是:Unknown internal operateing system error
BugLu 2002-03-27
  • 打赏
  • 举报
回复
TStringList *MyList=new TStringList;
try{
MyList->Add("SERVER NAME=yca");
MyList->Add("USER NAME=piccprp");
MyList->Add("DATABASE NAME=prpinsdb");
Session1->Active=FALSE;
Session1->DeleteAlias("Demodb");//先删除别名
Session1->AddAlias("Demodb","INFORMIX",MyList);
Session1->Active=TRUE;
Database1->Params->Add("USER NAME=piccprp");
Database1->Params->Add("PASSWORD=lskjlcsa");
Database1->LoginPrompt=FALSE;
Database1->DatabaseName="Demodb";
Database1->Connected=TRUE;
}
catch(...){
//...
}
BugLu 2002-03-27
  • 打赏
  • 举报
回复
你可以在程序中创建别名,指定与之相关的参数,
然后在建立与数据库的连接.程序结束后删除别名.
lllyyy 2002-03-27
  • 打赏
  • 举报
回复
可以在程序中建立数据库和数据表,我已实现
路人丁 2002-03-25
  • 打赏
  • 举报
回复
谢谢上面两位,但是还有问题,我如何让我的BDE中的SERVER NAME的草正确的配置!
Goshawkx 2002-03-24
  • 打赏
  • 举报
回复
大概叫oracle packager
就是oracle 的打包工具
你可以在otn.oracle.com的 software中下载
是个工具utiliy
chzhli186858 2002-03-23
  • 打赏
  • 举报
回复
怎么没人回答呀?
chzhli186858 2002-03-23
  • 打赏
  • 举报
回复
嬉戏
俺也来关注
leio 2002-03-23
  • 打赏
  • 举报
回复
直接修改ORACLE_HOME\NETWORK\ADMIN\tnsnames.ora这个文件。

在这个文件后面添加或修改你需要的内容。格式如下:

1、通过SID
Connect_String = //这个名字由你自己定,但不能和别的名字重复
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.1)(PORT = 1522))
)
(CONNECT_DATA =
(SID = webdb)
)
)
2、通过服务名
Connect_String =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = webdb)
)
)


以下为PowerBuilder版的版主所写,如何将oracle客户端绑定到自己的安装程序中。

1、在干净的机器上装好一个Oracle客户端;
2、导出 注册表中的local_machine\oraclej键值;
3、在pb程序中写注册表完成oracle注册或用shell函数注册;
4、复制这个客户端的相同目录到安装目录。

唯一缺点:只能装在同一个目录,不同目录你要仔细分析注册表导出文件,把目录都改过来就可以了。

这个方法我在2k,xp下都通过,甚至服务器版也这么搞定的
(新安装xp系统后,但是不想安装oracle,于是把原来的oracle系统通过一些oracle自己提供的程序解决了,主要就是
spool .... //启动一个sql事务
startup.... //执行某sql,完成create database操作。

oradim80.exe // oracle服务管理
tnslsnr80.exe //侦听服务管理程序
bluetear 2002-03-22
  • 打赏
  • 举报
回复
Sorry , I'm very sorry..Couldn't help you .....
路人丁 2002-03-22
  • 打赏
  • 举报
回复
即使是客户端不能打包,那我的别名对应的路径怎么设置?
路人丁 2002-03-22
  • 打赏
  • 举报
回复
请问网址?
duduwolf 2002-03-22
  • 打赏
  • 举报
回复
据我所知,oracle的客户端没法用BCB打进包里,你可以从oracle的网站上下载一个***(具体的软件名忘了),是用来专门给带有orcale数据库的程序打包的软件
路人丁 2002-03-22
  • 打赏
  • 举报
回复
我想知道的是如何为我这个别名配置网络路径,而且我的ORACLE客户端部分怎么办?
dy_2000_abc 2002-03-22
  • 打赏
  • 举报
回复
General Options页面,选中BDE,设置Settings(别名当然要与应用程序中使用的一致)。不知道这是不是你要的。
路人丁 2002-03-22
  • 打赏
  • 举报
回复
请各位老大关注!

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧