Un poco de todo lo relacionado al area de la informatica... programacion, ocio, configuraciones, en fin herramientas que pueden ser utiles para un estudiante de ingenieria en ciencias y sistemas.

domingo, 14 de octubre de 2012

On 20:21 by Unknown in    No comments
Despues de meses de ausencia voy a tratar de publicar la mayoria de trabajos que he realizado (bueno, la mayoria de los que funcionan xD) en especial codigo (metodos, funciones, etc) que pueda ser de utilidad a la hora de realizar una aplicacion y empezar a incluir un poco de teoria relacionada a la informatica en el blog para tener una base tambien sobre lo que se realiza.

El siguiente manual constara de 3 partes y sera sobre diferentes tipos de consultas o "queries" que podemos realizar con sql, en este caso se trabajo con SQL Server 2005.


MANUAL SQL

SQL (structure query languaje) lenguaje de consultas estructurado establecido claramente como el lenguaje de alto nivel estandar para las bases de datos relacionales.
Ocupa tres tipos de sentencias con objetivos particulares los cuales son: DDL, DML, DCL.

DDL (Lenguaje de definicion de datos): Grupo de sentencias que soportan la declaracion de objetos que pertenecen a la BD. por ejemplo instrucciones tales como: Create, alter, drop, etc.

DML (Lenguaje de Manipulacion de Datos): permite manipular los datos almacenados en la base de datos, instrucciones tales como: insert, update, delete, etc.

DCL (Data control languaje): Controla las funciones de administracion que realiza el DBMS, tales como seguridad y atomicidad. Instrucciones tales como: Rollback, Revoke, grant ,etc.

Vamos a iniciar con los ejemplos:
Creacion de una base de datos completa: aqui se indica ubicacion, tamano, tamano maximo y como crecera la base de datos.

create database ventas on primary(
name = ventas,
filename = 'C:\Mis_bases\ventas.mdf',
size = 5MB, Maxsize = 8 MB,
filegrowth = 1 mb
)
LOG ON
(
name = ventas_log,
filename = 'C:\Mis_bases\ventas.ldf',
size = 5MB, Maxsize = 8 MB,
filegrowth = 1 mb
)
la forma "corta" seria  create database ventas;

CREAR UNA TABLA:
 Se crea la tabla "Registro" con cuatro campos.

create table Registro
(Nombre_completo varchar(75),
Pais_de_nacimiento varchar (25),
correo_e varchar (50),
contrasena varchar(20));


LIGADURAS

Las ligaduras nos ayudaran a dejar la restriccion de las entradas al DBMS y no tener que hacer esto en la aplicacion.
1.     Por Defecto: Asigna un valor especifico a una columna cuando este valor no sea dado, es decir asigna un valor por default a un campo en el cual no ingresemos un valor. Ej:


create table empleados 
(
id int primary key,  --id = pk
edad int not null default 18 --edad automaticamente toma el valor 18 si no se ingresa nada
);

 
   2. Por Validacion: Especificamos los valores que se aceptaran para un campo, es decir los valores que    
        el DBMS aceptara para que le sean ingresados. Ej:


create table empleados 
(
id int primary key,  --id = pk
edad int not null default 18 --edad automaticamente toma el valor 18 si no se ingresa nada
Sexo varchar (1) check (Sexo in ('f', 'm')) -- se verifica que el valor ingresado sea f o m
)


    3. Por referencia: Especifica los valores que son aceptados por una columna y estos valores son    
        tomados de una columna que pertenece a otra tabla. Ej:


create table empleados 
(
id int primary key,  --id = pk
edad int not null default 18 --edad automaticamente toma el valor 18 si no se ingresa nada
Sexo varchar (1) check (Sexo in ('f', 'm')), -- se verifica que el valor ingresado sea f o m
no_func int references trabajos (func_id)) -- toma el valor de func_id de la tabla "trabajos"

create table trabajos
(id intfunc_id int unique)  --unique no permite duplicados es una llave alternativa

LLAVA PRIMARIA: Un campo unico que identifica de manera inequivoca a un registro.
LLAVE FORANEA: Se define una columna o combinacion de columnas en las cuales su valor correspondera al valor de la llave primaria de la misma tabla o de otra tabla. Ej:

create table cliente
(email varchar (30) unique not null,
numcli int not null primary key)

create table pedido(
numped int not null primary key,
numerocli int not null, foreign key (numerocli)
references cliente (numcli)
)
--NOTA
--Primero crear las tablas que solo tienen llave primaria, luego las que tienen
--llave foranea.







0 comentarios:

Publicar un comentario