Mostrando entradas con la etiqueta instancia. Mostrar todas las entradas
Mostrando entradas con la etiqueta instancia. Mostrar todas las entradas

sábado, 4 de julio de 2015

Instalación de Microsoft® SQL Server 2005

Introducción


SQL Server 2005 se distribuye en tres ediciones principales: Standard, Enterprise y Developer, en todas ellas se dispone de una instalación de Servidor y una instalación de escritorio, la instalación de Servidor incluye la versión completa de SQL, la de escritorio es una versión reducida con algunas limitaciones.


instalación de SQL Server 2005


La edición más utilizada es la Standard, la Enterprise además da soporte a mecanismos de clúster, envío de registros de transacciones desde un servidor a otro, tiene vistas indexadas, vistas particionadas y también distribuidas.

Existen dos tipos de instancias de SQL Server, la instancia predeterminada o por defecto y las instancias secundarias o con nombre.

La instancia predeterminada recibe como nombre el del equipo en el que se ejecuta. Cuando una aplicación indica únicamente el nombre del equipo en sus peticiones para conectarse a SQL Server, los componentes de cliente de SQL Server se conectan a la instancia predeterminada del motor de base de datos del equipo, de este modo se mantiene la compatibilidad con las aplicaciones de SQL Server existentes.

Todas las instancias del motor de bases de datos que no son la instancia predeterminada reciben un nombre propio que se especifica durante su instalación. Las aplicaciones deben proporcionar el nombre del equipo y el nombre de la instancia de cualquier instancia con el nombre al que estén intentando conectarse. \Equipo\instancia.


jueves, 6 de marzo de 2014

Cómo salvar los datos de la instancia

Vamos a conocer alguna de las clases previstas en .NET para el almacenamiento de datos de la instancia. Hay muchas opciones así que esto será un breve repaso a los mecanismos comunes de serialización y de la clase DataSet de ADO.NET.

DataSets


ADO.NET es el modelo de .NET para el acceso a datos. Los datos se almacenan en objetos DataSet que están desconectados de la base de datos. XML está integrado en el modelo, ya que los objetos DataSet se pueden serializar y deserializar fácilmente a partir de XML.

A continuación vamos a rellenar un control DataGrid con datos almacenados en un DataSet, en la parte de arriba se ha definido la estructura del conjunto de datos en tiempo de ejecución,
(conjunto de datos sin tipo)  a continuación definiremos  la estructura del conjunto de datos en tiempo de diseño.

Es necesario crear los siguientes objetos:

-DataAdapter y DataConnection son objetos que proporcionan los métodos para mover datos entre un DataSet y una base de datos o fuente de datos.

- El objeto DataSet  es un contenedor que contiene objetos DataTable e información sobre  las relaciones entre los objetos DataTable.

- DataTable contiene los datos, organizados en filas y columnas. A través de métodos se puede acceder a los datos a través de filas y columnas

Crear la interfaz de usuario


Crearemos un Nuevo proyecto windows y generamos un formulario de este estilo.

DataGrid: DtgPosiciones

Botón1: Carga Dataset

Cargar un dataset

martes, 25 de junio de 2013

Escribir un programa orientado a objetos (II)

Esto es una continuación del artículo anterior sobre como Crear un primer programa orientado a objetos sencillo.

En este artículo aprenderemos a


§ Usar una clase en una aplicación.
§ Usar las herramientas de Microsoft Visual Studio .NET  para crear la definición de una clase

Uso la  clase CHospital en una aplicación


Como se ha dicho anteriormente una clase es una plantilla de un objeto. Por ejemplo un coche genérico es una clase, mientras que un coche concreto es un objeto (instancia de la clase).
Para poner los datos en los campos y propiedades, hay que crear una instancia de la clase en la memoria, esta acción se conoce como instanciación. Cuando se crea una instancia, se reserva una sección de memoria para mantener los campos del objeto. Si se crea otra instancia de la clase, se reserva otra sección de la memoria para sus campos.
Por ejemplo podemos tener n instancias de la clase coche y cada una de ellas representará un coche concreto con sus atributos particulares (propiedades) marca, modelo, color, etc.

Vamos a crear dos instancias de la clase
CHospital en el proyecto Hospital, y se mostrarán los datos de cada hospital, así que tendrán que crearse dos instancias por separado  de la clase CHospital. En lugar de crear una interfaz elegante, se escribirá sólo el suficiente código para ver si la clase está trabajando como se esperaba.
  

Driver de Pruebas


La creación de un pequeño programa  para probar una clase se llama Driver. Es una buena idea  probar  la clase un poco con el Driver antes de agregarla a un programa más amplio. Se utiliza el Driver para probar la clase sin la interferencia del resto del código del programa.

Crear una instancia de CHospital


1. En el Explorador de soluciones, hacer doble clic en Form1 para abrirlo en el Windows
Diseñador de formularios. Si Form1 se abre en el editor de código, seleccionar Ver Diseñador.

Crear un entorno visual similar al mostrado a continuación

Escribir un programa orientado a objetos



