¿como comprobar que la dirección de correo electrónico o e-mail ha sido digitado correctamente?
Si es real o no el e-mail, es imposible saberlo, pero por lo menos podemos descubrir si el usuario ha tecleado algo similar a una dirección de correo, si por lo menos tiene dentro el símbolo de la arroba ('@').
Declare @DirecionDeCorreo varchar(100)
SET @DirecionDeCorreo = 'test@xx.com'
If NOT (@DirecionDeCorreo LIKE '[^.@]%[^.@]@[^.@]%[^.@].[^.@]%[^.@]' OR @UserEmail LIKE '%@%@%')
Begin
Print ‘error’
End
Podemos adaptarlo, para colocarlo en una función o procedmiento almacenado.
Comprobar si un email es correcto
Etiquetas:
correo,
Sql server,
verificar
Technorati tags:
correo,
Sql server,
verificar
Blogalaxia tags:
correo,
Sql server,
verificar
PeruBlogs tags:
correo,
Sql server,
verificar
Script para eliminar registros o filas duplicadas
Generalmente, cuando importamos datos a una tabla podemos llegar a tener algunos registros duplicados. El problema es como deshacernos de ellos, sin revisar uno por uno los registros o filas, que en algunos casos pueden pasar de las decenas de miles.
Con el siguiente script puede ser más sencillo (hay que adaptarlo segun la tabla):
/*******************************************************************/
/* Script para eliminar registros duplicados de tabla Empleados */
Declare @id int,
@name varchar (50),
@cnt int,
@salary numeric
Declare getallrecords cursor local static For
Select count (1), id, name, salary
from employee (nolock)
group by id, name,salary having count(1)>1
Open getallrecords
Fetch next from getallrecords into @cnt,@id,@name,@salary
--cursor para chequear los otros registros
While @@fetch_status=0
Begin
Set @cnt= @cnt-1
Set rowcount @cnt
-- eliminar los registros duplicados. Observa que todos los campos son mencionados -- en la condicion
Delete from employee where id=@id and name=@name
and salary=@salary
Set rowcount 0
Fetch next from getallrecords into @cnt,@id,@name,@salary
End
Close getallrecords
Deallocate getallrecords
*******************************************************************
Antes que todo hay que realizar una copia de seguridad, para darnos cuenta como trabaja el script. Lo recomiendo, y antes de ejecutarlo contra datos importantes, pruebalo con una tabla de prueba, no me responsabilizo por pérdida de datos importantes.
Etiquetas:
filas repetidas,
registros repetidos,
Sql server
Technorati tags:
filas repetidas,
registros repetidos,
Sql server
Blogalaxia tags:
filas repetidas,
registros repetidos,
Sql server
PeruBlogs tags:
filas repetidas,
registros repetidos,
Sql server
Limpiar conexiones no utilizadas (Script)
Este script ActiveX corre en el diseñador de DTS y limpiará las conexiones no utilizadas.
Esto permite renombrar las conexión, seleccionando Nueva Conexión y tipeando un nuevo nombre.
También permite copiar y pegar conexiones para renombrarlas.
Luego puedes limpiar las conexiones abandonadas cuando el desarrollo este completo.
'********************************************************************** '* Script ActiveX '********************************************************************** '* Limpiar conexiones no utilizadas '********************************************************************** '* ---------------------------------------- '* Descripcion: '* Este script realiza un ciclo a traves de cada conexion en un paquete y la libera '* si no esta siendo utilizada. '* ---------------------------------------- '* Uso: '* 1. Agregar una tarea a un paquete DTS. '* 2. Deshabilita esta tarea propiedades del flujo de trabajo, de modo que no se '* ejecute con el paquete. '* 3. Copia este script en la tarea ActiveX. '* 5. Realiza una copia de seguridad del paquete. (No olvidar este paso) '* 6. Guarda el paquete. (No olvidar este paso) '* 7. Ejecutar el script ActiveX en el diseñador DTS, guardar, y cerrar el paquete. '*------------------------------------------------------------------------------------- '* Nota: '* - Este script no debe ser ejecutado sin supervisión. '* - No editar el script en Propiedades del Tarea ActiveX. '* - Editar como un archivo .vbs en, y depura scripts el el Microsoft Script Editor. '------------------------------------------------------------------------------------- Function Main() On Error Resume Next Stop Dim loPackage Dim loConnections Dim loConnection Dim loTasks Dim loTask Dim loProperties Dim loProperty Dim lbConnectionUsed Set loPackage = DTSGlobalVariables.Parent Set loConnections = loPackage.Connections Set loTasks = loPackage.Tasks ' Reiniciar despues de cambiar de coleccion Do ' Loop Through Connections For Each loConnection In loConnections lbConnectionUsed = False ' Loop Through Tasks For Each loTask in loTasks Set loProperties = loTask.Properties ' Loop Through Properties For Each loProperty in loProperties If Instr(loProperty.Name, "ConnectionID") Then If loProperty = loConnection.ID Then lbConnectionUsed = True Exit For End If End If Next If lbConnectionUsed = True Then Exit For End If Next If lbConnectionUsed = False Then loConnections.Remove loConnection.Name Exit For End if Next If lbConnectionUsed = True Then Exit Do End If Loop Set loPackage = Nothing Set loConnections = Nothing Set loConnection = Nothing Set loTasks = Nothing Set loTask = Nothing Main = DTSTaskExecResult_Success End Function |
Etiquetas:
activex,
dts,
script,
Sql server
Technorati tags:
activex,
dts,
script,
Sql server
Blogalaxia tags:
activex,
dts,
script,
Sql server
PeruBlogs tags:
activex,
dts,
script,
Sql server
Los mas leídos en este blog
- Visual Basic y Sql Server con Ado Data Control
- Sentencia Where con condicionales
- Diferencia entre Truncate y Delete
- Como hacer una consulta por fecha en Sql Server
- Programar para Pocket PC 2003: Como probar una aplicación que desarrollemos
- Backups con WinRar de Bases de Datos
- Usar teclas de función
- Auditando Tablas y Bases de Datos en Sql Server