Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Cual es la diferencia entre estos comandos de SQL Server 2005

Estas en el tema de Cual es la diferencia entre estos comandos de SQL Server 2005 en el foro de SQL Server en Foros del Web. hola tengo una duda se que estos comandos los dos sirven para lo mismo pero cual es la diferencia osea, cual correo mas rapido o ...
  #1 (permalink)  
Antiguo 28/12/2010, 22:06
Avatar de Noa_  
Fecha de Ingreso: diciembre-2010
Ubicación: El Oceano de Sus Ojos ..☺
Mensajes: 132
Antigüedad: 10 años, 5 meses
Puntos: 0
Cual es la diferencia entre estos comandos de SQL Server 2005

hola tengo una duda
se que estos comandos los dos sirven para lo mismo
pero cual es la diferencia osea, cual correo mas rapido o cual es mejor??

estos son los comandos

Cita:
TRUNCATE TABLE tblPrueba
Cita:
DELETE TABLE tblPrueba

Gracias por sus Respuestas
  #2 (permalink)  
Antiguo 29/12/2010, 06:43
 
Fecha de Ingreso: octubre-2010
Mensajes: 83
Antigüedad: 10 años, 6 meses
Puntos: 4
Respuesta: Cual es la diferencia entre estos comandos de SQL Server 2005

Quien te ha dicho que sirven para lo mismo!

Un caso ejemplo para que entiendas una de las diferencias.

Tienes una tabla personas con un id que se incrementa automaticamente.
Insertaste 300 registros el valor del id del primero es 1 y el del ultimo es 300.

A partir de ahora dos escenarios:

* Si usas DELETE e insertas 100 registros:
Despues de ejecutado, el id del primer insertado es 301 y el del ultimo es 400.
* Si usas TRUNCATE e insertas 100 registros:
Despues de ejecutado, el id del primer insertado es 1 y el del ultimo es 100.
Te recomiendo que leas la documentacion de TRUNCATE [1] para que aprendas las verdaderas diferencias y saber cuando no puedes usar esa sentencia.

[1] http://msdn.microsoft.com/es-es/library/ms177570.aspx
  #3 (permalink)  
Antiguo 29/12/2010, 07:48
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 15 años, 9 meses
Puntos: 39
Respuesta: Cual es la diferencia entre estos comandos de SQL Server 2005

Tu ejemplo es correcto snahor_, pero creo que Noa_ se refiere a vaciar una tabla por completo.
En ese caso, es correcto lo que él dice, ambos comandos hacen lo mismo, con la diferencia que DELETE crea registros en en log.
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #4 (permalink)  
Antiguo 29/12/2010, 10:07
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 13 años, 10 meses
Puntos: 180
Respuesta: Cual es la diferencia entre estos comandos de SQL Server 2005

Bueno, el ejemplo de snahor_, se refiere especificamente al comportamiento de los campos IDENTITY, para la ejecucion del TRUNCATE.
__________________
MCTS Isaias Islas
  #5 (permalink)  
Antiguo 29/12/2010, 15:05
Avatar de Noa_  
Fecha de Ingreso: diciembre-2010
Ubicación: El Oceano de Sus Ojos ..☺
Mensajes: 132
Antigüedad: 10 años, 5 meses
Puntos: 0
Respuesta: Cual es la diferencia entre estos comandos de SQL Server 2005

Si tienes Razon flaviovich eso e slo que pretendo hacer vaciar una tabla
pero lo que comenta snahor_ tambien es bueno
Gracias por sus respuestas

Etiquetas: comandos, diferencia, server, sql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 3 personas




La zona horaria es GMT -6. Ahora son las 09:54.