Entradas

Mostrando entradas de mayo, 2014

Procedimientos en Oracle

CREATE OR REPLACE PROCEDURE USP_INSERT_MARCA(cod IN char, nom IN varchar2, des IN varchar2) IS BEGIN INSERT INTO MARCA(codmarca,nombre,descripcion) VALUES(cod,nom,des); COMMIT; EXCEPTION WHEN OTHERS THEN ROLLBACK; END USP_INSERT_MARCA; --ejecutando BEGIN USP_INSERT_MARCA('M05','AKITA','PROCEDENCIA CHINA'); END; CREATE OR REPLACE PROCEDURE USP_UPDATE_MARCA(nom IN varchar2, des IN varchar2, cod IN char) IS Begin UPDATE MARCA SET nombre=nom, descripcion=des WHERE codmarca=cod; COMMIT; EXCEPTION WHEN OTHERS THEN ROLLBACK; End USP_UPDATE_MARCA; --ejecutando BEGIN USP_UPDATE_MARCA('ACER','MADE IN CHINA','M04'); END; CREATE OR REPLACE PROCEDURE USP_DELETE_MARCA(cod IN char) IS BEGIN DELETE FROM MARCA WHERE codmarca=cod; COMMIT; EXCEPTION WHEN OTHERS THEN ROLLBACK; END; --ejecutando BEGIN USP_DELETE_MARCA('M02'); END; --By Ing. Jhonatan Abal Mejia

CONEXION ACCESS Y VB.NET

CLASE CONEXION ***************** Public Function conectardb() As String         Dim cn As New OleDbConnection         Dim mensaje As String = ""         Try             If cn.State = ConnectionState.Closed Then                 cn.ConnectionString = "ProSvider=Microsoft.ACE.OLEDB.12.0;Data Source=D:\CLINICA.accdb"                 cn.Open()                 mensaje = "Conexion OK BD ACCESS"                 cn.Close()                 cn.Dispose()             End If         Catch ex As Exception             mensaje = ex.Message         End Try         Return mensaje     End Function BOTON CONECTAR ******************   Dim obj As New Conexion         Dim mensaje As String         mensaje = obj.conectardb         Response.Write(mensaje) by. Ing. Jhonatan Abal Mejia

CREATE SEQUENCE ORACLE

--sintaxis del create sequence Create sequence NOMBRESECUENCIA Start with VALORENTERO Increment by VALORENTERO Maxvalue VALORENTERO Minvalue VALORENTERO Cycle | Nocycle;   --CREACION DE TABLE EN ORACLE CREATE TABLE DISTRITO (  IDDISTRITO NUMBER(5),  CODDISTRITO VARCHAR2(5),  NOMBRE VARCHAR2(60),  CONSTRAINT PK_ID_DIST PRIMARY KEY(IDDISTRITO) ); --CREACION DE SECUENCIA EN ORACLE CREATE SEQUENCE SQ_ID_DISTRITO Start with 1 Increment by 1 Minvalue 1 Maxvalue 99999 Nocycle; --PROBANDO SECUENCIA EN ORACLE INSERT INTO DISTRITO(IDDISTRITO,CODDISTRITO,NOMBRE) VALUES(SQ_ID_DISTRITO.NEXTVAL, 'DISJL','SAN JUAN DE LURIGANCHO'); INSERT INTO DISTRITO(IDDISTRITO,CODDISTRITO,NOMBRE) VALUES(SQ_ID_DISTRITO.NEXTVAL, 'DISJM','SAN JUAN DE MIRAFLORES'); INSERT INTO DISTRITO(IDDISTRITO,CODDISTRITO,NOMBRE) VALUES(SQ_ID_DISTRITO.NEXTVAL, 'DIVMT','VILLA MARIA DEL TRIUNFO'); SELECT * FROM DISTRITO; By: Ing. Jhonatan Abal Mejia

GRABAR FOTO VB.NET Y SQL SERVER

