Tutorial: Creando una base de datos desde cero con Sql Server

Comenzaremos este tutorial de SQL Server, en mi caso estaré trabajando con SQL Server 2014 en su version Express, aquí aprenderemos a crear una base de datos, crear una tabla, relacionarla con otra, y a crear llaves foráneas.

En el siguiente tutorial vamos a crear una base de datos simulando las notas de los estudiantes en dos materias solo para ejemplificar como seria una libreta de notas de dicho estudiante.

Primero creamos Una base de datos damos click derecho en donde nos dice "Database" luego hacemos click donde nos dice "New Database..."

Damos el nombre de la base de datos en este caso "Escuela"

Ahora bien, le hacemos click derecho a la base de datos que acabamos de crear, eventualmente hacemos click donde nos dice "New Query", en este caso estaré trabajando con código, ya que también permite hacerlo por click en modo gráfico, pero esto es cuestión de gustos a mi me gusta hacerlo por código que así llevo un control de lo que va sucediendo en la base de datos.

lo siguiente es crear las tablas y relacionarlas, primero creamos la tabla que la llamaremos estudiantes con los campos cédula que en este caso sera nuestra llave primaria, también tenemos el campo nombre y apellido de tipo varchar en mi caso siempre le pongo 100 de longitud por si el nombre es muy largo y no quiero queremos que mas tarde nos cause conflicto la longitud.

Importante recuerden ponerle la longitud a al tipo Varchar si esto no se cumple entonces el manejador de la base de datos nos mandara un error el cual no dice que los datos se truncan.

Creamos las tablas Ciencias_Naturales y Matemáticas ambas con los mismos campo todos en not null para que se nos vayan datos nulos y sea obligatorio que se introduzca un datos en ese campo.

Ahora vamos a relacionar las tablas Matemáticas y Ciencias_Naturales con la table Estudiante asi podremos ver las notas del estudiante para relacionarlas hay dos formas la primera que es el que uso porque luego no tengo que hacer el alter con la llave foránea que quiero poner el tabla

en este caso declaramos el campo cédula varchar con su longitud en este caso es 100 y le indicamos que va hacer una llave foránea con la palabra reservada "foreign key"y se usa la palabra reservada "references" para indicar de que tabla viene ese campo foráneo, en nuestro caso el campo cédula viene de la tabla estudiantes, le indicamos la clausula "on delete cascade on update cascade" esto en caso de que se modifique la cédula de "pepe" o se borre la cédula "pepe", se modificara eventualmente en todas las llaves foráneas donde aparezca "pepe".

Aqui les dejo el codigo:

create table estudiantes (

cedula varchar (100) primary key,

nombre varchar (100) not null,

apellido varchar (100) not null

)

create table Ciencias_naturales(

Ejercicio1 float not null,

Ejercicio2 float not null,

Ejercicio3 float not null,

tarea1 float not null,

tarea2 float not null,

tarea3 float not null,

examen float not null,

cedula varchar (100) foreign key (cedula) references estudiantes (cedula) on update cascade on delete cascade

)

create table Matematicas (

Ejercicio1 float not null,

Ejercicio2 float not null,

Ejercicio3 float not null,

tarea1 float not null,

tarea2 float not null,

tarea3 float not null,

examen float not null,

cedula varchar (100) foreign key (cedula) references estudiantes (cedula) on update cascade on delete cascade

)

Ahora vamos a insertar datos en las tres tablas que creamos, insertaremos un estudiante llamado "pepe" de apellido "aguilar" con cedula "1-111-1234"

Importante los datos a la hora de insertar deben ir en el mismo orden que fueron creados ya que si no lo colocan en el mismo orden en caso de que todos los datos sean iguales los datos entraran en desorden y tendrán que borrar los mismo para poder insertarlos de nuevo, ahora en caso de que se inserten los datos en desorden con diferentes tipos de datos entonces el manejador de la base de datos nos mandara error.

aquí les dejo el código

Insert into estudiantes (cedula ,nombre ,apellido )

values ('1-111-1234','pepe','aguilar')

insert into Ciencias_naturales (Ejercicio1 ,Ejercicio2 ,Ejercicio3 ,tarea1 ,tarea2 ,tarea3 ,examen,cedula )

values (3.5,4.5,5.0,3.2,2.5,3.0,4.5,'1-111-1234')

insert into Matematicas (Ejercicio1 ,Ejercicio2 ,Ejercicio3 ,tarea1 ,tarea2 ,tarea3 ,examen,cedula )

values (2.5,4.5,5.0,3.5,4.1,3.2,5.0,'1-111-1234')

ahora bien si queremos ver lo que hemos insertado solo hace un "select * from" como lo indico en la imagen, podemos observar que la cédula de "pepe" aparece en la tabla de Matemáticas y en la de Ciencias_Naturales ya que mediante la cédula podremos saber a que estudiante pertenecen esas notas

esto es todo, si tiene alguna duda no olviden comentar y responderé a sus dudas, mas adelante estaré haciendo mas tutoriales de procedimientos almacenados, disparadores y vistas.

0/Comments = 0 Text / Comments not = 0 Text

Su opinión es importante, lo invitamos a compartir sus comentarios