Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Truncar contenido de un campo (https://www.clubdelphi.com/foros/showthread.php?t=64338)

el-mono 27-03-2009 14:42:14

Truncar contenido de un campo
 
Hola gente como les va.

Lo que necesito hacer es:

En un campo de mi tabla (con 6000 registros) que se llama Desc_corta (char 45 ) debo convertirlo en (char 30) y truncar su contenido a este tamaño pero no se como hacerlo.

Si me pueden ayudar gracias.

ContraVeneno 27-03-2009 16:09:41

En SQL Server solo bastaría con cambiar el campo y los datos se truncan solos....

Código SQL [-]
Alter Table TuTabla
Alter Column TuCampo char(30)

el-mono 28-03-2009 00:11:47

Truncar Campo
 
Hola y gracias por responder.
Hice lo que decis primero que nada pero me tira un error de desbordamiento de campo asi que no se puede como decis.

ContraVeneno 28-03-2009 16:27:06

¿estas utilizando SQL Server? , ¿que versión?

Cheerpipe 31-03-2009 00:18:18

tambien puedes usar

Código SQL [-]
update 
  nombre_tabla
set
  Desc_corta = SUBSTR(Desc_corta,1,30) -- SUBSTR es funciona igual que midstr de delphi, el primer parametro es la cadena, el segundo el caracter de inicio y el siguiente la cantidad de caracteres a tomar.

Si usas SQL Server la funcion es:
Código:

SUBSTRING ( value_expression ,start_expression , length_expression )
La funcion SUBSTR es una funcion estandar ANSI, por lo que peude existir o no en el motor de base de datos que estes usando. Lo que si es seguro, es que todos los motores actuales tienen una funcion equivalente. Ahora, esto no te asegura que puedas realizar la modificacion del campo, ya que muchos motores no permiten la reduccion del mismo para no perder datos, incluso si ya has manejado la longitud que es lo que quieres hacer en este caso.

el-mono 31-03-2009 23:23:18

Truncar Campos
 
Cha gracias a todos, ya lo solucione usando la misma funcion que indican
SubString().

nuevamente gracias


La franja horaria es GMT +2. Ahora son las 14:56:16.

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