大家好,
初次编写oracle相关程序(C#),我的想法是目标程序能够任意的分发到任何windows机器上,程序本身就能完成与oracle数据库的通信协作,不需要oracle client以及不必要的配置,请问怎么做呀,谢谢大家,给小弟提个意见。
初次编写oracle相关程序(C#),我的想法是目标程序能够任意的分发到任何windows机器上,程序本身就能完成与oracle数据库的通信协作,不需要oracle client以及不必要的配置,请问怎么做呀,谢谢大家,给小弟提个意见。
调试欢乐多
我以前用PB做过的。原理是一样的。
Oracle 9i執行所需要的動態連結檔,執行環境TCP
ora92\bin
oci.dll
oracle.key
oraclient9.dll
oracommon9.dll
oracore9.dll
orageneric9.dll
oraldapclnt9.dll
oran9.dll
orancds9.dll
orancrypt9.dll
orangss9.dll
oranhost9.dll
orank59.dll
oranl9.dll
oranldap9.dll
oranls9.dll
oranms.dll
oranmsp.dll
orannts9.dll
orannzsbb9.dll
oranoname9.dll
oranrad9.dll
oranro9.dll
orantcp9.dll
orantns9.dll
orapls9.dll
oraslax9.dll
orasnls9.dll
orasql9.dll
oratrace9.dll
oraunls9.dll
oravsn9.dll
orawtc9.dll
oraxml9.dll
oraxsd9.dll
※ 其中oracle.key記錄了預設機碼的訊息
ora92\network\admin
sqlnet.ora
tnsnames.ora
※ 其中tnsnames.ora記錄了連線主機的資料
ora92\ocommon\nls\admin\data
LX00001.NLB
LX00023.NLB
LX00024.NLB
LX10001.NLB
LX10035.NLB
LX10039.NLB
LX1BOOT.NLB
LX20001.NLB
LX20354.NLB
LX20361.NLB
LX20363.NLB
LX207D01.NLB
LX50363.NLB
LX507D01.NLB
LX60354.NLB
LX60361.NLB
LX60363.NLB
LX607D01.NLB
※這些語言檔是依照繁體、简体中文運行環境所分析的,使用其他語言需要的檔案應該會不同
ora92\oracore\zoneinfo
timezone.dat
ora92\rdbms\mesg
ocius.msb
ocizhs.msb
ocizht.msb
oraus.msb
orazhs.msb
orazht.msb機碼
[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE]
"ORACLE_HOME"="C:\\WINSC9\\oracle\\ora92"
"ORACLE_HOME_NAME"="Ora92"
"API"="C:\\WINSC9\\oracle\\ora92\\dbs"
"ORACLE_GROUP_NAME"="Oracle - Ora92"
"NLS_LANG"="NA"
"VOBHOME2.0"="C:\\WINSC9\\oracle\\ora92"
[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ALL_HOMES]
"HOME_COUNTER"="1"
"DEFAULT_HOME"="Ora92"
"LAST_HOME"="0"
[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ALL_HOMES\ID0]
"NAME"="Ora92"
"PATH"="C:\\WINSC9\\oracle\\ora92"
"NLS_LANG"="NA"
[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0]
"ID"="0"
"ORACLE_GROUP_NAME"="Oracle - Ora92"
"ORACLE_HOME_NAME"="Ora92"
"ORACLE_HOME"="C:\\WINSC9\\oracle\\ora92"
"NLS_LANG"="TRADITIONAL CHINESE_TAIWAN.ZHT16MSWIN950"
"ORACLE_BUNDLE_NAME"="Enterprise"
"ORAMTS_CP_TRACE_LEVEL"="0"
"ORAMTS_CP_TRACE_DIR"="C:\\WINSC9\\oracle\\ora92\\oramts\\Trace"
"ORAMTS_CONN_POOL_TIMEOUT"="120"
"ORAMTS_SESS_TXNTIMETOLIVE"="120"
"ORAMTS_NET_CACHE_MAXFREE"="5"
"ORAMTS_NET_CACHE_TIMEOUT"="120000"
"ORAMTS_OSCREDS_MATCH_LEVEL"="OS_AUTH_LOGIN"
"ORACLE_HOME_KEY"="SOFTWARE\\ORACLE\\HOME0"
"SQLPATH"="C:\\WINSC9\\oracle\\ora92\\dbs"※ 系統運行時將會取SOFTWARE\ORACLE\HOME0的機碼訊息
※ 這記錄在oracle.key檔案裡
※ 簡繁體語系的差異
※ 繁體"NLS_LANG"="TRADITIONAL CHINESE_TAIWAN.ZHT16MSWIN950"
※ 簡體"NLS_LANG"="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
※ 跟路徑相關參數則依照實際檔案存放位置設定
ps:odbc联不用 客户端吧?也很方便
谢谢大家了,问题得到解决,那样做太复杂了,还是装一下oracle客户端吧。
---
程序做成三层结构的好了
客户端访问中间层
中间层访问数据库服务器
只需要在中间层的机器上面安装oracle客户端