You are on page 1of 13

SISTEMA DE UNA BIBLIOTECA

INTEGRANTES:
*EDWIN HUAMANAHUI JARA *URIEL HUAMANI HUASHUA *JULIOS CERSAR MONZON

12

DIAGRAMA DE BASE DE DATOS

SCRIP DE BASE DE DATOS


CREATE DATABASE BDBIBLIOTECA GO USE BDBIBLIOTECA GO ----------------------CREANDO TABLAS------------------------------------create table ttrabajador( USUARIO VARCHAR(45)not null primary key, NOMBRE VARCHAR(45), APELLIDOS VARCHAR(45), DNI char(8), CLAVE VARCHAR(10), estado varchar(10)) update ttrabajador set estado='Activo' GO CREATE TABLE TUSUARIO( CODUSU VARCHAR(10) NOT NULL PRIMARY KEY, NOMBRE VARCHAR(50), APELLIDOS VARCHAR(59), ESTADOU VARCHAR(20) ) GO CREATE TABLE TLIBRO( NLIBRO VARCHAR(4) NOT NULL PRIMARY KEY, NOMBREL VARCHAR(180), AUTOR VARCHAR(180), ESTADOL VARCHAR(20), ) GO CREATE TABLE TPRESTAMO( NROPRESTAMO VARCHAR(10) NOT NULL, CODUSU VARCHAR(10) NOT NULL, NLIBRO VARCHAR(4) NOT NULL, FECHA_INICIO DATETIME, FECHA_FINAL DATETIME, ESTADO VARCHAR(20), DIAS VARCHAR(3), PRIMARY KEY(NROPRESTAMO,CODUSU,NLIBRO), FOREIGN KEY (CODUSU) REFERENCES TUSUARIO, FOREIGN KEY (NLIBRO) REFERENCES TLIBRO) GO --ASIENDO PROCEDIMIENTOS ALMACENADOS------------------------------------CREATE PROCEDURE GENERARGODIGO @NROPRESTAMO VARCHAR(10), @CODUSU VARCHAR(10), @NLIBRO VARCHAR(4), @FECHA_INICIO DATETIME, @FECHA_FINAL DATETIME, @ESTADO VARCHAR(20), @DIAS VARCHAR(3) AS BEGIN SELECT @NROPRESTAMO= isnull(max(NROPRESTAMO),0)+1 FROM TPRESTAMO SET @NROPRESTAMO=right('0000000000'+rtrim(@NROPRESTAMO),10) INSERT INTO TPRESTAMO VALUES(@NROPRESTAMO,@CODUSU,@NLIBRO,@FECHA_INICIO,@FECHA_FINAL,@ESTADO,@DIAS) END GO --CREANDO UNA VISTA

