Jump to content


Photo

Regras Sql Interbase Firebird


  • Faça o login para participar
5 replies to this topic

#1 igDesigner

igDesigner

    Normal

  • Usuários
  • 80 posts
  • Sexo:Masculino
  • Localidade:São Paulo

Posted 03/08/2006, 14:37

Galera estou consultando um banco de dados...

na página há 3 condições diferentes para a consulta.

3 SQL buscando coisas diferentes.

Notei depois de muitas ida e vindas... que o nome da variavel $row->CAMPO tem que ser diferente...

não sei se eh uma regra mas só funcionou depois que mudei isso... para $row_1->CAMPO e a outro resultado ficou com $row->CAMPO

Já procurei pacas um tutorial mas não encontrei alguem sabe onde encontro?


espero que entendam minha dúvida...

vlw, ig
Ignázio Lombardo
ignazio@sideinfo.com.br

#2 Petry

Petry

    Veterano

  • Usuários
  • 1132 posts
  • Sexo:Masculino
  • Localidade:Caxias do Sul - RS
  • Interesses:- desenvolvimento WEB<br />- websemântica<br />- microformatos

Posted 03/08/2006, 15:02

nossa cara... tah confuso isso ai hein? tenta explica melhor o que tu quer ok? e outra.. coloca o sql pra gente dar uma olhada, blza?

Posted Image

- Desenvolvedor Python/ZOPE/Plone + ArchGenXML/Poseidon - Python + Django na Universidade de Caxias do Sul
- Desenvolvedor Python + Django na World News

Blog

#3 igDesigner

igDesigner

    Normal

  • Usuários
  • 80 posts
  • Sexo:Masculino
  • Localidade:São Paulo

Posted 04/08/2006, 14:53

Resumindo a pergunta....

Consigo buscar em 2 campos da tabela em um banco de dados tipo FIREBIRD..

EXE.
	 
	 $sql = "SELECT PRODICOD, PRODA60DESCR, PRODA60EDITORA, "
			 . "PRODA60AUTOR, PRODA15EDICAO, PRODIANOEDICAO, PRODN6VLRVENDA "
			 . "FROM PRODUTO "
			 . "WHERE EMPRICOD=2 AND "
   -----> . "PRODA60DESCR LIKE '%$busca%' "
   -----> . "AND PRODA30ADESCRREDUZ LIKE '%$busca%' "
			 . "ORDER BY PRODIANOEDICAO DESC";



Pois não consigo achar nenhum registro qdo busco por palavras dentro de PRODA60DESCR e aparentemente o SQL está correto.

vlw..
Ignázio Lombardo
ignazio@sideinfo.com.br

#4 Petry

Petry

    Veterano

  • Usuários
  • 1132 posts
  • Sexo:Masculino
  • Localidade:Caxias do Sul - RS
  • Interesses:- desenvolvimento WEB<br />- websemântica<br />- microformatos

Posted 04/08/2006, 19:16

Resumindo a pergunta....

Consigo buscar em 2 campos da tabela em um banco de dados tipo FIREBIRD..

EXE.

	 
	 $sql = "SELECT PRODICOD, PRODA60DESCR, PRODA60EDITORA, "
			 . "PRODA60AUTOR, PRODA15EDICAO, PRODIANOEDICAO, PRODN6VLRVENDA "
			 . "FROM PRODUTO "
			 . "WHERE EMPRICOD=2 AND "
   -----> . "PRODA60DESCR LIKE '%$busca%' "
   -----> . "AND PRODA30ADESCRREDUZ LIKE '%$busca%' "
			 . "ORDER BY PRODIANOEDICAO DESC";



Pois não consigo achar nenhum registro qdo busco por palavras dentro de PRODA60DESCR e aparentemente o SQL está correto.

vlw..


aparentemente está correto sim... tha usando o bancom no php neh? a função que gera a query naum está executando nenhuma excessão? faz um teste... da um print dessa query ai e ve o que retorna, joga o resultado no banco direto e ve que se tah saindo algum resultado...

Posted Image

- Desenvolvedor Python/ZOPE/Plone + ArchGenXML/Poseidon - Python + Django na Universidade de Caxias do Sul
- Desenvolvedor Python + Django na World News

Blog

#5 igDesigner

igDesigner

    Normal

  • Usuários
  • 80 posts
  • Sexo:Masculino
  • Localidade:São Paulo

Posted 07/08/2006, 11:23

Então... não consigo acessar o banco, os kras apenas liberaram o IP onde o site está hospedado...

mas a dúvida agora é qdo busco por palavras que estão no campo PRODA60DESCR ele não acha nada... mas se busco palavras que estão no campo PRODA30ADESCRREDUZ ele acha....

isso da mesma SQL

$sql = "SELECT PRODICOD, PRODA60DESCR, PRODA60EDITORA, "
			 . "PRODA60AUTOR, PRODA15EDICAO, PRODIANOEDICAO, PRODN6VLRVENDA "
			 . "FROM PRODUTO "
			 . "WHERE EMPRICOD=2 AND "
   -----> . "PRODA60DESCR LIKE '%$busca%' "
   -----> . "AND PRODA30ADESCRREDUZ LIKE '%$busca%' "
			 . "ORDER BY PRODIANOEDICAO DESC";

Pelo que entendi ele procura só no ultimo campo -----> . "AND PRODA30ADESCRREDUZ LIKE '%$busca%' " se fazer a troca, deixar o PRODA60DESCR por ultimo, funciona só o ultimo.


alguem pode me explicar oque acontece?
Ignázio Lombardo
ignazio@sideinfo.com.br

#6 Petry

Petry

    Veterano

  • Usuários
  • 1132 posts
  • Sexo:Masculino
  • Localidade:Caxias do Sul - RS
  • Interesses:- desenvolvimento WEB<br />- websemântica<br />- microformatos

Posted 09/08/2006, 08:32

coloca um um OR em vez do AND, pelo menos para testar....
$sql = "SELECT PRODICOD, PRODA60DESCR, PRODA60EDITORA, "
. "PRODA60AUTOR, PRODA15EDICAO, PRODIANOEDICAO, PRODN6VLRVENDA "
. "FROM PRODUTO "
. "WHERE EMPRICOD=2 AND "
. "PRODA60DESCR LIKE '%$busca%' "
. "OR PRODA30ADESCRREDUZ LIKE '%$busca%' "
. "ORDER BY PRODIANOEDICAO DESC";

não sei se vc já está disparando pq vc soh posto a query, mas dispara a excessão pra ver se naum tah dando nenhum erro....

$resultado = ibase_query($conexao, $sql) or die(ibase_errmsg());
e dah um print no resultado pra ver se tah retornando algum problema...

Edição feita por: MxDxPx, 09/08/2006, 08:34.

Posted Image

- Desenvolvedor Python/ZOPE/Plone + ArchGenXML/Poseidon - Python + Django na Universidade de Caxias do Sul
- Desenvolvedor Python + Django na World News

Blog




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq