Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

fabgostoso

Tipo de erro ODBC Drivers (0x80004005)

Recommended Posts

:angry: Esse erro acontece constantimente ajudem,

 

Tipo de erro:

Microsoft OLE DB Provider for ODBC Drivers (0x80004005)

[Microsoft][Driver ODBC para Microsoft Access] Não foi possível usar '(desconhecido)'. O arquivo já está em uso.

/mensageiro/index.asp, line 130

 

Estou usando o Dreamwave Mx, o código é o seguinte:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>

<!--#include file="Connections/cadastro_clientes.asp" -->

<%

' *** Edit Operations: declare variables

 

Dim MM_editAction

Dim MM_abortEdit

Dim MM_editQuery

Dim MM_editCmd

 

Dim MM_editConnection

Dim MM_editTable

Dim MM_editRedirectUrl

Dim MM_editColumn

Dim MM_recordId

 

Dim MM_fieldsStr

Dim MM_columnsStr

Dim MM_fields

Dim MM_columns

Dim MM_typeArray

Dim MM_formVal

Dim MM_delim

Dim MM_altVal

Dim MM_emptyVal

Dim MM_i

 

MM_editAction = CStr(Request.ServerVariables("SCRIPT_NAME"))

If (Request.QueryString <> "") Then

MM_editAction = MM_editAction & "?" & Request.QueryString

End If

 

' boolean to abort record edit

MM_abortEdit = false

 

' query string to execute

MM_editQuery = ""

%>

<%

' *** Insert Record: set variables

 

If (CStr(Request("MM_insert")) = "form1") Then

 

MM_editConnection = MM_cadastro_clientes_STRING

MM_editTable = "cadastro_cliente"

MM_editRedirectUrl = "consulta.asp"

MM_fieldsStr = "textfield|value|textfield2|value|textarea|value"

MM_columnsStr = "nome|',none,''|email|',none,''|conteudo|',none,''"

 

' create the MM_fields and MM_columns arrays

MM_fields = Split(MM_fieldsStr, "|")

MM_columns = Split(MM_columnsStr, "|")

 

' set the form values

For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2

MM_fields(MM_i+1) = CStr(Request.Form(MM_fields(MM_i)))

Next

 

' append the query string to the redirect URL

If (MM_editRedirectUrl <> "" And Request.QueryString <> "") Then

If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And Request.QueryString <> "") Then

MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString

Else

MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString

End If

End If

 

End If

%>

<%

' *** Insert Record: construct a sql insert statement and execute it

 

Dim MM_tableValues

Dim MM_dbValues

 

If (CStr(Request("MM_insert")) <> "") Then

 

' create the sql insert statement

MM_tableValues = ""

MM_dbValues = ""

For MM_i = LBound(MM_fields) To UBound(MM_fields) Step 2

MM_formVal = MM_fields(MM_i+1)

MM_typeArray = Split(MM_columns(MM_i+1),",")

MM_delim = MM_typeArray(0)

If (MM_delim = "none") Then MM_delim = ""

MM_altVal = MM_typeArray(1)

If (MM_altVal = "none") Then MM_altVal = ""

MM_emptyVal = MM_typeArray(2)

If (MM_emptyVal = "none") Then MM_emptyVal = ""

If (MM_formVal = "") Then

MM_formVal = MM_emptyVal

Else

If (MM_altVal <> "") Then

MM_formVal = MM_altVal

ElseIf (MM_delim = "'") Then ' escape quotes

MM_formVal = "'" & Replace(MM_formVal,"'","''") & "'"

Else

MM_formVal = MM_delim + MM_formVal + MM_delim

End If

End If

If (MM_i <> LBound(MM_fields)) Then

MM_tableValues = MM_tableValues & ","

MM_dbValues = MM_dbValues & ","

End If

MM_tableValues = MM_tableValues & MM_columns(MM_i)

MM_dbValues = MM_dbValues & MM_formVal

Next

MM_editQuery = "insert into " & MM_editTable & " (" & MM_tableValues & ") values (" & MM_dbValues & ")"

 

If (Not MM_abortEdit) Then

