换了新环境连不上数据库

换了新环境连不上数据库,第1张

数据库连接失败的原因及解决方法:1、登录账号、密码、服务器名称、数据库名称登录错误,应输入正确;2、没能正确安装SQL服务器,应正确安装;3、网络连接存在故障,应检修网络是否存在故障。

原因一:登录账号、密码、服务器名称、数据库名称登录错误导致不能连接,这个比较常见,仔细检查好所填信息是否正确,填写正确一般就可以解决。解决方法:当正在使用的软件出现数据库不能连接时,一般就是服务器名出现问题,更改服务器名称一般可以解决问题。数据库如果是安装在本机,服务器名可以用“.”或“(local)”来代替 ;如果是安装在局域网的其它计算机上,可以用IP地址作为服务器名。

原因二:如果没能正确安装SQL服务器,也会导致数据库连接不上;安装好数据库后,如果SQL服务管理器没有启动,则要去服务那里开启。解决方法:如果是SQL数据库未能能成功安装,再次重新安装时,可能会无法安装,提示是存在一个未完成的安装挂起。解决就方法是:打开注册表编辑器,在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager中找到并删除PendingFileRenameOperations项目即可。如果是更改了Windows的用户名或者密码,会导致SQL服务管理器不能启动,解决办法是去控制版面的服务那里修改启动。

你缺少自动连接数据库的语句.你是用ASA数据库吧.得用到以下语句在你源程序的Application的open事件中:

//其中dsn_name为你所建立的数据源名字

gs_curpath = space(100)

GetCurrentDirectoryA(100,gs_curpath)//获得程序路径

gs_curpath = trim(gs_curpath)

if right(gs_curpath,1)<>'\' then

gs_curpath = gs_curpath+"\"

end if

RegistryDelete ("HKEY_CURRENT_USER\software\odbc\odbc.ini\odbc data sources", dsn_name )

RegistryDelete ("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name, "" )

//如果没有此句,odbc中无此数据源名称,但可以用

registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\odbc data sources",dsn_name,regstring!,"Adaptive Server Anywhere 8.0")

registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name,"AutoStop",regstring!,"Yes")

registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name,"DatabaseFile",regstring!,gs_curpath + db_filename)//db_filename为你数据库名字

// registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name,"Debug",regstring!,"NO")

// registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name,"DisableMultiRowFetch",regstring!,"NO")

registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name,"Driver",regstring!,gs_curpath+"dbodbc8.dll")

registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name,"Integrated",regstring!,"NO")

registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name,"PWD",regstring!,"sql")

registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name,"UID",regstring!,"dba")

registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name,"Start",regstring!,gs_curpath+"dbeng8.exe -q -cl 32m")

// registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name,"Start",regstring!,gs_curpath+"dbeng8.exe -d -qp -cl 8m")

//registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name,"ServerName",regstring!,gs_curpath+"dbsrv8.exe")

//registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name,"DataBaseName",regstring!,"HTCTS1.0")

// registryset("HKEY_CURRENT_USER\software\odbc\odbc.ini\" + dsn_name,"Start",regstring!,gs_curpath+"dbeng8.exe -Q ")

//用户名和口令不注册,以保安全,下面连接时输入正确的用户名和口令即可。end if

SQLCA.DBMS = "ODBC"

SQLCA.DBParm = "ConnectString='DSN=" + dsn_name + "UID=dbaPWD=sql'"

SQLCA.AutoCommit = False

connect

//还需要一些文件 你从网上down就行了

cnn.ConnectionString = conn '设置连接字符串ConnectionString属性

查看下conn变量的赋值是否有问题!是否使用了绝对路径.建议使用相对路径.并且将数据库文件和执行文件放在相同目录下!路径可用: App.path+"\数据库文件名"来引用.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6833621.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-29
下一篇 2023-03-29

发表评论

登录后才能评论

评论列表(0条)

保存