CREATE VIEW vDevueltos AS SELECT DIAS,NOMBREL AS LIBRO,NOMBRE,APELLIDOS,FECHA_INICIO,FECHA_FINAL,tprestamo.nlibro as NroLibro FROM TPRESTAMO,TLIBRO,TUSUARIO WHERE TPRESTAMO.CODUSU=TUSUARIO.CODUSU AND TPRESTAMO.NLIBRO=TLIBRO.NLIBRO AND ESTADO LIKE 'DE%' -----------INSERTANDO REGISTROS------------------------------------------PARA TTRABAJADOR---------------------------------------------------INSERT INTO TTRABAJADOR VALUES('edwin','edyto','jara','12345','chicha','Activo') INSERT INTO TTRABAJADOR VALUES('uriel','americo','huamani','1234','chela','Activo') INSERT INTO TTRABAJADOR VALUES('julio','cesar','monzon','80032204','mg','Activo') GO ---PARA TUSUARIO-------------------------------------------------------INSERT INTO TUSUARIO VALUES('001A','YENNY','CARLIN ARIAS','activo') INSERT INTO TUSUARIO VALUES('002B','RAUL','ARBIETO VALLE','activo') INSERT INTO TUSUARIO VALUES('003C','HELEN','ESPINOZA FLORES','activo') INSERT INTO TUSUARIO VALUES('004D','MELCOCHITA',' FLORES','activo') GO ---PARA TLIBRO----------------------------------------------------------Insert Into tLibro Values('1','ADMINISTRACION DE SISTEMAS DE INFORMACION','LAUDON Y LAUDON','libre') Insert Into tLibro Values('2','ALGORITMICA Y PROGRAMACION','ARTURO ROSAS','libre') Insert Into tLibro Values('3','METODOS NUMRICOS (FOTOCOPIA)','HUGO CALDERON VILCA','libre') Insert Into tLibro Values('4','ALGORITMOS Y ESTRUCTURA DE DATOS UN ENFOQUE PRACTICO','GRAPO PERU','libre') Insert Into tLibro Values('5','ALGORITMOS Y ESTRUCTURA DE DATOS CON C/C++','EDUARDO RAFO LECCA','libre') Insert Into tLibro Values('6','ANALISIS BASICOS DE CIRCUITOS ELECTRONICOS','JOHSNTON','libre') Insert Into tLibro Values('7','ANALISIS MATEMATICO','EDUARDO ESPINOZA','libre') Insert Into tLibro Values('8','ANALISIS MATEMATICO I','A. VENERO','libre') Insert Into tLibro Values('9','ANALISIS MATEMATICO I CALCULO DIFERENCIAL','MOISES LAZARO C','libre') Insert Into tLibro Values('10','ANALISIS MATEMATICO I LIMITES Y CONTINUIDAD','MOISES LAZARO C','libre')

INICIO AL SISTEMA

LA CONEXION
Imports System.Data.SqlClient Public Class clsConexion Public cadenaconexion As New SqlConnection Public Function conectar(ByVal server As String, ByVal DB As String, ByVal usuario As String, ByVal clave As String) As Boolean Try cadenaconexion.ConnectionString = "Data Source=PC-9-PC\SQLEXPRESS;Initial Catalog=BDBIBLIOTECA;Integrated Security=true" cadenaconexion.Close() Catch ex As Exception MessageBox.Show(ex.Message.ToString()) cadenaconexion.Close() End Try End Function Public Function consultaBD(ByVal sentenciaSQL As String) As DataTable cadenaconexion.Open() Dim consulta As New SqlCommand(sentenciaSQL, cadenaconexion) Dim daBD As New SqlDataAdapter(consulta) Dim dtBD As New DataTable daBD.Fill(dtBD) consultaBD = dtBD cadenaconexion.Close() End Function End Class

EL FRM ENTRADA
Public Class FrmEntrada Dim cantidad, i As Integer Dim Mitabla As DataTable Private Sub FrmEntrada_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.Top = 250 Me.Left = 250 enlace.conectar("", "", "", "") Me.TextBox1.Text = DateTime.Now.ToShortDateString() cantidad = enlace.consultaBD("Select usuario from ttrabajador where estado='Activo'").Rows.Count Mitabla = enlace.consultaBD("Select usuario from ttrabajador where estado='Activo'order by usuario") i = 0 While i < cantidad Me.ComboBox1.Items.Add(Mitabla.Rows(i)(0)) i = i + 1 End While Timer1.Start() End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Me.TextBox2.Text = DateTime.Now.ToLongTimeString End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Close() End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If Me.ComboBox1.Text <> "" And Me.TextBox3.Text <> "" Then Mitabla = enlace.consultaBD("Select clave,nombre,apellidos from ttrabajador where usuario = '" + Me.ComboBox1.Text + "'") If Me.TextBox3.Text = Mitabla.Rows(0)(0).ToString() Then UsuarioEntrada = UCase(Mitabla.Rows(0)(1).ToString()) & " " & UCase(Mitabla.Rows(0)(2).ToString()) Hide() FrmPrincipal.Show() Else MessageBox.Show("Clave Incorrecta") End If Else MessageBox.Show("Falta Llenar Datos") End If End Sub Private Sub ComboBox1_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles ComboBox1.KeyPress e.Handled = True End Sub Private Sub TextBox3_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox3.KeyPress If e.KeyChar = Chr(13) Then Call Button1_Click(sender, e) End If End Sub Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged End Sub End Class

