Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-06-2012
kdemia kdemia is offline
Miembro
 
Registrado: may 2010
Posts: 109
Poder: 14
kdemia Va por buen camino
Exclamation problema con consulta sql con Match Against

Que tal gente, tengo un problema. Estoy desarrollando una aplicacion de gestion de productos con delphi 2010 y mysql, conectado mediante ADO. De cada producto tengo, entre muchos campos, uno que se llama "descripcion" que es de tipo TEXT donde guardo "tags" de cada producto para poder realizar una busqueda avanzada, por ejemplo de un televisor un tag posible puede ser 32" (pulgadas), entonces en la busqueda avanzada enumero X cantidad de tags y me busca aquellos productos que en su descripcion contengan alguno de los tag enumerados. Por ejemplo tengo un Televisor que tiene de tags 32" - HDMI - HD (un tag abajo del otro) y otro Televisor con que tiene 32" USB HD, bien, ahora yo en delphi tengo un Memo donde pongo 32" y HD, nuevamente separados por un enter, entonces para realizar la busqueda tengo el siguiente codigo
Código Delphi [-]
for i := 0 to descripcion.Lines.Count - 1 do
      if i = 0 then
        sql:= sql+'and ((MATCH(p.descripcion) AGAINST ("'+
          descripcion.Lines[i]+'"))'
      else
        sql:= sql+'or (MATCH(p.descripcion) AGAINST ("'+
          descripcion.Lines[i]+'"))';
    if FBusquedaAvanzada.descripcion.Lines.Count > 0 then
      sql:= sql+')';

Aclaro que antes hay un "AND" porque hay varias cosas atras.

Bien el problema es que me tira la siguiente excepcion:

Project Project1.exe raised exception class EOleException with message '[MySQL][ODBC 5.1 Driver][mysqld-5.5.8-log]The used table type doesn't support FULLTEXT indexes'.

y luego su correspondiente error:

[MySQL][ODBC 5.1 Driver][mysqld-5.5.8-log]The used table type doesn't support FULLTEXT indexes.

Como puedo resolverlo? (se que es por culpa del MATCH AGAINST pero nose como resolverlo)

Saludos y espero haber sido claro. Gracias!

Última edición por kdemia fecha: 27-06-2012 a las 08:48:58. Razón: titulo incompleto
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
LCASE dentro del MATCH tramjauer MySQL 2 04-11-2007 21:07:45


La franja horaria es GMT +2. Ahora son las 01:21:32.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi