Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2351394
  • 博文数量: 321
  • 博客积分: 3440
  • 博客等级: 中校
  • 技术积分: 2992
  • 用 户 组: 普通用户
  • 注册时间: 2007-05-24 09:08
个人简介

我就在这里

文章分类

全部博文(321)

文章存档

2015年(9)

2014年(84)

2013年(101)

2012年(25)

2011年(29)

2010年(21)

2009年(6)

2008年(23)

2007年(23)

分类: Sybase

2012-12-21 21:37:52

方式一:

SQLCA.DBMS = "ODBC"

SQLCA.AutoCommit = False

SQLCA.DBParm = "ConnectString='driver=Microsoft Access Driver (*.mdb);DBQ=c:\foodmart.mdb'"

 

CONNECT;

 

IF SQLCA.SQLCode <> 0 THEN

MessageBox("数据库连接失败","请与管理员联系。错误号:" + String(SQLCA.SQLCode) + "~r~n错误原因:" + SQLCA.SQLErrText)

RETURN

else

MessageBox("数据库连接成功","现在进入系统... ...")

end if

 

方式二:

SQLCA.DBMS = "OLE DB"

SQLCA.AutoCommit = False

SQLCA.DBParm = "PROVIDER='Microsoft.Jet.OLEDB.4.0',DATASOURCE='C:\foodmart.mdb'"

CONNECT;

 

方式三:

建立DSN,通过ODBC连接。这个就不用多说了。

例如:

// Profile my_ass

SQLCA.DBMS = "ODBC"

SQLCA.AutoCommit = False

SQLCA.DBParm = "ConnectString='DSN=my_ass'"

 

 

 

catalog tables could not be created and are not available for use 问题解决方法:

 

这种情况多见于从SQL server 转到 Access 数据库,用ODBC连接的情况

把sqlserver数据库里的五个‘pb’字母开头的数据表导入到access数据库里去,再连接就不提示了

 

关于动态注册ODBC数据源

 

关于动态注册Access数据源

 

//***********************************************

// 函数名: gf_setodbc_access

//     功能: 完成access数据源的注册功能

// 输入参数:

//   as_database 数据库名

//   (即Access数据库文件名字,不含扩展名)

//   as_path   数据库文件所在的目录

// 返回值:

//   true 表示自动配置成功

//   false 表示自动配置失败

// 设计者: Adamswater

// 完成时间: 2005年6月

//***************************************************

boolean lb_rtn

string ls_root,ls_root_dsn,ls_root_Jet,ls_root_Engines

integer li_rtn

string ls_dsnname,ls_dbfullname,ls_driver,temp,ls_version

string ls_syspath

environment env

 

integer rtn

 

ls_syspath = Space( 40 )

//获得*作系统的目录

GetSystemDirectoryA(ls_syspath,60)

ls_driver = ls_syspath + "\odbcjt32.dll"

lb_rtn = true

ls_root = "HKEY_LOCAL_MACHINE\software\odbc\odbc.ini"

//数据源名字为:文件名字+“_DT”

ls_dsnname = as_database + "_DT"

ls_root_dsn = ls_root + "\" + ls_dsnname

ls_root_Engines = ls_root_dsn + "\" + "Engines"

ls_root_Jet = ls_root_Engines + "\" + "Jet"

ls_dbfullname = as_path + "\" + as_database + ".mdb"

//注册数据源的名字

li_rtn = registryset(ls_root,ls_dsnname,regstring!,"")

if li_rtn= - 1 then

return false

end if

//注册数据库名字

li_rtn = registryset(ls_root_dsn,"DBQ",regstring!,ls_dbfullname)

if li_rtn= - 1 then

return false

end if

//注册数据库驱动程序

li_rtn = registryset(ls_root_dsn,"Driver",regstring!,ls_driver)

if li_rtn= - 1 then

return false 

 

阅读(8196) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~