' execute the insert

Set MM_editCmd = Server.CreateObject("ADODB.Command")

MM_editCmd.ActiveConnection = MM_editConnection

MM_editCmd.CommandText = MM_editQuery

MM_editCmd.Execute

MM_editCmd.ActiveConnection.Close

 

If (MM_editRedirectUrl <> "") Then

Response.Redirect(MM_editRedirectUrl)

End If

End If

 

End If

%>

<%

Dim registros

Dim registros_numRows

 

Set registros = Server.CreateObject("ADODB.Recordset")

registros.ActiveConnection = MM_cadastro_clientes_STRING

registros.Source = "SELECT * FROM cadastro_cliente"

registros.CursorType = 0

registros.CursorLocation = 2

registros.LockType = 1

registros.Open()

 

registros_numRows = 0

%>

<html>

<head>

<title>Documento sem título</title>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

</head>

 

<body>

<p>Cadastro de Clientes</p>

<form name="form1" method="POST" action="<%=MM_editAction%>">

<table width="291" border="0" cellspacing="0" cellpadding="0">

<tr>

<td width="63" height="30">Nome:</td>

<td width="228"> <input type="text" name="textfield"></td>

</tr>

<tr>

<td height="30">Email:</td>

<td> <input type="text" name="textfield2"></td>

</tr>

<tr>

<td height="30" valign="top">Conteudo:</td>

<td> <textarea name="textarea" cols="30" rows="6"></textarea></td>

</tr>

<tr>

<td height="30"> </td>

<td> <input type="submit" name="Submit" value="Enviar"></td>

</tr>

</table>

<input type="hidden" name="MM_insert" value="form1">

</form>

</body>

</html>

<%

registros.Close()

Set registros = Nothing

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

esta informando que seu arquivo de dados esta sendo usado... por outro aplicativo... feche o DW que provavelmente ele ira funcionar!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vlw amigo deu certo.

So tem um Problema, surgiu outro erro:

 

Microsoft OLE DB Provider for ODBC Drivers (0x80004005)

[Microsoft][Driver ODBC para Microsoft Access] A operação deve usar uma consulta atualizável.

/mensageiro/TMP6q4pee3h4.asp, line 115

 

Linha 115

 

MM_editCmd.Execute

Compartilhar este post


Link para o post
Compartilhar em outros sites

isso ai já é permissão do seu IIS, ou seja, o codigo fo DW esta fincionando, mas apenas o seu iis esta configurado de forma errada, e naum esa aceitando gravar informações em seu banco de dados...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como faço para iserir através de formulario registros na tabela que eu criei no Acess.E como eu configuro?Toda vez da esse erro..Agradeço...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para você pegar dados do formulario e inserir no banco você faz assim:

 

ASP

[*]'Abre a conexão com o banco de dados

[*]Set Conex = Server.CreateObject ("ADODB.Connection")

[*]Conex.open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source="& Server.MapPath("database/dados.mdb")

[*]

[*]'Pega os dados digitados no forluário

[*]nome = request("nome")

[*]email = request("email")

[*]icq = request("icq")

[*]pais = request("pais")

[*]site = request("site")

[*]mensagem = request("mensagem")

 

Depois você salva os dados no BD

 

ASP

[*]'Salva os dados

[*]Set salva = Server.CreateObject("ADODB.Recordset")

[*]sql = "Select * from mensagens"

[*]salva.open sql, conex, 3,3

[*]salva.addnew

[*]salva("nome")= nome

[*]salva("email") = email

[*]salva("icq") = icq

[*]salva("pais") = pais

[*]salva("site") = site

[*]salva("data") = date

[*]salva("hora") = time

[*]salva("mensagem") = mensagem

[*]salva ("ip") = Request.ServerVariables("REMOTE_ADDR")

[*]salva.update

 

Falo!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

este seu banco não estaria com tabelas abertas em mode de estrutura não né??

Compartilhar este post


Link para o post
Compartilhar em outros sites

entaum, você precisa ver no suporte dele, qual pasta tem permissao de escrita.. e colocar lá o bancosacou?abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.