Borrar Campos de Tipo Text

10/08/2005 - 16:57 por Edgar Oneider Gil | Informe spam
Hola a todos.
Tengo un problema Borrando campos de tipo Image que guardan informacion de
imagenes.
Tengo 4 campos de imagen, cree 4 campos adicionales de imagen, porque de
cada registro se debe hacer un cambio a las imagenes, y se decidio primero
colocar la imagen alterada en un campo adicional.
Eso duplico el tamaño de la base de datos, es logico, porque de cada imagen
hay dos copias. Luego se cambio la aplicacion para que utilizara los nuevos 4
campos.
Decidimos hacer un ALTER TABLE para borrar los campos viejos de imagen, y se
borran inmediatamente, sin embargo el tamaño de la base de datos no reduce en
absoluto, ese es el problema.
Cual es la forma correcta para restuarar la base de datos a un tamaño real,
despues de borrar campos de ese tipo?

Oneider
oneider@msn.com

Preguntas similare

Leer las respuestas

#11 Alejandro Mesa
10/08/2005 - 18:04 | Informe spam
Ahora ejecuta "DBCC UPDATEUSAGE".


AMB

"Edgar Oneider Gil" wrote:

Hola Alejandro,

Gracias, ya lo ejecute, pero sabes, nada, la base de datos sigue exactamente
igual.


"Alejandro Mesa" wrote:

> Chequea el comando "dbcc cleantable" en los libros en linea.
>
>
> AMB
>
> "Edgar Oneider Gil" wrote:
>
> > ShrinkDatabase es una instruccion que reduce el espacio libre que hay en los
> > archivos de base de datos, no necesito reducir el espacio libre, sino
> > recuperar espacio que la base de datos esta usando para los datos, despues de
> > haber borrado campos de tipo imagen con mucha informacion.
> >
> >
> >
> > "Maxi" wrote:
> >
> > > Hola, vos leiste bien mi mensaje anterior? has hecho un shink a la base de
> > > datos? o sea, has usando
> > >
> > > DBCC SHINKDATABASE
> > >
> > >
> > > Salu2
> > > Maxi
> > >
> > >
> > > "Edgar Oneider Gil" escribió en
> > > el mensaje news:
> > > > Hola, gracias por la apreciacion.
> > > > Pero no soluciona mi problema.
> > > >
> > > > Cuando la base de datos estaba sin los campos ocupaba 15GB de datos y 20GB
> > > > en total.
> > > > Al duplicar los campos de imagen, la base de datos alcanzan unos 30GB, y
> > > > se
> > > > amplio a 40GB en total.
> > > > Luego de borrar los campos se piensa que el espacio que ocupan los datos
> > > > deberia regresar a 15GB en promedio, pero no sucede, el tamaño de la base
> > > > de
> > > > datos sin los campos conserva los 30GB de datos. Que hacer en este caso.
> > > >
> > > >
> > > > "Maxi" wrote:
> > > >
> > > >> Hola, para que sql retorne el espacio al SO debes hacer un Shink a la
> > > >> base
> > > >> de datos
> > > >>
> > > >>
> > > >> Salu2
> > > >> Maxi
> > > >>
> > > >>
> > > >> "Edgar Oneider Gil" <Edgar Oneider
> > > >> escribió
> > > >> en el mensaje news:
> > > >> > Hola a todos.
> > > >> > Tengo un problema Borrando campos de tipo Image que guardan informacion
> > > >> > de
> > > >> > imagenes.
> > > >> > Tengo 4 campos de imagen, cree 4 campos adicionales de imagen, porque
> > > >> > de
> > > >> > cada registro se debe hacer un cambio a las imagenes, y se decidio
> > > >> > primero
> > > >> > colocar la imagen alterada en un campo adicional.
> > > >> > Eso duplico el tamaño de la base de datos, es logico, porque de cada
> > > >> > imagen
> > > >> > hay dos copias. Luego se cambio la aplicacion para que utilizara los
> > > >> > nuevos 4
> > > >> > campos.
> > > >> > Decidimos hacer un ALTER TABLE para borrar los campos viejos de imagen,
> > > >> > y
> > > >> > se
> > > >> > borran inmediatamente, sin embargo el tamaño de la base de datos no
> > > >> > reduce
> > > >> > en
> > > >> > absoluto, ese es el problema.
> > > >> > Cual es la forma correcta para restuarar la base de datos a un tamaño
> > > >> > real,
> > > >> > despues de borrar campos de ese tipo?
> > > >> >
> > > >> > Oneider
> > > >> >
> > > >>
> > > >>
> > > >>
> > >
> > >
> > >
Respuesta Responder a este mensaje
#12 Edgar Oneider Gil
10/08/2005 - 18:06 | Informe spam
Gracias,
pues la verdad si lo hice, pero no es el problema.
lo que necesito es recuperar espacio libre en la base de datos.
tengo una base de datos con un archivo de datos de 2GB Tamaño Fisico.
Tiene una Tabla con 4 Campos imagen, el espacio usado dentro del archivo
fisico es de 1GB. Luego adiciono 4 campos de imagen adicionales en la tabla.
y lleno esos campos con imagenes iguales (cambios breves) a los otros campos.
el espacio usado de la base de datos aumenta a 1.9GB.
como ya no necesito los otros 4 campos de imagen los elimino de la tabla.
al hacerlo se espera que el espacio usado regrese a 1GB, pero el archivo
fisico, igual se debe quedar de 2GB, no requiero entregar al S.O espacio.
Esto no sucede, despues de borrar los campos el espacio usado queda igual
1.9GB, el espacio se ha perdido.