Imagen
Creamos la siguiente base de datos y tabla en el MS SQL Server 2012 Diseñamos el siguiente Formulario en una Aplicación WINDOWS de Visual Basic 2010 Consideramos el siguiente Código fuente: ------------------------------------------------------------------------------------------------------------ Imports System.Data Imports System.Data.SqlClient Public Class Form1     Dim cn As New SqlConnection("Server=.; DataBase=DEMO; Integrated Security=true;")     Private Sub btnGrabar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGrabar.Click         Try             Dim cmd As New SqlCommand()             With cmd                 .CommandText = "INSERT INTO EMPLEADOS(NOMBRE, APELLIDO, FECHANACIMIENTO, ESTADOCIVIL, FOTO)VALUES(@NOM,@APE,@FN,@EC,@FOTO)"                 .Parameters.AddWithValue("@NOM", Me.txtnom.Text.Trim)                 .Parameters.AddWithValue("@APE", Me.txtape.Text.Trim)              

TRIGGER ORACLE

--tables CREATE TABLE CLIENTE ( CODCLIENTE NUMBER PRIMARY KEY, RAZONSOCIAL VARCHAR2(50), DIRECCION VARCHAR2(50), RUC CHAR(11) ); INSERT INTO CLIENTE VALUES(1,'Empresa1','Jr. Amazonas #2312','12045236014'); INSERT INTO CLIENTE VALUES(2,'Empresa2','Jr. Amazonas #2313','12045236011'); INSERT INTO CLIENTE VALUES(3,'Empresa3','Jr. Amazonas #2315','12045236023'); INSERT INTO CLIENTE VALUES(4,'Empresa4','Jr. Amazonas #2315','12045236023'); INSERT INTO CLIENTE VALUES(5,'Empresa5','Jr. Amazonas #2316','22045236021'); select * from cliente; CREATE TABLE BITCLIENTE ( CODCLIENTE NUMBER, RUC CHAR(11), FECHA DATE, HORA CHAR(10) ); --trigger CREATE OR REPLACE TRIGGER TR_01 AFTER INSERT ON CLIENTE FOR EACH ROW BEGIN      INSERT INTO BITCLIENTE(CODCLIENTE,RUC,FECHA,HORA)      VALUES(:NEW.codcliente, :NEW.ruc, TO_DATE(SYSDATE,'DD/MM/YY'), TO_CHAR(

Funciones de Cadena ORACLE

--funciones de cadena select upper(ape || ' ' || nom)as nombres from tbemple; select concat(ape || ' ',nom)as nombres from tbemple; SELECT SUBSTR('PEPE PEREZ', 6) FROM DUAL; SELECT SUBSTR('PEPE PEREZ',6,2) FROM DUAL; select initcap('buenas tardes alumno') from dual; select upper(nom) from tbemple; select lower(nom) from tbemple; select initcap(ape) from tbemple; select substr(nom,1,4) from tbemple select concat('Jhonatan',' Abal') from Dual; select chr(65) from dual; select lpad('alumno',8,'wa') from dual select lpad('alumno',4,'xyz') from dual; select trim(' hola a todos ')from dual; select rpad('alumno',11,'xyz') from dual; select rtrim('la casa lila','la') from dual;-- 'la casa li' select rtrim('la casa lila ','la') from dual;-- no borra ningún caracter select rtrim('la casa lila    ') from dual; --'la c

GROUP BY ORACLE

EJEMPLO GROUP BY ******************* select origen, sum(subtotal), sum(descuento), sum(total) from autorizacion group by origen; select paciente, origen, sum(subtotal), sum(descuento), sum(total) from autorizacion where tipo_paciente IN('C','N') group by origen, paciente; select origen, min(total) as minimo_total, max(total) as maximo_total from autorizacion group by origen having origen = 'CE'; select origen, sum(subtotal), sum(descuento), sum(total) from autorizacion group by origen, consultorio having origen='CE' OR origen='EM' order by origen desc; select c.nombre, sum(a.subtotal), sum(a.descuento), sum(a.total) from autorizacion a, consultorio c where  (c.consultorio = a.consultorio) and a.fecha_registro >= to_date('01/03/2013','DD/MM/YYYY') and a.fecha_registro <= to_date('31/03/2013','DD/MM/YYYY') AND a.USUARIO='XXX' group by c.nombre; --by Ing