Ir para conteúdo

POWERED BY:

Arquivado

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

Thebadashark2005

Problemas com inserção de dados

Recommended Posts

Galera criei esse código aqui via Dreamweaver tá lindo mas tá dando esse erro aqui quando tenta inserir os dados:

Erro:

Tipo de erro:

Microsoft JET Database Engine (0x80004005)

A operação deve usar uma consulta atualizável.

/controlproc/insere.asp, line 115

essa linha: MM_editCmd.Execute

Código:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/controlproc.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_controlproc_STRING
  MM_editTable = "processos"
  MM_editRedirectUrl = "sucesso.htm"
  MM_fieldsStr  = "nome|value|nb|value|sipps|value|data|value|select|value|matricula|value|serv
idor|value"
  MM_columnsStr = "nome|',none,''|nb|',none,''|sipps|',none,''|data|',none,NULL|tipos|',none,''|matricula|',none,''|servidor|',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 Recordset1
Dim Recordset1_numRows

Set Recordset1 = Server.CreateObject("ADODB.Recordset")
Recordset1.ActiveConnection = MM_controlproc_STRING
Recordset1.Source = "SELECT * FROM tipos"
Recordset1.CursorType = 0
Recordset1.CursorLocation = 2
Recordset1.LockType = 1
Recordset1.Open()

Recordset1_numRows = 0
%>
<html>
<head>
<title>Inserindo dados</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="css/ctrl.css">
</head>

<body>
<h2><b>CONTROLE DE PROCESSOS</b></h2>
<P>Digite os dados solicitados, depois clique no botão Incluir:</P>
<form ACTION="<%=MM_editAction%>" METHOD="POST" name="form1">
  
  <p>Nome: 
	<INPUT type="text" id=nome name=nome maxlength=40 size=35 >
  </p>
  <p>Benefícios: 
	<INPUT type="text" id=nb name=nb maxlength=15 size=15 >
	(somente números)</p>
  <p>Sipps: 
	<INPUT type="text" id=sipps name=sipps maxlength=10 size=10>
  </p>
  <p>Data: 
	<INPUT type="text" id=data name=data maxlength=10 size=10 >
	(formato dd/mm/aaaa) </p>
  <p>Selecione o tipo: 
	<select name="select">
	  <%
While (NOT Recordset1.EOF)
%>
	  <option value="<%=(Recordset1.Fields.Item("tipos").Value)%>" <%If (Not isNull((Recordset1_first))) Then If (CStr(Recordset1.Fields.Item("tipos").Value) = CStr((Recordset1_first))) Then Response.Write("SELECTED") : Response.Write("")%> ><%=(Recordset1.Fields.Item("tipos").Value)%></option>
	  <%
  Recordset1.MoveNext()
Wend
If (Recordset1.CursorType > 0) Then
  Recordset1.MoveFirst
Else
  Recordset1.Requery
End If
%>
	</select>
  </p>
  <p>Matrícula: 
	<INPUT type="text" id=matricula name=matricula maxlength=8 size=8 >
  </p>
  <p>Nome Servidor: 
	<INPUT type="text" id=servidor name=servidor maxlength=40 size=35 >
  </p>
  <p> 
	<input type="submit" name="Submit" value="Enviar">
  </p>

  <input type="hidden" name="MM_insert" value="form1">
</form>
<hr>
<p> </p>
</body>
</html>
<%
Recordset1.Close()
Set Recordset1 = Nothing
%>
Onde to errando gente!

 

Att.

 

Thebadshark

Compartilhar este post


Link para o post
Compartilhar em outros sites

A principio verifique as permissoes do IIS, depois posta tb o conteudo do arquivo de inclusao <!--#include file="Connections/controlproc.asp" -->

Compartilhar este post


Link para o post
Compartilhar em outros sites

no topico pendurado duvidas frequentes tem uma dica pra resolver isso. se não me engano no subforum de dicas também tem. dê uma pesquisada que irá encontrar algo

Compartilhar este post


Link para o post
Compartilhar em outros sites

A principio verifique as permissoes do IIS, depois posta tb o conteudo do arquivo de inclusao <!--#include file="Connections/controlproc.asp" -->

 

Ola Bruno.

 

Estou com o mesmo problema que ele, e e possivel que seja isso mesmo o meu problema, o IIS. Mas nao sei o que devo verificar, sera que pode me ajudar nisso?

 

Obrigado.

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.