"Maxi" wrote:

Hola, pues debes usar Shink!! la cosa es asi: el motor no le da al SO de
forma automatica el espacio, si la base ocupa 10GB y borras todos los
registros no se achica sola, debes usar ShinkDatabase y achicarla vos!! esto
lo hiciste?


Salu2
Maxi


"Edgar Oneider Gil" escribió en
el mensaje news:
> ShrinkDatabase es una instruccion que reduce el espacio libre que hay en
> los
> archivos de base de datos, no necesito reducir el espacio libre, sino
> recuperar espacio que la base de datos esta usando para los datos, despues
> de
> haber borrado campos de tipo imagen con mucha informacion.
>
>
>
> "Maxi" wrote:
>
>> Hola, vos leiste bien mi mensaje anterior? has hecho un shink a la base
>> de
>> datos? o sea, has usando
>>
>> DBCC SHINKDATABASE
>>
>>
>> Salu2
>> Maxi
>>
>>
>> "Edgar Oneider Gil" escribió
>> en
>> el mensaje news:
>> > Hola, gracias por la apreciacion.
>> > Pero no soluciona mi problema.
>> >
>> > Cuando la base de datos estaba sin los campos ocupaba 15GB de datos y
>> > 20GB
>> > en total.
>> > Al duplicar los campos de imagen, la base de datos alcanzan unos 30GB,
>> > y
>> > se
>> > amplio a 40GB en total.
>> > Luego de borrar los campos se piensa que el espacio que ocupan los
>> > datos
>> > deberia regresar a 15GB en promedio, pero no sucede, el tamaño de la
>> > base
>> > de
>> > datos sin los campos conserva los 30GB de datos. Que hacer en este
>> > caso.
>> >
>> >
>> > "Maxi" wrote:
>> >
>> >> Hola, para que sql retorne el espacio al SO debes hacer un Shink a la
>> >> base
>> >> de datos
>> >>
>> >>
>> >> Salu2
>> >> Maxi
>> >>
>> >>
>> >> "Edgar Oneider Gil" <Edgar Oneider
>> >> escribió
>> >> en el mensaje
>> >> news:
>> >> > Hola a todos.
>> >> > Tengo un problema Borrando campos de tipo Image que guardan
>> >> > informacion
>> >> > de
>> >> > imagenes.
>> >> > Tengo 4 campos de imagen, cree 4 campos adicionales de imagen,
>> >> > porque
>> >> > de
>> >> > cada registro se debe hacer un cambio a las imagenes, y se decidio
>> >> > primero
>> >> > colocar la imagen alterada en un campo adicional.
>> >> > Eso duplico el tamaño de la base de datos, es logico, porque de cada
>> >> > imagen
>> >> > hay dos copias. Luego se cambio la aplicacion para que utilizara los
>> >> > nuevos 4
>> >> > campos.
>> >> > Decidimos hacer un ALTER TABLE para borrar los campos viejos de
>> >> > imagen,
>> >> > y
>> >> > se
>> >> > borran inmediatamente, sin embargo el tamaño de la base de datos no
>> >> > reduce
>> >> > en
>> >> > absoluto, ese es el problema.
>> >> > Cual es la forma correcta para restuarar la base de datos a un
>> >> > tamaño
>> >> > real,
>> >> > despues de borrar campos de ese tipo?
>> >> >
>> >> > Oneider
>> >> >
>> >>
>> >>
>> >>
>>
>>
>>



