resolución del ejecicio del capitulo 18

1,385 views
1,345 views

Published on

resolución del ejecicio del capitulo 18

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,385
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
20
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • 01/05/2008
  • resolución del ejecicio del capitulo 18

    1. 1. EJERCICIO CAPÍTULO 18 BASE DE DATOS AVANZADA UNIVERSIDAD TÉCNICA PARTICULAR DE LOJA Autor: Edwin Fabián Maza S.
    2. 2. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>(1) La capacidad de almacenar fotografías de los inmuebles en alquiler, junto con comentarios que describan las principales características del inmueble. </li></ul>Autor: Edwin Fabián Maza S.
    3. 3. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>En la tabla PropertyForRent se debería agregar los campos image de tipo MEDIUMBLOB y descripción de tipo TEXTO. </li></ul><ul><li>Después de haber añadido los campos, se debería configurar en la base de datos el tamaño máximo de la imagen permitida para ser almacenada, que en este caso es de 1MB. </li></ul>Autor: Edwin Fabián Maza S.
    4. 4. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>Para escribir una archivo a una base de datos en este caso MySQL necesitamos convertir al archivo en un vector de Bytes, luego usar el vector de Bytes como un parámetro para la sentencia INSERT de la base de datos, y en el campo descripción se le agregaría descripción del inmueble que se muestra en la imagen que se a almacenado en la base de datos. </li></ul>Autor: Edwin Fabián Maza S.
    5. 5. Un ejemplo de cómo se lo utilizaría en codificación esta implementación: <ul><li>VARIABLE INICIALES </li></ul><ul><li>Dim conn As New MySqlConnection </li></ul><ul><li>Dim cmd As New MySqlCommand </li></ul><ul><li>Dim SQL As String </li></ul><ul><li>Dim FileSize As UInt32 </li></ul><ul><li>Dim rawData() As Byte </li></ul><ul><li>Dim fs As FileStream </li></ul><ul><li>conn.ConnectionString = &quot;server=(local);&quot; & &quot;uid=root;&quot; & &quot;pwd=12345;&quot; & &quot;database=test&quot; </li></ul>Autor: Edwin Fabián Maza S.
    6. 6. Un ejemplo de cómo se lo utilizaría en codificación esta implementación: <ul><li>Try </li></ul><ul><ul><li>fs = New FileStream(&quot;c:inmuble_1.png&quot;, FileMode.Open, FileAccess.Read) </li></ul></ul><ul><ul><li>FileSize = fs.Length </li></ul></ul><ul><ul><li>rawData = New Byte(FileSize) {} </li></ul></ul><ul><ul><li>fs.Read(rawData, 0, FileSize) </li></ul></ul><ul><ul><li>fs.Close() </li></ul></ul><ul><ul><li>conn.Open() </li></ul></ul><ul><ul><li>SQL = &quot;INSERT INTO PropertyForRent VALUES(valores de los campos especificados al inicio, ‘descripción del inmueble’, ?File)&quot; </li></ul></ul>Autor: Edwin Fabián Maza S.
    7. 7. Un ejemplo de cómo se lo utilizaría en codificación esta implementación: <ul><ul><li>cmd.Connection = conn </li></ul></ul><ul><ul><li>cmd.CommandText = SQL </li></ul></ul><ul><ul><li>cmd.Parameters.Add(&quot;?FileName&quot;, strFileName) </li></ul></ul><ul><ul><li>cmd.Parameters.Add(&quot;?FileSize&quot;, FileSize) </li></ul></ul><ul><ul><li>cmd.Parameters.Add(&quot;?File&quot;, rawData) </li></ul></ul><ul><ul><li>cmd.ExecuteNonQuery() </li></ul></ul><ul><ul><li>MessageBox.Show(&quot;File Inserted into database successfully!&quot;, &quot;Success!&quot;, MessageBoxButtons.OK, MessageBoxIcon.Asterisk) </li></ul></ul><ul><ul><li>conn.Close() </li></ul></ul><ul><ul><li>  </li></ul></ul><ul><li>Catch ex As Exception </li></ul><ul><ul><li>MessageBox.Show(&quot;There was an error: &quot; & ex.Message, &quot;Error&quot;, </li></ul></ul><ul><ul><li>MessageBoxButtons.OK, MessageBoxIcon.Error) </li></ul></ul><ul><li>End Try </li></ul>Autor: Edwin Fabián Maza S.
    8. 8. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>(2) La capacidad de publicar en la web un informe que describa los informes disponibles para alquiler. </li></ul>Autor: Edwin Fabián Maza S.
    9. 9. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>Para implementar este requisito la ventaja de MySql es que este SGBD puede trabajar conjuntamente con el lenguaje PHP, por lo que únicamente se debería crear reportes de información de lo que se quiere mostrar y desde la interfaz del cliente se llamaría la consulta, en este caso los informes de alquiler de inmuebles. </li></ul>Autor: Edwin Fabián Maza S.
    10. 10. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>Aquí se utilizaría la tabla PropertyForRent y averiguar si esta disponible para, que se muestren únicamente los inmuebles disponibles, y en la pagina web se mostrará toda la información del inmueble y sus características. </li></ul><ul><li>Se debería usar un SW que permita realizar reportes para generarlos con Wizars. </li></ul>Autor: Edwin Fabián Maza S.
    11. 11. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>Agregaremos un reporte al proyecto. Haga clic en &quot;Proyecto | Agregar elemento nuevo&quot; y seleccione &quot;Crystal Report&quot;: </li></ul>Autor: Edwin Fabián Maza S.
    12. 12. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>Acepte el nombre &quot;CrystalReport1.rtp&quot;, al presionar Intro. Crystal Reports mostrará un asistente. Marque &quot;Usar el Experto en reportes&quot; y &quot;Estándar&quot;: </li></ul>Autor: Edwin Fabián Maza S.
    13. 13. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>Se agrega la tabla o las tablas que se relacionan para generar el reporte </li></ul>Autor: Edwin Fabián Maza S.
    14. 14. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>Se hace clic en &quot;Siguiente&quot; y seleccione las columnas que aparecerán en el reporte: </li></ul>Autor: Edwin Fabián Maza S.
    15. 15. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>Se hace clic en &quot;Siguiente&quot; y defina un grupo haciendo clic en la columna &quot;CategoryID&quot; al lado izquierdo, y después en &quot;Agregar&quot;: </li></ul>Autor: Edwin Fabián Maza S.
    16. 16. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>Y esta listo para darle formato como desea que se muestre en la aplicación web. </li></ul>Autor: Edwin Fabián Maza S.
    17. 17. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>Agregando un código similar al que se mostrará al ultimo se presentara el reporte de la siguiente manera. </li></ul>Autor: Edwin Fabián Maza S.
    18. 18. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>También se lo podría implementando codificando de la siguiente manera. </li></ul><ul><li>VARIABLES INICIALES </li></ul><ul><li>using CrystalDecisions.CrystalReports.Engine; </li></ul><ul><li>using System.Data; </li></ul><ul><li>using MySql.Data.MySqlClient; </li></ul><ul><li>ReportDocument myReport = new ReportDocument(); </li></ul><ul><li>DataSet myData = new DataSet(); </li></ul><ul><li>MySql.Data.MySqlClient.MySqlConnection conn; </li></ul><ul><li>MySql.Data.MySqlClient.MySqlCommand cmd; </li></ul><ul><li>MySql.Data.MySqlClient.MySqlDataAdapter myAdapter; </li></ul><ul><li>conn = new MySql.Data.MySqlClient.MySqlConnection(); </li></ul><ul><li>cmd = new MySql.Data.MySqlClient.MySqlCommand(); </li></ul><ul><li>myAdapter = new MySql.Data.MySqlClient.MySqlDataAdapter(); </li></ul><ul><li>conn.ConnectionString = &quot;server=127.0.0.1;uid=root; pwd=12345;database=test;&quot;; </li></ul>Autor: Edwin Fabián Maza S.
    19. 19. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>try </li></ul><ul><li>{ </li></ul><ul><ul><li>cmd.CommandText = &quot;cadena de consulta de los datos requeridos en el reporte&quot;; </li></ul></ul><ul><ul><li>cmd.Connection = conn; </li></ul></ul><ul><ul><li>myAdapter.SelectCommand = cmd; </li></ul></ul><ul><ul><li>myAdapter.Fill(myData); </li></ul></ul><ul><ul><li>myReport.Load(@&quot;. eporte_inmuebles.rpt&quot;); </li></ul></ul><ul><ul><li>myReport.SetDataSource(myData); </li></ul></ul><ul><ul><li>myViewer.ReportSource = myReport; </li></ul></ul><ul><li>} </li></ul>Autor: Edwin Fabián Maza S.
    20. 20. REQUISITOS DE IMPLEMENTACIÓN PARA EL CASO DE ESTUDIO DREAMHOME <ul><li>catch (MySql.Data.MySqlClient.MySqlException ex) </li></ul><ul><li>{ </li></ul><ul><ul><li>MessageBox.Show(ex.Message, &quot;Report could not be created&quot;, </li></ul></ul><ul><ul><li>MessageBoxButtons.OK, MessageBoxIcon.Error); </li></ul></ul><ul><li>} </li></ul>Autor: Edwin Fabián Maza S.
    21. 21. BASE DE DATOS AVANZADAS <ul><li>GRACIAS…….. </li></ul>EJERCICIO CAPITULO 18 Autor: Edwin Fabián Maza S.

    ×