domingo, 10 de marzo de 2019

1. SQLITE

DBMS SQLITE

Para descargar SQLite para windows ve a su sitio oficial, una vez ahí dirígete a descargas.


La opción a descargar:



Después se mostrara un archivo en zip, Extrae ficheros para luego ir a C:\, ahí crea una carpeta, donde pondrás los archivos.



Ahora ve a Panel de Control/Sistema y seguridad/ Sistema/Configuración avanzada del sistema, para agregar la variable de entorno. 


Agrega en Path C:\sqlite3



Finalmente aceptar, para guardar los cambios.


Referencia:

https://www.sqlite.org/download.html

lunes, 4 de marzo de 2019

1.4 Nuevas tecnologías y aplicaciones de los sistemas de bases de datos


Los sistemas orientados a los datos se caracterizan porque los datos no son de una aplicación sino de una Organización entera que los va a utilizar; se integran las aplicaciones, se diferencian las estructuras lógicas y físicas. El concepto de relación cobra importancia. Originalmente las aplicaciones cubrían necesidades muy específicas de procesamiento, se centraban en una tarea específica. Las bases de datos evitan las inconsistencias que se producían por la utilización de los mismos datos lógicos desde distintos archivos a través de procesos independientes.

El mundo real considera interrelaciones entre datos y restricciones semánticas que deben estar presentes en una base de datos. No solo debe almacenar entidades y atributos, sino que también debe almacenar interrelaciones entre datos.
La redundancia de datos debe ser controlada, pero si se admite cierta redundancia física por motivos de eficiencia.
Pretenden servir a toda la organización.
La independencia de los tratamientos sobre los datos y estos mismos, ha tenido una enorme influencia en la arquitectura de los SGBD.
La definición y descripción del conjunto de datos contenido en la base debe ser única e integrada con los mismos datos.
La actualización y recuperación de las bases de datos debe realizarse mediante procesos incluidos en SGBD, de modo que se mantenga la integridad, seguridad y confidencialidad de la base.
Las limitaciones de los sistemas orientados a archivos puramente secuenciales no los privaron de ser herramientas eficaces para producir pagos, facturas y otros informes una o dos veces al mes. Sin embargo, para ejecutar muchas tareas rutinarias en los negocios se necesita el acceso directo a los datos -La capacidad de tener acceso y procesar directamente un registro dado sin ordenar primero el archivo o leer los registros en secuencia.

Los archivos de acceso directo permiten la recuperación de los registros aleatoriamente, a diferencia de los de acceso secuencial. Sin embargo, los archivos de acceso directo solamente proporcionaron una solución parcial. Para lograr una solución más completa a estos problemas fue necesario introducir los sistemas de gestión de bases de datos.
Los usuarios cada vez necesitamos más recursos en tecnología, es por eso que surgen las evoluciones de sistemas, y por ende de las bases de datos, es impresionante ver como la información se procesa en microsegundos, mientras se realizan transacciones al mismo tiempo en la misma base de datos en lugares y estados diferentes, la importancia de la información es lo que ha llevado a que las empresas y otras instituciones inviertan para la seguridad de sus datos, el futuro de la tecnología es incierto debido a que algunas proyecciones de tecnología estimadas hace 5 años y proyectadas hasta los próximos 10 años ya son una realidad, la tecnología avanza a pasos agigantados es por eso que no debemos quedarnos atrás y apostar a las nuevas tecnologías que sin duda harán más fácil la vida de las personas que tratamos con la administración y seguridad de la información.

Tanto en uno como en otro papel, la tecnología de bases de datos se ve sometida a numerosos cambios tanto desde el punto de vista empresarial como tecnológico. Las nuevas aplicaciones están llevando hasta el límite a los sistemas de bases de datos disponibles, al incorporar documentos multimedia. Imágenes, series temporales, datos activos, grandes cantidades de información (no olvidemos que los datos se expanden hasta llenar el espacio disponible), etc.
Por otro lado la mejora espectacular en el número de instrucciones de máquina ejecutables en un segundo, coste de procesador, coste de la unidad de memoria secundaria y de memoria principal, numero de bits transmitidos por unidad de coste y por segundo, obligan a los SGBD a evolucionar para aprovechar estos avances en el hardware y las comunicaciones. En este sentido la explosión de Internet, el World Wide Web, y las “autopistas de la información” (informationhighWay), cuya utilización crece a un ritmo vertiginoso, están imponiendo un nuevo escenario para el desarrollo de los sistemas de información.


