SQL Server - SQL Server Profiler OMG Help

   
Vista:

SQL Server Profiler OMG Help

Publicado por Dariel Alvarez (23 intervenciones) el 21/07/2015 00:44:27
Hola amigo quizas me puedas ayudar, quiero utilizar el SQL Profiler para poder auditar unos eventos inesperados, y no aparece en mi sql server 2012, no hay forma de encontrarlo, me parece que es Sql Server 2012 express, quiero encontrar algun similar y nada, la cosa esta en que en el software que hice cuando mando a hacer una busqueda por fecha, la cosa esta en que el metodo esta bien, pk lo pruebo desde mi pc y busca bien todo me da los resultados perfectos, pero la misma instalacion desde otra pc no me da ningun resultado nunca, entonces necesito chequear si es que me esta mandando mal los datos en la busqueda o si es problema de formato de fecha de la pc, bueno gracias por todo saludos
Dariel Alvarez
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias

SQL Server Profiler OMG Help

Publicado por Isaias (3182 intervenciones) el 21/07/2015 17:40:13
¿Quieres evitarte problemas con las fechas?, maneja siempre las fechas con formato ANSI


WHERE mycolfecha >= '20150701' and mycolfecha <= '20150721'


YYYYMMDD
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

SQL Server Profiler OMG Help