EL FRM PRINCIPAL
Imports System.Data.SqlClient Public Class FrmPrincipal Dim sfdguardar As New SaveFileDialog() Dim sfdrestaurar As New OpenFileDialog() Private Sub ListadoToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListadoToolStripMenuItem.Click FrmListado.MdiParent = Me FrmListado.Show() FrmListado.Left = 0 FrmListado.Top = 0 End Sub

Private Sub ToolStripMenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem2.Click Form1.MdiParent = Me Form1.Show() Form1.txtCodigo.Focus() Form1.Left = 0 Form1.Top = 0 End Sub Private Sub MANTENIMIENTOToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MANTENIMIENTOToolStripMenuItem.Click frmMantenimiento.MdiParent = Me frmMantenimiento.Show() frmMantenimiento.Left = 0 frmMantenimiento.Top = 0 End Sub Private Sub SALIRToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SALIRToolStripMenuItem.Click Close() End Sub Private Sub ToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem1.Click End Sub Private Sub FrmPrincipal_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load enlace.conectar("", "", "", "") Me.StatusBar1.Panels(0).Text = "PERSONAL = " & UsuarioEntrada Me.StatusBar1.Panels(3).Text = DateString End Sub Private Sub ToolStripMenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem3.Click FRMCONSULTAS.MdiParent = Me FRMCONSULTAS.Show() FRMCONSULTAS.Left = 0 FRMCONSULTAS.Top = 0 End Sub Private Sub RESTAURARToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RESTAURARToolStripMenuItem.Click Dim cadena As String If (sfdrestaurar.ShowDialog() = Windows.Forms.DialogResult.OK) Then cadena = sfdrestaurar.FileName If restaurar_basededatos(cadena) = True Then MessageBox.Show("Base de Datos Restaurada", "Mensaje", MessageBoxButtons.OK) Else MessageBox.Show("Error no se Pudo Restaurar la Base de Datos", "Mensaje", MessageBoxButtons.OK) End If End If End Sub

Private Function restaurar_basededatos(ByVal cadena As String) As Boolean Dim sBackup As String = "RESTORE DATABASE BDBIBLIOTECA FROM DISK = '" & cadena & "'" & " WITH REPLACE" Dim conecsb As New SqlConnectionStringBuilder conecsb.DataSource = "(local)" conecsb.InitialCatalog = "master" conecsb.IntegratedSecurity = True Using con As New SqlConnection(conecsb.ConnectionString) Try con.Open() Dim cmdRestore As New SqlCommand(sBackup, con) cmdRestore.ExecuteNonQuery() restaurar_basededatos = True Catch ex As Exception restaurar_basededatos = False MessageBox.Show(ex.Message) Finally con.Close() End Try End Using End Function Private Sub GUARDARToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GUARDARToolStripMenuItem.Click Dim cadena As String If (sfdguardar.ShowDialog() = Windows.Forms.DialogResult.OK) Then cadena = sfdguardar.FileName enlace.consultaBD("backup database BDBIBLIOTECA to disk = N'" + cadena + "'") MessageBox.Show("Base de Datos Guardada", "Mensaje", MessageBoxButtons.OK) End If End Sub Private Sub FrmPrincipal_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed End End Sub Private Sub USUARIOSYCLAVESToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles USUARIOSYCLAVESToolStripMenuItem.Click FrmUsuario.MdiParent = Me FrmUsuario.Show() FrmUsuario.Top = 0 FrmUsuario.Left = 0 End Sub Private Sub IMPORTARALUMNOSDESDEEXELToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles IMPORTARALUMNOSDESDEEXELToolStripMenuItem.Click FrmExel.MdiParent = Me FrmExel.Show() FrmExel.Top = 0 FrmExel.Left = 0 End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Me.StatusBar1.Panels(4).Text = TimeString End Sub End Class

You might also like