Los sistemas de bases de datos, como elemento clave de los sistemas de información. Deben jugar un papel fundamental en esta explosión de información, si no quieren "ser arrollados en /as autopistas de la información”, como advertía David De Witt. En el VLDB de 1995.Las bases de datos terminarán siendo como el teléfono: fáciles de usar (en cuanto interfaces, rendimiento, etc.), conectado con cualquier otra cosa alrededor del mundo, con estándares reconocidos en todas partes, consistentes y fiables y con mayores funcionalidades. Las nuevas tecnologías de bases de datos permitirán hacer realidad aplicaciones hoy en día inimaginables tanto por el volumen de datos que manejarán (serán auténticasVLDB2) como por las facilidades para su explotación.




jueves, 21 de febrero de 2019

1. Mi primer proyecto django(tutorial djangogirls)

Mi primer proyecto



En esta ocasión vemos la creación de un proyecto.


Creamos una carpeta djangogirls.


 En la carpeta djangogirls, ahora creamos un proyecto con el siguiente comando:


 django-admin starproject nombre_proyecto

Si muestra que no reconoce el comando


Se seguirá lo siguiente:


Ya se ha creado con éxito el proyecto1, si vamos a pycharm nos mostrara una estructura como esta:



Ya que nos encontramos en la carpeta djangogirls, nos dirigimos a setttings donde cambiaremos la configuración cambiando la linea de código "en-us" a "es-mx", a partir de ahora el sitio se nos mostrara en español.





Configurar una base de datos

La base de datos que se utilizara sera la de defecto:


Para hacer una migración, no dirigimos nuevamente a consola.Accedemos a proyecto1 y ejecutamos el siguiente comando:
python manage.py migrate


Inicio de servidor


En la consola, ahora vamos a inicia el servidor, para ellos con el comando:

python manage.py runserver




Ahora comprobamos el sitio se este ejecutando, abrimos el navegador (chrome).

Mientra el servidor se este ejecutando, no se pondrán ejecutar comando adicionales, para cerrar ctrl+c.

Crear una aplicación


Para mantener todo en orden creamos una app blog, para crea un aplicación ejecutamos el siguiente comando en consola:
 django-admin startapp nombre_app


Al ir a pycharm veras que se ha creado un  nuevo directorio blog.



Después de crearla necesitamos decirle a django que debe utilizarla, eso se hace en settings,agregamos una linea blog, debemos tener algo así:


Crear el modelo del Post


En el archivo blog/models.py, borramos todo y escribimos este código:

from django.db import models
from django.utils import timezone


class Post(models.Model):
    author = models.ForeignKey('auth.User', on_delete=models.CASCADE)
    title = models.CharField(max_length=200)
    text = models.TextField()
    created_date = models.DateTimeField(
            default=timezone.now)
    published_date = models.DateTimeField(
            blank=True, null=True)

    def publish(self):
        self.published_date = timezone.now()
        self.save()

    def __str__(self):
        return self.title



  • models.CharField, así es como defines un texto con un número limitado de caracteres.
  • models.TextField, este es para texto largo sin límite.
  • models.DateTimeField, este es fecha y hora.
  • modelos.ForeignKey, este es una relación (link) con otro modelo


Tenemos que hacer saber a django que hemos realizado cambios, escribimos el siguiente comando:

 python manage.py makegrations blog


Se verá asi:


Ahora ejecutamos lo siguiente:

 python manage.py migrate blog


Nuestro modelo Post ya esta en nuestra base de datos.


Administrador django


Para agregar, editar y borrar los posts que hemos modelado, usaremos el administrador (admin) de Django.

Abre el fichero blog/admin en pycharm y remplaza el código con esto:

Código:

from django.contrib import admin
from .models import Post

admin.site.register(Post)