Publicado por Dariel darieldap@gmail.com (23 intervenciones) el 21/07/2015 18:11:41
Gracias por el consejo, pero la cosa esta en que no es un procedimiento solo para la fecha sino que es una mescla aca esta ...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
USE [db_Notarie]
GO
/****** Object:  StoredProcedure [dbo].[BuscarClientesXCategoria]    Script Date: 21-07-15 12:10:24 PM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[BuscarClientesXCategoria]
(
	@Nombre_Cliente varchar(50),
	@OtroNombre_Cliente varchar(50),
	@Apellidos_Cliente varchar(50),
	@NoApartamento_Cliente varchar(50),
	@NumCompleOCasa_Cliente varchar(50),
	@Rue_Cliente varchar(50),
	@Quartier_Cliente varchar(50),
	@Ville_Cliente varchar(50),
	@Departament_Cliente varchar(50),
	@Pays_Cliente varchar(50),
	@CodePostal_Cliente varchar(50),
 
 
 
	@NIF_Cliente_Iden varchar(50),
	@CIN_Cliente_Iden varchar(50),
	@NoSegSocial_Iden varchar(50),
	@NoPasaporte_Iden varchar(50),
	@Email_Iden varchar(50),
	@Nacionalidad_Iden varchar(50),
	@PaysResidencia_Iden varchar(50),
	@EstadoCivil_Iden varchar(50),
	@SectorProfesional_Iden varchar(50),
	@LugarNacimiento varchar(50),
	@FechaNacimiento_Iden varchar(MAX),
	@NombrePareja varchar(MAX),
	@Sexo_Iden varchar(50),
	@TelefonoCelular_Iden varchar(50),
	@TelefonoPrivado_Iden varchar(50),
	@NombHijos varchar(MAX),
	@PosicionOcupa_SP varchar(50),
	@Empleador_SP varchar(50),
	@NomComplex_SP varchar(50),
	@NumComOMaesonRue_SP varchar(50),
	@Quartier_SP varchar(50),
	@Ville_SP varchar(50),
	@Pays_SP varchar(50),
	@CodigoPostal_SP varchar(50),
	@Email_SP varchar(50),
	@Telefono_SP varchar(50),
	@Profesion_SP varchar(50),
 
	@TipoCliente varchar(50)
 
)
AS
	SET NOCOUNT ON;
SELECT        tbl_Cliente.ID_Cliente, tbl_Cliente.Nombre_Cliente, tbl_Cliente.OtroNombre_Cliente, tbl_Cliente.Apellidos_Cliente, tbl_Cliente.NoApartamento_Cliente, tbl_Cliente.NomComplejo_Cliente,
                         tbl_Cliente.NumCompleOCasa_Cliente, tbl_Cliente.Rue_Cliente, tbl_Cliente.Quartier_Cliente, tbl_Cliente.Ville_Cliente, tbl_Cliente.Departament_Cliente, tbl_Cliente.Pays_Cliente, tbl_Cliente.CodePostal_Cliente,
                         tbl_SituacionProfeccionalCliente.PosicionOcupa_SP, tbl_SituacionProfeccionalCliente.Empleador_SP, tbl_SituacionProfeccionalCliente.NomComplex_SP,
                         tbl_SituacionProfeccionalCliente.NumComOMaesonRue_SP, tbl_SituacionProfeccionalCliente.Quartier_SP, tbl_SituacionProfeccionalCliente.Ville_SP, tbl_SituacionProfeccionalCliente.Pays_SP,
                         tbl_SituacionProfeccionalCliente.CodigoPostal_SP, tbl_SituacionProfeccionalCliente.Email_SP, tbl_SituacionProfeccionalCliente.Telefono_SP, tbl_SituacionProfeccionalCliente.Profesion, tbl_Identificacion.NIF_Cliente_Iden, tbl_Identificacion.CIN_Cliente_Iden, tbl_Identificacion.NoSegSocial_Iden,
                         tbl_Identificacion.NoPasaporte_Iden, tbl_Identificacion.Email_Iden, tbl_Identificacion.Nacionalidad_Iden, tbl_Identificacion.PaysResidencia_Iden, tbl_Identificacion.SectorProfesional_Iden,
                         tbl_Identificacion.FechaNacimiento_Iden, tbl_Identificacion.Sexo_Iden, tbl_Identificacion.LugarNacimiento, tbl_Identificacion.NomPareja, tbl_Identificacion.EstadoCivil_Iden,
                         tbl_Identificacion.FechaMatrimonio, tbl_Identificacion.CantHijos,tbl_Identificacion.NombreHijos, tbl_Identificacion.NoDependientes_Iden, tbl_Identificacion.TelefonoCelular_Iden, tbl_Identificacion.TelefonoPrivado_Iden , tbl_TipoCliente.TipoCliente
						 , tbl_PadresMadres.NombrePadre, tbl_PadresMadres.OtroNombrePadre, tbl_PadresMadres.ApellidoPadre, tbl_PadresMadres.NombreMadre,
                         tbl_PadresMadres.OtroNombreMadre, tbl_PadresMadres.ApellidoMadre
FROM            tbl_Cliente INNER JOIN
                         tbl_Identificacion ON tbl_Cliente.ID_Cliente = tbl_Identificacion.ID_Cliente INNER JOIN
                         tbl_PadresMadres ON tbl_Cliente.ID_Cliente = tbl_PadresMadres.ID_Cliente INNER JOIN
                         tbl_SituacionProfeccionalCliente ON tbl_Cliente.ID_Cliente = tbl_SituacionProfeccionalCliente.ID_Cliente
						  INNER JOIN tbl_TipoCliente ON tbl_Cliente.ID_TipoCliente_Cliente = tbl_TipoCliente.ID_Tipo_Cliente
 
 
WHERE
						 (tbl_Cliente.Nombre_Cliente LIKE '%' + @Nombre_Cliente + '%') OR
                         (tbl_Cliente.OtroNombre_Cliente LIKE '%' + @OtroNombre_Cliente + '%') OR
						 (tbl_Cliente.Apellidos_Cliente LIKE '%' + @Apellidos_Cliente + '%')OR
                         (tbl_Cliente.CodePostal_Cliente LIKE '%' + @CodePostal_Cliente + '%') OR
						 (tbl_Cliente.NoApartamento_Cliente LIKE '%' + @NoApartamento_Cliente + '%') OR
                         (tbl_Cliente.NumCompleOCasa_Cliente LIKE '%' + @NumCompleOCasa_Cliente + '%') OR
                         (tbl_Cliente.Rue_Cliente LIKE '%' + @Rue_Cliente + '%') OR
                         (tbl_Cliente.Quartier_Cliente LIKE '%' + @Quartier_Cliente + '%') OR
                         (tbl_Cliente.Ville_Cliente LIKE '%' + @Ville_Cliente + '%') OR
                         (tbl_Cliente.Departament_Cliente LIKE '%' + @Departament_Cliente + '%') OR
                         (tbl_Cliente.Pays_Cliente LIKE '%' + @Pays_Cliente + '%') OR
 
 
                         (tbl_SituacionProfeccionalCliente.PosicionOcupa_SP LIKE '%' + @PosicionOcupa_SP + '%') OR
                         (tbl_SituacionProfeccionalCliente.Empleador_SP LIKE '%' + @Empleador_SP + '%') OR
                         (tbl_SituacionProfeccionalCliente.NomComplex_SP LIKE '%' + @NomComplex_SP + '%') OR
                         (tbl_SituacionProfeccionalCliente.NumComOMaesonRue_SP LIKE '%' + @NumComOMaesonRue_SP + '%') OR
                         (tbl_SituacionProfeccionalCliente.Quartier_SP LIKE '%' + @Quartier_SP + '%') OR
                         (tbl_SituacionProfeccionalCliente.Ville_SP LIKE '%' + @Ville_SP + '%') OR
                         (tbl_SituacionProfeccionalCliente.Pays_SP LIKE '%' + @Pays_SP + '%') OR
                         (tbl_SituacionProfeccionalCliente.CodigoPostal_SP LIKE '%' + @CodigoPostal_SP + '%') OR
                         (tbl_SituacionProfeccionalCliente.Email_SP LIKE '%' + @Email_SP + '%') OR
                         (tbl_SituacionProfeccionalCliente.Telefono_SP LIKE '%' + @Telefono_SP + '%') OR
                         (tbl_SituacionProfeccionalCliente.Profesion LIKE '%' + @Profesion_SP + '%') OR
 
                         (tbl_Identificacion.NIF_Cliente_Iden LIKE '%' + @NIF_Cliente_Iden + '%') OR
                         (tbl_Identificacion.CIN_Cliente_Iden LIKE '%' + @CIN_Cliente_Iden + '%') OR
                         (tbl_Identificacion.NoSegSocial_Iden LIKE '%' + @NoSegSocial_Iden + '%') OR
                         (tbl_Identificacion.NoPasaporte_Iden LIKE '%' + @NoPasaporte_Iden + '%') OR
                         (tbl_Identificacion.Email_Iden LIKE '%' + @Email_Iden + '%') OR
                         (tbl_Identificacion.Nacionalidad_Iden LIKE '%' + @Nacionalidad_Iden + '%') OR
                         (tbl_Identificacion.PaysResidencia_Iden LIKE '%' + @PaysResidencia_Iden + '%') OR
                         (tbl_Identificacion.SectorProfesional_Iden LIKE '%' + @SectorProfesional_Iden + '%') OR
                         (tbl_Identificacion.FechaNacimiento_Iden  LIKE '%' + @FechaNacimiento_Iden + '%')  OR
                         (tbl_Identificacion.LugarNacimiento LIKE '%' + @LugarNacimiento + '%') OR
                         (tbl_Identificacion.NomPareja = @NombrePareja) OR
                         (tbl_Identificacion.EstadoCivil_Iden LIKE '%' + @EstadoCivil_Iden + '%') OR
                         (tbl_Identificacion.TelefonoCelular_Iden LIKE '%' + @TelefonoCelular_Iden + '%') OR
                         (tbl_Identificacion.TelefonoPrivado_Iden LIKE '%' + @TelefonoPrivado_Iden + '%') OR
 
						 (tbl_Identificacion.NombreHijos LIKE '%' + @NombHijos + '%') OR
						 (tbl_Identificacion.Sexo_Iden = @Sexo_Iden)OR
						 (tbl_TipoCliente.TipoCliente = @TipoCliente)
 
ORDER BY tbl_Cliente.ID_Cliente

Como ves son muchos datosque busco a la ves, y la fecha es solo uno de los criterios, deja ver como le hago para aplicar lo que me dices tengo que ver como me lo envia el c# para aca, gracias
saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

SQL Server Profiler OMG Help

Publicado por Jesubu (3 intervenciones) el 22/07/2015 08:22:32
Siento decirte que el procedimiento que has puesto, si lo hiciera así en la universidad o en cualquier otro lado sería de suspenso.

Te dejo un procedimiento, a modo orientativo, que puedes utilizar para realizar busquedas.

----------------------------------------------------------------------------------------------------------------------------------------------------------

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
CREATE PROCEDURE [dbo].[sp_TempProfile_SelectByFiltro]
	--LISTA DE VARIABLES QUE COMPONEN LA BUSQUEDA--
	@Usuario_FK int=0,
	@titulo nvarchar(150)=null,
	@FechaDesde datetime=null,
	@FechaHasta datetime=null
AS
 
BEGIN
	SET NOCOUNT ON
DECLARE @sql nvarchar(4000)
DECLARE @sqlCondicion nvarchar(2000)
 
select @sqlCondicion=' AND 1=1 '
 
IF @titulo  IS NOT NULL
	SELECT @sqlCondicion = @sqlCondicion + ' AND upper(titulo) LIKE upper(@titulo) '
IF @fechaDesde IS NOT NULL AND @fechaHasta is not null
  SELECT @sqlCondicion = @sqlCondicion + ' AND (FechaAlta between  @fechaDesde and  @fechaHasta ) '
else IF @fechaDesde IS NOT NULL AND @fechaHasta is null
  SELECT @sqlCondicion = @sqlCondicion + ' AND (FechaAlta >= @fechaDesde ) '
else IF @fechaDesde IS NULL AND @fechaHasta is NOT null
  SELECT @sqlCondicion = @sqlCondicion + ' AND (FechaAlta =<  @fechaHasta ) '
IF @Usuario_FK>0
	SELECT @sqlCondicion = @sqlCondicion + ' AND Usuario_FK=@Usuario_FK '
 
 
SELECT @sql = '
SET QUOTED_IDENTIFIER OFF
SET ANSI_NULLS OFF
BEGIN

SELECT *
	FROM 
		tempProfile 
	WHERE 1=1 '+@sqlCondicion+'
END

'
 
EXEC sp_executesql @sql,N'@titulo nvarchar(150),
@Usuario_FK int,@FechaDesde datetime,
@FechaHasta datetime',
@titulo,@Usuario_FK,
@FechaDesde,@FechaHasta
 
 
END

----------------------------------------------------------------------------------------------------------------------------------------------------------

Ten encuenta que es con lo que trabaja, también es importante, si es un dataset el que recoge la información, una lista de objetos o que....eso influye a la hora de hacer un procedimiento y retornar información.

un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

SQL Server Profiler OMG Help

Publicado por Dariel (23 intervenciones) el 22/07/2015 14:14:38
Buenas Jesu, primeramente gracias por tu respuesta, en cuanto a lo de SQL la verdad no soy muy ducho en el tema de base de datos me refiero al codigo como tal, lo mio es el diseño de estas y la programacion en general del software, este codigo fue generado con la ayuda del Visual Studio solo lo modifique un poco para algunas condiciones en especifico, voy a estudiarme el que me mandastes a ver si puedo adaptarlo a la forma de la busqueda que planteo, lo que hago en C# es que creo un DataSet con el que manipulo los datos a la hora de mandarlos y recibirlos, tengo una entidad y lleno el data set para llenar los resultados en un data grid, aca te mando el codigo de la capa de Datos de este metodo, le elimine un poco de las variables para no hacer engorroso la lectura, muchas gracias por todo.
Un saludo
Ing. Dariel Alvarez Perez

public DataSet BuscarClientesXCategoria(E_Cliente oCliente)
{
DataSet DS = new DataSet();
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.StoredProcedure;
try
{
int vReg = -1;

cmd = CrearComando("BuscarClientesXCategoria");

//Parametros de CLIENTE------------------------------------------------------------
cmd.Parameters.AddWithValue("@Nombre_Cliente", oCliente.NombreC);
---------------------------------------------
-----------------
------------------

if (oCliente.FechaNacimiento == null)
cmd.Parameters.AddWithValue("@FechaNacimiento_Iden", DBNull.Value);
else
{
string fecha = oCliente.FechaNacimiento.Value.ToString("yyyy/MM/dd");
cmd.Parameters.AddWithValue("@FechaNacimiento_Iden", fecha );
}

cmd.Parameters.AddWithValue("@Sexo_Iden", oCliente.Sexo);
cmd.Parameters.AddWithValue("@LugarNacimiento", oCliente.LugarNacimiento);


//----------------------------------------------------------------------------


DS = GetDS(cmd,"BuscarClientesXCategoria");
AbrirConexion();
vReg = Ejecuta_Accion(ref cmd);
}
catch (Exception Ex)
{
throw new Exception("Error Obteniendo los registros" + Ex.Message, Ex);
}
finally
{
cmd.Dispose();
CerrarConexion();
}
return DS;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

SQL Server Profiler OMG Help

Publicado por Rafael (88 intervenciones) el 22/07/2015 10:18:24
Hola:

Yo no me metere con la forma de hacer las cosas ya que hay mil modos de pelar la gallina y salvo cuestiones personales, morales y a veces mas complejas ninguna es mejor o peor que otra...

Como jack el destripador por partes:

1. El SQL Profiler no vale para el las Versiones Express. Pero podrias probar con este https://expressprofiler.codeplex.com/
2. El tema podria pasar por la configuracion regional, tendrias que verificar que en ambas maquinas fuera similar.
3. Tambien te podria ocurrir por los conectores o clientes de SQL Server si has configurado un ODBC o si usas directamente el .Net Connector verificar que ambos sean de la misma version.
4. Si tienes dudas de la sentencia que usas podrias mandar la sentencia a un log, veamos abres un fichero log y al pasar la sentencia de ejecución escribir previamente dicha sentencia en el log.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

SQL Server Profiler OMG Help

Publicado por Dariel (23 intervenciones) el 22/07/2015 14:06:24
Hola gracias por responder, ya me habia bajado el ExpressProfiler pero no me permite abrir el server, le puse el nombre de la instancia y todo pero nada me da el mismo eror aca te lo mando en una foto, en cuanto a lo de los conectores uso directamente el .Net y son la misma vercion ya que cuando creo el instalador pongo el .net y se instala a la ves, voy a chequear lo de la configuracion regional, ahora lo pido ayuda en lo del tema de mandar a un log la sentencia si tienes algun ejemplo o algo asi, es que la verdad no soy muy ducho en el tema de sql, lo que voy a tratar de hacerlo es desde el C# pero solo verificaria lo que el me manda no lo que recibe el SQL, gracias por todo en realidad le agradesco .
Saludos a todos
Clipboard02
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

SQL Server Profiler OMG Help

Publicado por Rafael (88 intervenciones) el 22/07/2015 14:36:13
Pues el mensaje esta claro...

Estas poniendo un nombre de servidor que no puede ver la aplicacion... deberias hacer:

1. Probar con un ping desde esa maquina al sevidor.
2. Copiar la cadena de conexion que usa tu aplicacion...

Vaya ahora mismo se me ocurren sin fin de cosas pero creo que el problema pasa por el concepto...

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

SQL Server Profiler OMG Help

Publicado por Dariel Alvarez darieldap@gmail.com (23 intervenciones) el 22/07/2015 15:29:07
Lo que estoy utilizando es una bd local, que es idéntica a la del servidor, ya comprobé si permite conexiones remotas, voy a probar copiando la cadena de conexión que utilizo, gracias
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

SQL Server Profiler OMG Help

Publicado por Dariel (23 intervenciones) el 08/08/2015 02:30:26
Gracias a todos por sus respuestas, al final no pude nunca utilizar el SQL Profiler en mi BD, pero bueno le di la siguiente solucion para los que tengan un problema similar, lo que hice fue que guarde en una variable global, asi podia revisar que era lo que me estaba enviando en ese momento desde cada una de las pcs, esto lo mosraba en un mensaje o en un label es solo para ver, esto no es una linda solucion ni nada por el estilo pero pude encontrar el problema, el cual era que en mi pc la la fecha esta formateada por DD-MM-YYYY y en la otra esta formateada por DD/MM/YYY esta diferencia de los "-" a "/" hacia que funcionara mal, ya solucione esto gracias a todos otra ves
Saludos
Dariel
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar