|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 PLM之家NX 于 2014-2-22 14:41 编辑 . a: c; ~' O# j1 _, }0 r' ~( T
. [7 n" ?' ~) E; q% B6 P
UG NX二次开发中,外部数据库的访问方式及案例0 C1 b6 ^5 G) o6 _: i
6 e v/ r( w n2 h
# [ h0 [9 G7 v( I1 利用ODBC访问外部数据
/ O" O8 r) ~ r+ q# H o1 v" cODBC(Open Database connectivity 开放式数据库互连)是由微软公司提出的一个用于访问数据库的统一界面标准,它提供了一个一致的应用程序编程接口,该接口使用一个针对数据库的驱动程序与不同的数据库协同工作。
0 Y5 F0 [2 m h( b5 x! k! qDSN(Data Source Name)是用于指定ODBC与相关的驱动程序相对应的一个入口,所有DSN的信息由系统进行管理,一般来讲当应用程序要使用ODBC访问数据库时,就需要指定一个DSN以便于连接到一个指定的ODBC驱动程序。
* O# J7 ?4 D6 s; w1 b利用ODBC访问外部数据,首先要配置ODBC数据源,即创建ODBC的DSN;然后读取ODBC指定数据源中的数据。
H& E" I: }9 A S, r/ o' a& R i# M2 x, q! g5 r3 U
0 S9 w" Z+ _- @; W% T
关于ODBC访问外部数据访问数据库图文教程5 h% q2 w; m& e- v5 z; G, f
http://www.plmhome.com/thread-1040-1-1.html% @7 {0 U2 A8 U% {! p! @
(出处: UG论坛|NX论坛|Teamcenter论坛|兄弟UG网|UG视频网|PLM之家UG网|Teamcenter技术支持网|Tecnomatix学习网)
& v" b2 q6 w: j% H4 {; |4 v7 n' s# O, \& a, }7 R8 e* `0 {
5 P! v8 J( U. y& _, h. m
2 API文件操作函数访问外部数据: b+ Y! \: v0 p/ m
2 R) O7 R: n) z3 {5 b7 sUG/OPEN API中有关文件操作的函数包含在头文件uf_cfi.h中,通过函数uc4500可以打开二进制文件,相关的文件操作函数有uc4510、uc4511、uc4512、uc4513及uc4520、uc4521、uc4522、uc4523,通过函数uc4504可以打开文本文件,相关的文件操作函数有uc4514、uc4524、uc4525,函数uc4540用于关闭文件,判断文件是否存在使用函数UF_CFI_ask_file_exist。
) L) G1 N7 U- a/ @5 v通过UG/OPEN API提供的文件操作函数访问外部数据时,要注意以下问题:
8 u: l, P- ] E% e8 t v5 {(1)UG/Manager和TeamCenter中的文件和文件夹操作不能使用uf_cfi.h中函数,在头文件uf_ugmgr中;
" P: m3 W; A' t" }& t(2)UG/OPEN API中对文件和文件夹标识符的长度有如下限制: S$ ^$ O% D% [( x$ d
文件名长度不能超过UF_CFI_MAX_FILE_NAME_LEN;
0 g# q2 o/ H( e l) n3 q+ v9 p文件夹路径的长度不能超过UF_CFI_MAX_PATH_NAME_LEN;
, S! w5 i. ?) w% J整个文件路径的长度不能超过UF_CFI_MAX_PATH_NAME_LEN。
- D& M: {# ]) a! p% o. S' w& P访问文本文件的程序流程如下:
7 e; p: r0 w- X* v- L
API文件操作函数
/ |9 r5 D, V' ~8 O
' C) q8 w' \( T' w8 p3 V
+ @6 ^# F- m/ d% q, j% S% T: e' \/ f; _! h3 v) l% y! U& B
函数 描述
`4 m$ c- u( I) E# {2 j2 Cuc4504 打开文本文件,该函数功能与fopen函数类似& A/ b# ~- H# c% E
uc4514 从uc4504打开的文件中读取一行文本
: U/ G+ u! Y) M9 C8 f2 g& muc4524 写一行文本到由uc4504打开的文件中
2 S8 ~6 F, L$ y3 ?% Iuc4540 关闭文件,该函数功能与fclose函数类似
, E {* G% H/ w7 [/ J2 s0 g/ u+ d' k9 n1 I6 ^0 A
# {! Z* t* p' B' l$ t' n3 m3 f
7 t/ \- {3 I7 `- v
- I9 m/ X: h2 M9 g: e- X8 f0 |2 t/ E6 q* z( V
! ^1 s+ \' L5 D: r
) j* P+ v# x% Q5 U( s! f |
|