Ahora ejecutamos python manage.py runserver en la consola para correr el servicio web. Ve a tu navegador y escribe la dirección http://127.0.0.1:8000/admin/. Veras una página de inicio de sesión como esta:




Para iniciar sesión, deberás crear un superusuario (superuser), que es un usuario que tiene control sobre todo el sitio. Vuelve a la línea de comandos, escribe python manage.py createsuperuser y pulsa enter.


Nota: Al momento de ingresar el password, se mostrara vació, como si no ingresaras la contraseña.

Una vez registrado el usuario, volvemos a consola y ejecutamos el comando python manage.py runserver para correr el servidor, vamos navegador http://127.0.0.1:8000/admin/ nos mostrara.

Aquí vamos a ingresar el nombre de usuario, tanto como el password.



Nos mostrará lo siguiente.

Podemos agregar varios POST, y vemos que el modelo que se ha creado son los campos que nos permite llenar esta aplicación.



Referencia:
https://tutorial.djangogirls.org/es/django_admin/

martes, 19 de febrero de 2019

1. Partes que conforman el proyecto

Archivo settings



Link

Creación de proyecto y app dentro de proyectouno



Entra a servidor:



Si vamos a interprete python (pycharm), en settings (file)



Estructura y como funciona 

Módulo os


El módulo os nos permite acceder a funcionalidades dependientes del Sistema Operativo. Sobre todo, aquellas que nos refieren información sobre el entorno del mismo y nos permiten manipular la estructura de directorios (para leer y escribir archivos).

os.path

El módulo os también nos provee del submódulo path (os.path) el cual nos permite acceder a ciertas funcionalidades relacionadas con los nombres de las rutas de archivos y directorios.
os.path.abspath(path)
Ruta absoluta: Devuelve una versión normalizada de la ruta de acceso . 

os.path.dirname( path )
Devolver el nombre del directorio de la ruta camino (path).


import os # abrir archivos/ para salidas del so

Si intentamos hacer una modificación a la sección de import os, te muestra error al conectar con el servidor.




Debug permite ver la pagina. Mas información.



INSTALLED_APPS (aplicación instaladas)



Probar quitando admin.



Notaras que no podrás conectar al servidor.


TEMPLATES: De la app que son archivos html donde hay configuraciones de autentificación.




Base de datos (Database): En donde se puede configurar los diferentes tipos de bases de datos. También hay una liga de documentación de la base de datos que ofrece, donde te puede ayudar.




La base de datos sqlite3  esta por default, pero este se puede cambiar a otra base de datos que mejor te parezca.


Autentificación de validadores de contraseñas (AUTH_PASSWORD_VALIDATORS): Con esto ya no nos preocupamos, por que consta de validadores de password que usa la aplicación,viene varias restricciones como mayor que 8 caracteres, números consecutivos, etc. De igual manera encontramos la liga de la documentación que habla de los password de validación.




Validadores: Verifican que no sean contraseñas débiles.
Documentación


Language_codeSe tiene una configuración de lenguaje de la aplicación, por default contiene ingles, pero se puede cambiar el formato, a otro lenguaje.




Otros aspectos son archivos fijos imágenes, css, diseño, se puede configurar.
Documentación para más informes de la visualización de nuestra pagina.



urls




En urlpatterns en donde tenemos el apartado que dice "admin". Hace referencia a los url podemos cambiar a admin a inicio. Con esto podemos ingresar http://127.0.0.1:8000/admin/



Si cambiamos admin por inicio ahora ingresa por http://127.0.0.1:8000/inicio/. En cambio al ingresar con admin  no se encontrará.






Archivo alumnos|

Nos dirigimos a la aplicación alumnos, donde se encuentra e archivo admin.

Admin: Es donde se encuentra el administrador.

Models: Se encuentra las tablas a nivel de base de datos (sqlite3), estas tablas van a migrar con migrate.

Test: Para hacer pruebas a nuestra aplicación. Se pueden hacer pruebas de código.

Vistas: view de la aplicación, que es lo que ve el usuario, cliente. Liga de documentación de vistas.

Apps:



Unidad 3 Configuración y administración del espacio en disco.(Investigacion)

Configuración y administración del espacio en disco. Para la gestión del almacenamiento de una base de datos existen 4 conceptos bien ...