ODBC驱动程序管理器未发现数据源名称并且未指定默认驱动程序解决方案.docx
《ODBC驱动程序管理器未发现数据源名称并且未指定默认驱动程序解决方案.docx》由会员分享,可在线阅读,更多相关《ODBC驱动程序管理器未发现数据源名称并且未指定默认驱动程序解决方案.docx(8页珍藏版)》请在冰豆网上搜索。
ODBC驱动程序管理器未发现数据源名称并且未指定默认驱动程序解决方案
问题:
我先用
JAVA编写了连接MSS
ERVER2000数据库
代码如下:
C
LASS.
FORN
AME(n
COM・
MICROSOFT.
JDBC.
SQLSERVER.SQLS
ERVERD
RIVER”);
S
TRINGURL=
II
JBDC:
MICROSOFT:
SQLSERVER:
//
LOCALHOST:
1433;D
ATABASEN
AME=
PUBS";
S
TRINGUSER="
SA";
S
TRINGPASSWORD=H25121982";
C
ONNECTIONCONN=D
RIVERM
ANAGER・
GETC
ONNECTION(
URL,
USER,
PASSWORD);
S
TATEMENTSTMT=
CONN.
CREATES
TATEMENT();
S
TRINGSQL二“
SELECT*
FROMJOBS";
R
ESULTS
ETRS=
STMT.
EXECUTEQ
UERY(
SQL);
WHILE)
RS.
NEXT()){
s
YSTEM.
OUT.
PRINTLNf
RS.
GETS
TRING(l));
}
RS.
CLOSE();
STMT.
CLOSE();
CONN.
CLOSE();出现错误:
N
OSUITABLEDRIVER
我下载了M
ICROSOFTJDBCD
RIVER安装程序,安装好了
CLASSPATH我设置好了
不知道怎样解决?
我改为用
ODBC连接成功
代码如下:
C
LASS.
FORN
AME(n
SUN.
JDBC.
ODBC.J
DBCO
DBCD
RIVER1');
C
ONNECTIONCONN=D
RIVERM
ANAGER・
GETC
ONNECTION(n
JDBC:
ODBC:
PUBS罗
SA"Z"25121982H);
我然后改写为
JSP程序(用
ODBC连接)
用
TOMCAT5.0
却出现了错误:
[M
ICROSOFT][ODBC驱动程序管理器]未发现数据源名称并且未指定默认驱动程序
我是2003系统。
IIS6.0,用的DW+AEECSS做的LOGIN.ASP.在本地测试都没问题,LOGIN都可以添加数据到数据库,打开也一点问题没有。
就是上传空间后就出现这样的问题。
系统DSN,文件DSN都是装好驱动,主要问题是路径我不知道怎么设置,是虚拟路径?
但是代码是什么。
还有DW里的自定义连接字符串可以连到空间不?
我LOGIN的代码大家看下应该怎么设置数据库路径。
<%@LANGUAGE=,'VBSCRIPr,CODEPAGE=,,936,,%x!
-#INCLUDEFILE="CONNECTIONS/CONN.ASP"->
<%
'***EDITOPERATIONS:
DECLAREVARIABLES
DIMMM_EDITACTION
DIMMM_ABORTEDIT
DIMMM_EDITQUERY
DIMMM_EDITCMD
DIMMM_EDITCONNECTION
DIMMM_EDITTABLE
DIMMM_EDITREDIRECTURL
DIMMMEDITCOLUMN
DIMMMRECORDID
DIMMM_FIELDSSTR
DIMMM_COLUMNSSTR
DIMMM_FIELDS
DIMMM_COLUMNS
DIMMM_TYPEARRAY
DIMMM_FORMVAL
DIMMM_DELIM
DIMMM_ALTVAL
DIMMM_EMPTYVAL
DIMMM」
MM_EDITACTION=CSTR(REQUEST.SERVERVARIABLES(,'SCRIPT_NAMEH))
IF(REQUEST.QUERYSTRING<>"")THEN
MM_EDITACTION=MM_EDITACTION&,,?
,&SERVER.HTMLENCODE(REQUEST.QUERYSTRING)ENDIF
'BOOLEANTOABORTRECORDEDIT
MM_ABORTEDIT=FALSE
'QUERYSTRINGTOEXECUTE
MM_EDITQUERY=,H,
%>
<%
'***INSERTRECORD:
SETVARIABLES
%>
<%
'***INSERTRECORD:
CONSTRUCTASQLINSERTSTATEMENTANDEXECUTEIT
DIMMM_TABLEVALUES
DIMMM_DBVALUES
IF(CSTR(REQUEST("MM_INSERT“))v>”“)THEN
'CREATETHESQLINSERTSTATEMENT
MM_TABLEVALUES=,,H
MM_DBVALUES=,H,
FORMM」=LBOUND(MM_FIELDS)TOUBOUND(MM_FIELDS)STEP2
MM_FORMVAL=MM_FIELDS(MM」+l)MM_TYPEARRAY二SPLIT(MM_COLUMNS(MM」+1);';')
MM_DELIM=MM_TYPEARRAY(O)
IF(MM_DELIMiNONE“)THENMM_DELIM=“”
MM_ALTVAL=MM_TYPEARRAY
(1)
IF(MM_ALTVAL=,,NONE,,)THENMM_ALTVAL=,H,
MM_EMPTYVAL=MM_TYPEARRAY
(2)
IF(MM_EMPTYVALiNONE“)THENMM_EMPTYVAL=“”
IF(MM_FORMVAL=n,,)THEN
MM_FORMVAL=MM_EMPTYVAL
ELSE
IF(MM_ALTVAL<>,H,)THEN
MM_FORMVAL=MM_ALTVAL
ELS臼F(MM_DELIM=,,,,,)THEN,ESCAPEQUOTES
MM_FORMVAL=,,H,&REPLACE(MM_FORMVAL,&
ELSE
MM_FORMVAL=MM_DELIM+MM_FORMVAL+MM_DELIM
ENDIF
ENDIF
IF(MM_I<>LBOUND(MM_FIELDS))THEN
MMTABLEVALUES=MMTABLEVALUES&","
MMDBVALUES=MMDBVALUES&","
ENDIF
MM_TABLEVALUES=MM_TABLEVALUES&MM_COLUMNS(MM」)
MM_DBVALUES=MM_DBVALUES&MM_FORMVAL
NEXT
MM_EDITQUERY二“INSERT
INTO,,&MM_EDITTABLE&“(”&MM_TABLEVALUES&”)VALUES(”&MM_DBVALUES&”)”
IF(NOTMM_ABORTEDIT)THEN
'EXECUTETHEINSERT
SETMM_EDITCMD=SERVER.CREATEOBJECT(,,ADODB.COMMANDH)
MM_EDITCMD.ACTIVECONNECTION=MM_EDITCONNECTION
MM_EDITCMD.COMMANDTEXT=MM_EDITQUERY
MMEDITCMD.EXECUTE
MM_EDITCMD.ACTIVECONNECTION.CLOSEIF(MM_EDITREDIRECTURLo,,,,)THEN
RESPONSE.REDIRECT(MM_EDITREDIRECTURL)
ENDIF
ENDIF
ENDIF
答案:
修改
CONNSTR=,,DBQ=,,+SERVER.MAPPATH(,,DATA/#FL1.ASP,,)+,,;DEFAULTDIR=;DRIV
ER={MICROSOFTACCESSDRIVER(*.MDB)};"
为
CONNSTR="PROVIDER=MICROSOFT」ET・OLEDB.4.0;DATASOURCE=“&
SERVER・MAPPATH(“DATA/#FL1・ASP”)