技术开发 频道

在VFP上使用DM数据库

  2) 使用SqlStringConnect()函数

  实际上,使用SQLCONNECT()函数,需要手动创建DSN,这是一件非常麻烦的事情,而且使用起来也不够灵活。所以SPT提供了另一个函数,SqlStringConnect(),使用它可以直接连接到DM数据库,省去了很多的麻烦。

  SqlStringConnect()函数的用法

  SQLSTRINGCONNECT(
  “Driver
=DM ODBC Driver;
  SERVER
=localhost;TCP_PORT=12345;DATABASE=SYSTEM;UID=SYSDBA;PWD=SYSDBA”)

  SqlStringConnect()函数,使用连接字符串参数直接连接到DM数据库。

  我们解释一下参数字符串的意义,driver指明了使用哪一个ODBC驱动程序,这里是DM ODBC Driver;Server是指DM Server的服务器名称,我们使用本地服务器就是localhost;TCP_PORTS是DM Server的监听端口,UID是在DM Server的用户名,这里使用默认的SYSDBA;PWD是用户密码,这里使用默认值SYSDBA;

  调用SqlConnect()或是SqlStringConnect()的返回值得如果是正整数,就表示连接成功,得到的正整数很重要——就是连接句柄!

  2.访问数据库

  我们首先创建连接

  Local hdl_conn
  hdl_conn
= SQLSTRINGCONNECT(“Driver=DM ODBC Driver;
  SERVER
=localhost;TCP_PORT=12345;DATABASE=SYSTEM;UID=SYSDBA;PWD=SYSDBA”)

  得到连接句柄hdl_conn

  1) 使用SQLEXEC()函数

  函数原型

SQLEXEC(nConnectionHandle, [cSQLCommand, [cCursorName]])

  先来解释一下SQLEXEC()函数:参数nConnectionHandle表示连接句柄;参数cSQLCommand表示要传送的语句,注意此语句一定是DM数据库定义的SQL语法,        而不是Visual FoxPro的SQL语法。回想一下SQL Pass Though这个名字,顾名思义,Visual FoxPro只不过是是将别人的语言传送给别人,这一点现在完全体现在   SQLEXEC()函数上。参数cCursorName表示得到的结果集的名字,如果省略,返回的结果集将以Sqlresult命名。

  如果返回1表示,执行成功;如果返回0表示正在执行;如果返回负数表示执行失败。

0
相关文章