|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 PLM之家NX 于 2014-2-22 14:41 编辑
6 M/ z9 C3 x# f$ d a Q! I/ m _7 i$ y8 h2 ?2 E
UG NX二次开发中,外部数据库的访问方式及案例
8 \0 s2 @' w0 a7 O7 Y8 f1 V- D$ Y5 b
& P$ \- ?- W/ h8 s: p6 O& |
1 利用ODBC访问外部数据9 d) D9 o2 ?( ~" F6 |( V+ K3 L( G
ODBC(Open Database connectivity 开放式数据库互连)是由微软公司提出的一个用于访问数据库的统一界面标准,它提供了一个一致的应用程序编程接口,该接口使用一个针对数据库的驱动程序与不同的数据库协同工作。
5 P9 d7 o" R/ |( {* W# L% PDSN(Data Source Name)是用于指定ODBC与相关的驱动程序相对应的一个入口,所有DSN的信息由系统进行管理,一般来讲当应用程序要使用ODBC访问数据库时,就需要指定一个DSN以便于连接到一个指定的ODBC驱动程序。
/ R5 f' n) b# v @1 b. V利用ODBC访问外部数据,首先要配置ODBC数据源,即创建ODBC的DSN;然后读取ODBC指定数据源中的数据。- w1 J( C: G! K, A
, q0 a, P+ N& Y
9 @+ c5 r" \. u" U/ g: j7 [关于ODBC访问外部数据访问数据库图文教程4 D1 k# ^" e1 X ?( Z% E- u
http://www.plmhome.com/thread-1040-1-1.html
, w3 Q8 o. S! R, W5 b(出处: UG论坛|NX论坛|Teamcenter论坛|兄弟UG网|UG视频网|PLM之家UG网|Teamcenter技术支持网|Tecnomatix学习网)4 q: ~8 f3 T: h+ t/ o) O
0 ], o* H: f6 W0 B: L# l
4 S( Q1 `9 {# p7 T, t
2 API文件操作函数访问外部数据
" k) o/ Q& T+ C! \: Z! j, w5 u
% J8 u! q- g* n) j4 DUG/OPEN API中有关文件操作的函数包含在头文件uf_cfi.h中,通过函数uc4500可以打开二进制文件,相关的文件操作函数有uc4510、uc4511、uc4512、uc4513及uc4520、uc4521、uc4522、uc4523,通过函数uc4504可以打开文本文件,相关的文件操作函数有uc4514、uc4524、uc4525,函数uc4540用于关闭文件,判断文件是否存在使用函数UF_CFI_ask_file_exist。( f* ~8 R, c* V0 H- {
通过UG/OPEN API提供的文件操作函数访问外部数据时,要注意以下问题:
0 Z. N- A, F7 s0 A# w(1)UG/Manager和TeamCenter中的文件和文件夹操作不能使用uf_cfi.h中函数,在头文件uf_ugmgr中;$ [, l8 e% d" Z
(2)UG/OPEN API中对文件和文件夹标识符的长度有如下限制:
! Y' i' w1 A3 e文件名长度不能超过UF_CFI_MAX_FILE_NAME_LEN;. p4 ~3 F/ f+ ^6 L
文件夹路径的长度不能超过UF_CFI_MAX_PATH_NAME_LEN;
+ d! A, u- Y: o( Y3 i* p整个文件路径的长度不能超过UF_CFI_MAX_PATH_NAME_LEN。2 c; i; `) f* Y2 X% h* |
访问文本文件的程序流程如下:
6 Z3 D6 O8 k( q, I( G- j
API文件操作函数
& E2 ^% q$ t2 }$ H2 W$ O1 y4 C0 ^
8 s" h F7 R7 t L. B* \* K' ]+ n1 u% q% L+ y6 c y8 ^: ]
" u- s1 T: M- S e函数 描述
$ a9 D+ G. Q) m5 h$ Z: N# U) tuc4504 打开文本文件,该函数功能与fopen函数类似# `3 s; U6 }1 t1 _8 u3 U) r
uc4514 从uc4504打开的文件中读取一行文本
/ Q; m5 J- {3 d1 g+ `uc4524 写一行文本到由uc4504打开的文件中
+ @% p$ n O4 | Wuc4540 关闭文件,该函数功能与fclose函数类似
+ {+ P9 O* L1 J" @ D p" p$ ]2 q' \
- O k3 B- w5 D$ Y+ b A- j$ y6 r' S% g. y( q% W/ y% h$ Y
, R0 l+ D- S2 B! K8 ~( P) M! Q6 }& ?' t( K5 `
5 K/ n1 {5 @. a( G& K+ L: I! v5 O$ T1 |7 L4 t; I6 m
|
|