problema, quero que em uma busca a palavra digitada verifique se já existe na tabela, se existir atualizar com mais um click se não existir adicionar a tabela.. sendo que na tabela tando o ID como o nome da coluna TAG são unicos e não podem se repetir.. a minha duvida e questao esta na linha sublinhada não estou sabendo mandar verificar se a palavra da busca no caso strSearchFor existe na tabela ou não, como esta o codigo da erro ele volta dizendo que:
Microsoft JET Database Engine error '80004005'
The changes you requested to the table were not successful because they would create duplicate values in the index, primary key, or relationship. Change the data in the field or fields that contain duplicate data, remove the index, or redefine the index to permit duplicate entries and try again.
/files/2see/search.asp, line 317
--- ento e facil deduzir que a nha não esta funcionando a varificacao e esta tentando adicionar a palavra em vez de atualizar.. se mando a busca com a primeira palavra da tabela ela se atualiza as outras voltam com o erro acima; codigo:
strSQL = " SELECT *"
strSQL = strSQL & " FROM tblTagCloud"
strSQL = strSQL & " WHERE tag"
Set rsTagCloudSubmit = Server.CreateObject("ADODB.Recordset")
rsTagCloudSubmit.Open strSQL, adoCon2see
If strSearchFor = rsTagCloudSubmit("Tag") Then
strSQL = "UPDATE tblTagCloud SET tblTagCloud.Click='" &(rsTagCloudSubmit("Click")+1)& "' WHERE ID =" & rsTagCloudSubmit("Tag")
Pergunta
1980coelho
problema, quero que em uma busca a palavra digitada verifique se já existe na tabela, se existir atualizar com mais um click se não existir adicionar a tabela.. sendo que na tabela tando o ID como o nome da coluna TAG são unicos e não podem se repetir.. a minha duvida e questao esta na linha sublinhada não estou sabendo mandar verificar se a palavra da busca no caso strSearchFor existe na tabela ou não, como esta o codigo da erro ele volta dizendo que:
Microsoft JET Database Engine error '80004005'
The changes you requested to the table were not successful because they would create duplicate values in the index, primary key, or relationship. Change the data in the field or fields that contain duplicate data, remove the index, or redefine the index to permit duplicate entries and try again.
/files/2see/search.asp, line 317
--- ento e facil deduzir que a nha não esta funcionando a varificacao e esta tentando adicionar a palavra em vez de atualizar.. se mando a busca com a primeira palavra da tabela ela se atualiza as outras voltam com o erro acima; codigo:
strSQL = " SELECT *"
strSQL = strSQL & " FROM tblTagCloud"
strSQL = strSQL & " WHERE tag"
Set rsTagCloudSubmit = Server.CreateObject("ADODB.Recordset")
rsTagCloudSubmit.Open strSQL, adoCon2see
If strSearchFor = rsTagCloudSubmit("Tag") Then
strSQL = "UPDATE tblTagCloud SET tblTagCloud.Click='" &(rsTagCloudSubmit("Click")+1)& "' WHERE ID =" & rsTagCloudSubmit("Tag")
adoCon2see.Execute(strSQL)
Else
strSQL = "INSERT INTO tblTagCloud ([tag], [click]) VALUES('" & strSearchFor & "', '1')"
adoCon2see.Execute(strSQL)
End If
---
RESOLUCAO:
'TagCloud Isert Or Update
If Request.Form("search") <> "" Then
strSQL = " SELECT *"
strSQL = strSQL & " FROM tblTagCloud"
strSQL = strSQL & " WHERE tag ='" & Request.Form("search") & "' "
Set rsTagCloudSubmit = Server.CreateObject("ADODB.Recordset")
rsTagCloudSubmit.Open strSQL, adoCon2see
If rsTagCloudSubmit.EOF Then
strSQL = "INSERT INTO tblTagCloud ([tag], [click]) VALUES('" & Request.Form("search") & "', '1')"
adoCon2see.Execute(strSQL)
Else
strSQL = "UPDATE tblTagCloud SET tblTagCloud.Click='" &(rsTagCloudSubmit("Click")+1)& "' WHERE tag ='" & Request.Form("search") & "' "
adoCon2see.Execute(strSQL)
End If
End If
---
Editado por 1980coelhoLink para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados