Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-11-2015
tarco35 tarco35 is offline
Miembro
 
Registrado: sep 2003
Posts: 210
Poder: 21
tarco35 Va por buen camino
Sustituir caracter de un campo sql-paradox

Hola, tengo una tabla de paradox 7, y quiero cambiar de los campos que contengan la letra Á por A.
Uso la sentencia:
Código SQL [-]
UPDATE base SET nombre = REPLACE(nombre, 'Á', 'A');

para la tabla BASE y el campo NOMBRE... pero me lanza el mensaje... "Capability NOT soported" con el programa DBExpl32

¿como podria hacerlo?

gracias por su tiempo.
Responder Con Cita
  #2  
Antiguo 01-12-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola tarco35.

Paradox 7 soporta las siguientes funciones de cadena: || , LOWER, UPPER, SUBSTTRING y TRIM (C:\Program Files\Common Files\Borland Shared\BDE\localsql.hlp), de modo que no veo manera de lograr lo que buscas mediante una sentencia SQL.

Tendrías que hacerlo desde Delphi, algo parecido a este código:
Código Delphi [-]
...
begin
  Query2.Close;
  Query2.SQL.Text := 'UPDATE BASE SET NOMBRE = :NOMBRE WHERE ID = :ID';
  Query2.Prepare;
  try
    Query1.Close;
    Query1.SQL.Text := 'SELECT * FROM BASE';
    Query1.Open;
    while not Query1.Eof do
    begin
      Query2.ParamByName('NOMBRE').AsString := StringReplace(Query1.FieldByName('NOMBRE').AsString,
         'Á', 'A', [rfReplaceAll]);
      Query2.ParamByName('ID').AsInteger := Query1.FieldByName('ID').AsInteger;
      Query2.ExecSQL;
      Query1.Next;
    end;
    Query1.Close;
  finally
    Query2.Unprepare;
    Query2.Close;
  end;
end;

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 01-12-2015
tarco35 tarco35 is offline
Miembro
 
Registrado: sep 2003
Posts: 210
Poder: 21
tarco35 Va por buen camino
Gracias.... la idea era no tener que hacerlo por codigo... pero parece que no me que otra.

Repito, gracias por su ayuda.
Responder Con Cita
  #4  
Antiguo 01-12-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
Hola Daniel,

Es la primera vez que veo el metodo Unprepare, lo desconocia totalmente. Al parecer realiza la operacion contraria a Prepare, es decir, libera los recursos que se utilizarian si se realiza una llamada a Prepare

Es necesario el uso del mismo antes de cerrar los query?


Saludos
Responder Con Cita
  #5  
Antiguo 01-12-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Agustín.

Según la documentación de Delphi, si bién no es estríctamente necesario, es una práctica aconsejable. Dado que el método Prepare consume algunos recursos de la bd y el método UnPrepare los libera.

(Pero siendo sincero, nunca realizé pruebas para verificarlo)

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
Respuesta



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
Necesito poner el caracter ' en un campo de texto... jerry_mdq Varios 9 12-05-2011 16:08:19
Guardar Muchos Caracter En Un Campo Firebird ingabraham Varios 2 22-03-2010 16:25:52
leer caracter por caracter, una linea de un memo douglas OOP 1 05-10-2007 06:59:31
Ayudaaaa!!! Tabla ASCII: El carácter Ñ vs. carácter ¥ Berto2003 Varios 5 26-07-2005 15:37:48
Hacer locate en un campo que contiene el caracter ' RONPABLO Firebird e Interbase 4 08-03-2005 06:41:48


La franja horaria es GMT +2. Ahora son las 10:38:58.


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