2. Agregar el siguiente código para el evento
SelectedIndexChanged del combo superior

Private Sub CboHospitales_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CboHospitales.SelectedIndexChanged

        Dim Hospital1_grupo As CHospital
        Hospital1_grupo = New CHospital()

End Sub

3. Agregar el código siguiente para establecer las propiedades  del hospital inmediatamente después del código introducido en el paso 2:

Hospital1_grupo.Telefono = "914567894"
Hospital1_grupo.Direccion = "Recoletos 23"
Hospital1_grupo.NumSalas  = 28

Cuando se crea la instancia de CHospital , sus campos contienen los valores especificados en la definición de clase. Los campos de dirección y teléfono son una cadena vacía, el número de salas es 0. Tener en cuenta que no hay diferencia en el código del cliente si se utiliza un campo o una propiedad.

4. Agregar el código siguiente  para crear otra instancia de la clase
CHospital.

Dim Hospital2_grupo As CHospital = New CHospital()

Hospital2_grupo.Telefono = "912346578".
Hospital2_grupo.Direccion = "Bravo Murillo 324"
Hospital2_grupo.NumSalas = 12

En este caso, se utiliza una sintaxis diferente para declarar e inicializar una variable de la Clase CHospital. Visual Basic  permite la declaración y la inicialización en la misma declaración. La declaración e iniciación en la misma sentencia tiene las siguientes ventajas:

§  Los programadores tienen menos probabilidades de olvidarse de inicializar la  variable.
§  Cuando una clase define un constructor con parámetros, los campos se  pueden
inicializar al mismo tiempo.

Usar una instancia de la Clase CHospital


5. Agregar el código siguiente para mostrar algunos de los textos de los dos libros.

Dim Informe As String

Informe = "Hospital de " & Hospital1_grupo.Direccion & "Con Telefono" & Hospital1_grupo.Telefono & "Tiene" & Hospital1_grupo.NumSalas & "Salas"

MessageBox.Show(Informe)

Informe = "Hospital de " & Hospital2_grupo.Direccion & "Con Telefono" & Hospital2_grupo.Telefono & "Tiene" & Hospital2_grupo.NumSalas & "Salas"

MessageBox.Show(Informe)

En este fragmento de código se puede ver que hay dos instancias independientes de la clase  CHospital. Es posible hacer referencia a estas instancias utilizando las variables Hospital1_grupo  y Hospital2_grupo. El concepto orientado a objetos permite que cada instancia pueda ser referenciada por separado y se conoce como identidad. Esto no significa que haya que crear una variable para cada instancia. La creación de tantas variables es difícil de manejar si se necesitan cientos de instancias de una clase. Identidad significa que se puede hacer referencia a cada instancia por separado cuando sea necesario.

Al crear una instancia
CHospital, los campos de Hospital1_grupo  han cambiado y se ha llamado al método AltaMedicoHos.

 Más tarde se ha  recuperado el valor de la propiedad Direccion. El valor de la dirección se ha mantenido sin cambios después de llamar al método AltaMedicoHos.  El hecho de que el valor se mantuviera sin cambios demuestra el concepto de estado de los objetos, la idea de que los campos  conservan su valores entre llamadas a métodos.

Se puede  comparar la forma en como funciona el método AltaMedicoHos, un método tiene   las declaraciones de las variables. Después de que el método AltaMedicoHos termina, las variables salen de ámbito y se pierden sus valores.

6. Presionamos F5 para ejecutar el código. Al hacer clic en el botón Mostrar página. Los resultados se muestran aquí:

programa orientado a objetos



Al hacer clic en Aceptar y, a los títulos de los libros se muestran en un cuadro de mensaje, como se muestra aquí:

Hacer clic en Aceptar y, a continuación, cerrar la aplicación.
Hemos creado una clase,
CHospital, y dos instancias de la misma.


Cómo usar el visor de Clases


El entorno de programación permite obtener una vista del árbol de la estructura de clases del proyecto, los espacios de nombres y clases. La Vista de clases puede compartir la misma ventana que el Explorador de soluciones. En el menú Ver, hacer clic en Vista de clases para abrir la Vista de clases. La Vista de clases ampliado se muestra a continuación.



visor de clases


El nodo de más alto nivel representa el proyecto, Hospital. El siguiente nivel de nodos representa los espacios de nombres en el proyecto. Un proyecto puede contener varios espacios de nombres, en este caso, sólo hay uno. El espacio de nombres del proyecto consta de tres clases: la clase que hemos creado,
CHospital, otra que crearemos posteriormente CPersona y la clase para el formulario Windows Forms, frmPrincipal. La clase CHospital contiene cuatro campos privados, representados por bloques de color azul con un candado. La clase también contiene las cuatro respectivas propiedades. Representadas por una mano sosteniendo un formulario. Además, la clase contiene un método, AltaMedicoHos con dos parámetros objeto que devuelven un booleano. El método está representado por un bloque de color púrpura.
Todas las clases en Visual Basic son implícitamente un objeto de una clase base