Respuesta Responder a este mensaje
#13 Edgar Oneider Gil
10/08/2005 - 18:15 | Informe spam
Ya lo habia hecho y tampoco.
Ahora estoy recreando la tabla sin los campos y voy a copiarle los registros
para ver el resultado,
pero no creo que sea una buena solucion, porque son millones de registros
y cuando acaban ya habran pasado varias horas, y es un sistema que no puede
detenerse por mucho tiempo.

"Alejandro Mesa" wrote:

Ahora ejecuta "DBCC UPDATEUSAGE".


AMB

"Edgar Oneider Gil" wrote:

> Hola Alejandro,
>
> Gracias, ya lo ejecute, pero sabes, nada, la base de datos sigue exactamente
> igual.
>
>
> "Alejandro Mesa" wrote:
>
> > Chequea el comando "dbcc cleantable" en los libros en linea.
> >
> >
> > AMB
> >
> > "Edgar Oneider Gil" wrote:
> >
> > > ShrinkDatabase es una instruccion que reduce el espacio libre que hay en los
> > > archivos de base de datos, no necesito reducir el espacio libre, sino
> > > recuperar espacio que la base de datos esta usando para los datos, despues de
> > > haber borrado campos de tipo imagen con mucha informacion.
> > >
> > >
> > >
> > > "Maxi" wrote:
> > >
> > > > Hola, vos leiste bien mi mensaje anterior? has hecho un shink a la base de
> > > > datos? o sea, has usando
> > > >
> > > > DBCC SHINKDATABASE
> > > >
> > > >
> > > > Salu2
> > > > Maxi
> > > >
> > > >
> > > > "Edgar Oneider Gil" escribió en
> > > > el mensaje news:
> > > > > Hola, gracias por la apreciacion.
> > > > > Pero no soluciona mi problema.
> > > > >
> > > > > Cuando la base de datos estaba sin los campos ocupaba 15GB de datos y 20GB
> > > > > en total.
> > > > > Al duplicar los campos de imagen, la base de datos alcanzan unos 30GB, y
> > > > > se
> > > > > amplio a 40GB en total.
> > > > > Luego de borrar los campos se piensa que el espacio que ocupan los datos
> > > > > deberia regresar a 15GB en promedio, pero no sucede, el tamaño de la base
> > > > > de
> > > > > datos sin los campos conserva los 30GB de datos. Que hacer en este caso.
> > > > >
> > > > >
> > > > > "Maxi" wrote:
> > > > >
> > > > >> Hola, para que sql retorne el espacio al SO debes hacer un Shink a la
> > > > >> base
> > > > >> de datos
> > > > >>
> > > > >>
> > > > >> Salu2
> > > > >> Maxi
> > > > >>
> > > > >>
> > > > >> "Edgar Oneider Gil" <Edgar Oneider
> > > > >> escribió
> > > > >> en el mensaje news:
> > > > >> > Hola a todos.
> > > > >> > Tengo un problema Borrando campos de tipo Image que guardan informacion
> > > > >> > de
> > > > >> > imagenes.
> > > > >> > Tengo 4 campos de imagen, cree 4 campos adicionales de imagen, porque
> > > > >> > de
> > > > >> > cada registro se debe hacer un cambio a las imagenes, y se decidio
> > > > >> > primero
> > > > >> > colocar la imagen alterada en un campo adicional.
> > > > >> > Eso duplico el tamaño de la base de datos, es logico, porque de cada
> > > > >> > imagen
> > > > >> > hay dos copias. Luego se cambio la aplicacion para que utilizara los
> > > > >> > nuevos 4
> > > > >> > campos.
> > > > >> > Decidimos hacer un ALTER TABLE para borrar los campos viejos de imagen,
> > > > >> > y
> > > > >> > se
> > > > >> > borran inmediatamente, sin embargo el tamaño de la base de datos no
> > > > >> > reduce
> > > > >> > en
> > > > >> > absoluto, ese es el problema.
> > > > >> > Cual es la forma correcta para restuarar la base de datos a un tamaño
> > > > >> > real,
> > > > >> > despues de borrar campos de ese tipo?
> > > > >> >
> > > > >> > Oneider
> > > > >> >
> > > > >>
> > > > >>
> > > > >>
> > > >
> > > >
> > > >
Respuesta Responder a este mensaje
#14 Alejandro Mesa
10/08/2005 - 18:27 | Informe spam
Edgar,

