Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Error al Tratar de Almacenar Cadena con Acepto (https://www.clubdelphi.com/foros/showthread.php?t=35989)

inferno 28-09-2006 04:27:42

Error al Tratar de Almacenar Cadena con Acepto
 
Hola para todos los que me puedan ayudar tengo una plicación en delphi 7.0 conectado con una base de datos firebird 1.5, tengo una tabla llamada tblpersona con campos idpersona,nombre,apellido,direccion,email todas con varchar el problema es el siguiente cuando trato de ingresar un registro con apellidos o nombres con acepto, el programa cae en error y no hace la inserción Ejemplo de la inserción: nombre:julio;apellido:rodríguez

Cuando realizo la inserción sin los acepto si la realiza; es decir lo hace bien y no tengo ni idea de que pueda ser

Luis F. Orjuela 28-09-2006 16:11:16

Para trabajar con acentos y ñ´s en Cambos VARCHAR
 
Tanto en base de datos Interbase como en Firebird, se deben declarar los campos VARCHAR y definir el juego de caracteres que se va a utilizar para que esto funcione

A continuación pego un ejemplo de creación de una tabla que acepta estos caractéres en el campo nombre:

CREATE TABLE CONCURSANTES (
NOMBRE VARCHAR (45) CHARACTER SET ISO8859_1 NOT NULL COLLATE ISO8859_1);

Fíjate en lo que está en color azúl...

Esto está probado y contra probado que SI FUNCIONA...:)

inferno 28-09-2006 20:48:54

Sigue el mismo Error datos con Acento
 
realize todo los cabios que escribistes con respecto a la tabla y tambien modifique la base de datos en el charset con iso8859_1, cuando realizo la inserción directamente en la base de datos si acepta acentos, pero cuando relizo la inserción con delphi no la realiza, estoy haciendo la inserción desde delphi con este código que esta acontinuación: un procedimiento almacenado el firebird 1.5

Código Delphi [-]
try
if (Procedimiento<>nil)then
begin
Procedimiento.Database.DefaultTransaction.StartTransaction;
Procedimiento.Close;
Procedimiento.StoredProcName:='procagregarcliente';
Procedimiento.Prepare;
Procedimiento.ParamByName('iidcliente').AsString:=EditCedula.Text;
Procedimiento.ParamByName('inombre').AsString:=EditNombreC.Text;
Procedimiento.ParamByName('iapellido').AsString:=EditApellidoC.Text;
Procedimiento.ParamByName('idireccion').AsString:=EditDireccion.Text;
Procedimiento.ParamByName('iemail').AsString:=EditEmail.Text;
Procedimiento.ExecProc;
Procedimiento.Close;
Procedimiento.Database.DefaultTransaction.Commit;
end;
except
Procedimiento.Database.DefaultTransaction.Rollback;
end;

gmontes 04-10-2006 17:17:40

ve a www.ibexpert.com descarga la version personal y con este programa ve tu base de datos y cambia el charset y el font character charset.

yo tengo win1252 en charset y ansi_charset y no tengo problemas con los caracteres :)


y en mi programa, la conexion a mi db tengo la propiedad codepage=win1254


La franja horaria es GMT +2. Ahora son las 13:01:47.

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