Añadir el método UbicarPaciente  a la clase CHospital


1. Añadir el siguiente código a la clase CHospital:

Esto crea un array de códigos de Sala para el hospital y su propiedad para acceder a él.
Private m_salas() As String

Public Property Sala(ByVal i As Integer) As Integer
        Get
            Return m_salas(i)
        End Get
        Set(ByVal value As Integer)
            m_salas(i) = value
        End Set
    End Property

Public Function UbicarPaciente(ByVal Nom_Paciente As CPersona, ByVal Cod_Sala As CHospital, ByVal i As Integer) As Boolean

        Dim Reg As RDO.rdoResultset
        Dim strSQL As String

        Reg = Nothing

        On Error GoTo Errores_UbicarPaciente
        strSQL = "INSERT INTO dbo.tbPacSal (strId_PAC,strID_SAL) VALUES (" & Nom_Paciente.Codigo & "," & Cod_Sala.Sala(i) & ")"

        glbBaseDatos.Execute(strSQL)
        Reg.Close()

        Return True

Errores_UbicarPaciente:
        Return False
 End Function

Crear el programa Hospital


Ahora es el momento de escribir el código y probar la aplicación completa.

Conectar a la base de datos el combo box para mostrar el campo strNombre de TbHospital


Resumen


Para

Crear una instancia de una clase
Inicializar la variable usando la palabra new

Dim Hospital1 as New CHospital()

Establecer una propiedad de la instancia

Dim Hospital1 as New CHospital()
Hospital1.Salas = 25

Llamar a un método de la clase.

Dim Hospital1 as New CHospital()
Dim Num_Sala As String
Num_Sala = Hospital1.Sala(3)



viernes, 19 de abril de 2013

Principios de la programación orientada a objetos

Introducción

La programación orientada a objetos (POO) o por sus siglas en inglés (OOP) es un paradigma que enfoca la programación como si trabajásemos con objetos del mundo real, esto es muy atractivo desde el punto de vista de la clasificación y análisis de las partes que integrarán un programa pues es posible pensar en objetos del mundo real y sus interacciones entre ellos.

Así pues el concepto más importante de dicho paradigma es la Clase que establece la definición genérica de un Objeto o Instancia dentro de un programa, en el mundo real una clase es un Coche, un Animal, una Factura o cualquier cosa tangible o intangible del mundo real.

El objeto o instancia es la ocurrencia concreta de la clase. Así, mi coche es un objeto de la clase coche, un coche tiene 4 ruedas, un volante, un motor, faros, etc, etc. Mi coche particular es de un modelo concreto, es rojo o amarillo, tiene x kilómetros pero hay muchos coches concretos, cada uno con sus atributos, así una clase es un Molde que establece las Propiedades (color, marca, modelo) de cada coche concreto, objeto.
Además de propiedades un coche puede interaccionar con el mundo, por ejemplo puede acelerar, frenar, girar a la derecha a izquierda, este tipo de interacción se llama Método o Función y se define en cada clase junto con las propiedades.
                             
principios programación orientada a objetos

De este modo tenemos la clase coche con las propiedades color, marca, modelo, etc y los métodos acelerar, frenar, girar. Todo esto se encapsula y sirve de molde para implementar diferentes objetos u ocurrencias concretas, coche azul marca X que acelera de 0 a 100 en 7 segundos, etc, etc.
La OOP nos permite pensar en el mundo real y diseñar inmediatamente el código que maneje cualquier información.  Podemos pensar en una clase Factura que tiene unas propiedades: Importe, datos de cliente, datos de cabecera, etc y unos métodos: Imprimir, borrar, grabar, etc.
Toda esta operativa se programa en un mismo módulo (Encapsulación) y ya no es necesario tocar  pues permite crear un código de cliente que opere con los objetos  de cada clase sin necesidad de tocar el código de las clases.

Las clases soportan la Herencia, Un Animal puede ser un perro o un gato, del mimo modo que la clase animal puede derivarse en otras clases perro o gato que generen propiedades concretas de perro o gato pero posean los mismos métodos (como comer) aunque definidos de forma diferente.(Polimorfismo)
Los métodos pueden cambiar los atributos o propiedades de un objeto, así por ejemplo si tengo Un objeto cuadrado con un valor del lado y uso el método crecer puedo cambiar su valor del lado.
La encapsulación permite la reutilización del código, la clase Imprimir, si está bien diseñada se puede utilizar para imprimir cualquier cosa de tal modo que al programar ya nunca tendremos que programar de nuevo dicha operativa y bastará con escribir  NombreObjeto.Imprimir.
Resumiendo: Un programa orientado a objetos tiene una serie de Moldes (Clases) que contienen la información genérica de cada objeto, (Métodos y Propiedades) dentro de un mismo contenedor (Encapsulación), las clases permiten la herencia y por tanto definir los mismos métodos de diferente forma (Polimorfismo). Cada Ocurrencia concreta de una clase se llama objeto o Instancia y representa un objeto concreto del mundo real como un coche azul o una factura del cliente X por importe Y.