| |
|
92
|
Programación / .NET (C#, VB.NET, ASP) / como destruir las variables de sesion
|
en: 9 Octubre 2015, 02:07 am
|
hola, necesito saber como destruir las variables de sesion y vaciar una clase de tipo singlenton(de una sola instancia) porque aunque los asigno a nothing no quedan vacias, ya he probado asi GlobalIdentity.Instance.User = "" GlobalIdentity.Instance.Password = "" Me.Session("UserID") = Nothing Me.Session("UserName") = Nothing Me.Session.RemoveAll()
|
|
|
|
|
93
|
Programación / .NET (C#, VB.NET, ASP) / Exception detiene la ejecucion
|
en: 7 Octubre 2015, 14:50 pm
|
hola necesito loguearme de manera dinamica con diferentes usuarios ya definidos dentro de Oracle, la clase singlenton y la funcion de conexion ya funcionan bien, siempre que el usuario y el password sean correctos, lo unico que cuando ingreso algun usuario equivocado entonces no va a conectar y oracle directamente produce una excepcion y detiene la ejecucion, no se como capturar esa excepcion y traducirla en un pequeño mensaje de "USER Y PASS INCORRECTOS" a mi aplicacion web Public Function conexion() As Oracle.DataAccess.Client.OracleConnection Try 'Dim objeto As New GlobalIdentity user = GlobalIdentity.Instance.User pass = GlobalIdentity.Instance.Password If String.IsNullOrEmpty(user) Or String.IsNullOrEmpty(pass) Then Throw New Exception("Usuario y Password son requeridos") End If Dim conn As String = ConfigurationManager.ConnectionStrings("Principal").ConnectionString conn = String.Format(conn, user, pass) Dim cn As New OracleConnection() cn.ConnectionString = conn Return cn Catch ex As OracleException Throw New ArgumentException("Error en la Conexion" & ex.ToString) End Try End Function
|
|
|
|
|
94
|
Programación / .NET (C#, VB.NET, ASP) / realizar export de oracle desde .net
|
en: 6 Octubre 2015, 13:38 pm
|
hola a todos, aunque se muy bien que para pedir apoyo debo de poner codigo, esta vez no he podido construir casi nada, necesito realizar un backup logico de una base de datos oracle desde una aplicacion en .net pero no se como, un ejemplo encontre pero para SQL Server, el export siempre lo habia hecho desde la consola expdp usuario/contraseña dumpfile=copia_oracle_export.dmp logfile=copia_oracle_export.log directory=CARPETA_EXPORT FULL=y
|
|
|
|
|
96
|
Programación / Bases de Datos / Re: quitar privilegios en oracle
|
en: 5 Octubre 2015, 23:39 pm
|
aqui esta el codigo completo, las variables priv en la aplicacion son checkbox para saber cuales hay que retirar. El nombre del usuario lo tomo de un dropdownlist que esta lleno con los usuarios que estan activos, y vuelvo a recalcar que desde la consola al realizar el for desde un bloque anonimo si funciona CREATE OR REPLACE PROCEDURE usp_quita_priv (nombre varchar2, priv1 NUMBER, priv2 NUMBER, priv3 NUMBER, priv4 NUMBER, proc NUMBER, borrar NUMBER, sesion NUMBER ) IS privilegios varchar2(512); BEGIN IF borrar > 0 THEN EXECUTE immediate 'Drop user '||nombre||' cascade'; elsif sesion > 0 THEN EXECUTE immediate 'Revoke create session FROM '||nombre; END IF; IF priv1 > 0 THEN privilegios:='INSERT'; END IF; IF priv2 > 0 AND privilegios IS NOT NULL THEN privilegios:=privilegios||','||' UPDATE'; END IF; IF priv2 > 0 AND privilegios IS NULL THEN privilegios:='UPDATE'; END IF; IF priv3 > 0 AND privilegios IS NOT NULL THEN privilegios:=privilegios||','||' DELETE'; END IF; IF priv3 > 0 AND privilegios IS NULL THEN privilegios:='DELETE'; END IF; IF priv4 > 0 AND privilegios IS NOT NULL THEN privilegios:=privilegios||','||' SELECT'; END IF; IF priv4> 0 AND privilegios IS NULL THEN privilegios:='SELECT'; END IF; ---------------------------------------- IF privilegios IS NOT NULL THEN FOR x IN (SELECT TABLE_NAME nombre FROM user_tables) LOOP ---dbms_output.put_line(x.nombre); --EXECUTE IMMEDIATE 'GRANT SELECT ON ' || x.table_name || ' TO <<someone>>'; --execute immediate 'GRANT '||privilegios||' on '||'"'||user||'"'||'.'||'"'||x.nombre||'"'||' to '||usuario_; EXECUTE immediate 'Revoke '||privilegios||' on '||'"'||user||'"'||'.'||'"'||x.nombre||'"'||' from '||nombre; END LOOP; END IF; IF proc > 0 THEN FOR x IN (SELECT DISTINCT name nombre, TYPE FROM USER_SOURCE WHERE TYPE IN ('PROCEDURE')) LOOP --execute immediate 'GRANT EXECUTE on '||'"'||user||'"'||'.'||'"'||x.nombre||'"'||' to '||usuario_; EXECUTE immediate 'Revoke execute on '||'"'||user||'"'||'.'||'"'||x.nombre||'"'||' from '||nombre; END LOOP; END IF; ---borrar > 0 END;
|
|
|
|
|
97
|
Programación / .NET (C#, VB.NET, ASP) / Re: capturar exception en .net
|
en: 5 Octubre 2015, 13:48 pm
|
|
un ultimo detalle encontre ahora que cambio el tipo de retorno, dentro de la misma clase donde tengo la funcion de ejecutar sql, tengo una que devuelve un dataset para llenar un dropdownlist, en esta funcion creo que no puedo cambiar el tipo de retorno para enviar el mensaje de error
|
|
|
|
|
98
|
Programación / .NET (C#, VB.NET, ASP) / Re: capturar exception en .net
|
en: 5 Octubre 2015, 13:43 pm
|
|
la razon de hacer una funcion que devuelva un entero es porque al hacer el excuteNonQuery me devuelve un 1 y entonces lo retorno hasta la pagina aspx para dar un mensaje de "Operacion exitosa", y segun la orientacion que me han dado esta funcion hare que retorne la cadena de mensaje exitoso desde aqui para que tambien pueda devolver una cadena de error.
|
|
|
|
|
99
|
Programación / .NET (C#, VB.NET, ASP) / capturar exception en .net
|
en: 5 Octubre 2015, 05:06 am
|
hola a todos, solo quiero que me orienten de como capturar una excepcion que dispara oracle y que es una cadena, no las he podido controlar con el codigo de visual basic.net porque de la forma en que lo hago retornaria una cadena y la funcion donde tengo el try catch retorna un entero si la ejecucion es normal public function ejecutasql() as integer try 'todo_bien en la consulta return 1 Catch ex As OracleException Return "Error al generar Consulta" & ex.ToString End Try
tambien he probado con esta otra pero igual no me controla la excepcion sino que de una vez me detiene la ejecucion Catch ex As OracleException Throw New ArgumentException("Error al generar consulta " & ex.Message.ToString) End Try
|
|
|
|
|
100
|
Programación / Bases de Datos / quitar privilegios en oracle
|
en: 5 Octubre 2015, 04:26 am
|
hola, estoy trabajando con oracle desde una aplicacion en .net, desde la app creo un usuario y le doy privilegios, y desde la misma app le tengo que quitar esos privilegios, en la creacion y dar privilegios no hay problema pero al momento de quitarlos da este error ORA-01031: insufficient privileges
la linea de codigo que ejecuto en el procedimiento almacenado es este EXECUTE immediate 'Revoke create session FROM '||nombre;
el privilegio que estoy quitando es para que ya no se pueda conectar a la base de datos, lo unico es que al hacerlo desde la consola no hay problema, aunque lo hago con el mismo usuario que es propietario de algunas tablas y que tiene privilegios de DBA
|
|
|
|
|
|
| |
|