Me rindo, en este punto ya no se que mas podrias hacer.


AMB

"Edgar Oneider Gil" wrote:

Ya lo habia hecho y tampoco.
Ahora estoy recreando la tabla sin los campos y voy a copiarle los registros
para ver el resultado,
pero no creo que sea una buena solucion, porque son millones de registros
y cuando acaban ya habran pasado varias horas, y es un sistema que no puede
detenerse por mucho tiempo.

"Alejandro Mesa" wrote:

> Ahora ejecuta "DBCC UPDATEUSAGE".
>
>
> AMB
>
> "Edgar Oneider Gil" wrote:
>
> > Hola Alejandro,
> >
> > Gracias, ya lo ejecute, pero sabes, nada, la base de datos sigue exactamente
> > igual.
> >
> >
> > "Alejandro Mesa" wrote:
> >
> > > Chequea el comando "dbcc cleantable" en los libros en linea.
> > >
> > >
> > > AMB
> > >
> > > "Edgar Oneider Gil" wrote:
> > >
> > > > ShrinkDatabase es una instruccion que reduce el espacio libre que hay en los
> > > > archivos de base de datos, no necesito reducir el espacio libre, sino
> > > > recuperar espacio que la base de datos esta usando para los datos, despues de
> > > > haber borrado campos de tipo imagen con mucha informacion.
> > > >
> > > >
> > > >
> > > > "Maxi" wrote:
> > > >
> > > > > Hola, vos leiste bien mi mensaje anterior? has hecho un shink a la base de
> > > > > datos? o sea, has usando
> > > > >
> > > > > DBCC SHINKDATABASE
> > > > >
> > > > >
> > > > > Salu2
> > > > > Maxi
> > > > >
> > > > >
> > > > > "Edgar Oneider Gil" escribió en
> > > > > el mensaje news:
> > > > > > Hola, gracias por la apreciacion.
> > > > > > Pero no soluciona mi problema.
> > > > > >
> > > > > > Cuando la base de datos estaba sin los campos ocupaba 15GB de datos y 20GB
> > > > > > en total.
> > > > > > Al duplicar los campos de imagen, la base de datos alcanzan unos 30GB, y
> > > > > > se
> > > > > > amplio a 40GB en total.
> > > > > > Luego de borrar los campos se piensa que el espacio que ocupan los datos
> > > > > > deberia regresar a 15GB en promedio, pero no sucede, el tamaño de la base
> > > > > > de
> > > > > > datos sin los campos conserva los 30GB de datos. Que hacer en este caso.
> > > > > >
> > > > > >
> > > > > > "Maxi" wrote:
> > > > > >
> > > > > >> Hola, para que sql retorne el espacio al SO debes hacer un Shink a la
> > > > > >> base
> > > > > >> de datos
> > > > > >>
> > > > > >>
> > > > > >> Salu2
> > > > > >> Maxi
> > > > > >>
> > > > > >>
> > > > > >> "Edgar Oneider Gil" <Edgar Oneider
> > > > > >> escribió
> > > > > >> en el mensaje news:
> > > > > >> > Hola a todos.
> > > > > >> > Tengo un problema Borrando campos de tipo Image que guardan informacion
> > > > > >> > de
> > > > > >> > imagenes.
> > > > > >> > Tengo 4 campos de imagen, cree 4 campos adicionales de imagen, porque
> > > > > >> > de
> > > > > >> > cada registro se debe hacer un cambio a las imagenes, y se decidio
> > > > > >> > primero
> > > > > >> > colocar la imagen alterada en un campo adicional.
> > > > > >> > Eso duplico el tamaño de la base de datos, es logico, porque de cada
> > > > > >> > imagen
> > > > > >> > hay dos copias. Luego se cambio la aplicacion para que utilizara los
> > > > > >> > nuevos 4
> > > > > >> > campos.
> > > > > >> > Decidimos hacer un ALTER TABLE para borrar los campos viejos de imagen,
> > > > > >> > y
> > > > > >> > se
> > > > > >> > borran inmediatamente, sin embargo el tamaño de la base de datos no
> > > > > >> > reduce
> > > > > >> > en
> > > > > >> > absoluto, ese es el problema.
> > > > > >> > Cual es la forma correcta para restuarar la base de datos a un tamaño
> > > > > >> > real,
> > > > > >> > despues de borrar campos de ese tipo?
> > > > > >> >
> > > > > >> > Oneider
> > > > > >> >
> > > > > >>
> > > > > >>
> > > > > >>
> > > > >
> > > > >
> > > > >
Respuesta Responder a este mensaje
#15 Edgar Oneider Gil
10/08/2005 - 18:45 | Informe spam
Hola a todos,

Gracias por su colaboracion.
Es algo muy dificil este problema.

Bueno, sin embargo lo que realice fue lo siguiente.
Cree una nueva tabla solo con los campos que necesitaba,
haciendo algunos cambios, no incluyendo los campos a eliminar,
y cambiando el tipo de los campos imagen a text, algo que puedo hacer
porque el sistema almacena en esos campos datos encryptados tipo text.

copie todos los datos de la tabla1 a la tabla2.
borre la tabla1, y renombre la tabla 2.
El espacio se recupero.

El problema es que es un proceso super demorado, pero voy a planear como
hacerlo.

En conclusion de lo que he investigado, SQL Server 2000 tiene problemas con
los campos de tipo image, no se recomiendan, hasta la version 2005 de SQL
Server donde estos campos se rediseñaron y optimizaron.

Hasta Pronto

"Edgar Oneider Gil" wrote:

Hola a todos.
Tengo un problema Borrando campos de tipo Image que guardan informacion de
imagenes.
Tengo 4 campos de imagen, cree 4 campos adicionales de imagen, porque de
cada registro se debe hacer un cambio a las imagenes, y se decidio primero
colocar la imagen alterada en un campo adicional.
Eso duplico el tamaño de la base de datos, es logico, porque de cada imagen
hay dos copias. Luego se cambio la aplicacion para que utilizara los nuevos 4
campos.
Decidimos hacer un ALTER TABLE para borrar los campos viejos de imagen, y se
borran inmediatamente, sin embargo el tamaño de la base de datos no reduce en
absoluto, ese es el problema.
Cual es la forma correcta para restuarar la base de datos a un tamaño real,
despues de borrar campos de ese tipo?

Oneider

Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida