Saltar al contenido

Insertar datos en una tabla Sql Server

En este artículo aprenderás a insertar datos en una tabla en Sql Server a través de código y de forma gráfica usando management studio; anteriormente ya hemos creado una Base de Datos y sus respectivas tablas, además dichas tablas están relacionadas, es decir que tiene sus llaves primarias y foráneas; en consecuencia debemos tener presente que uno de los primeros aspectos a tomar en cuenta al momento de realizar inserciones es la estructura de la tabla.

Como insertar datos en tablas de Base de Datos Sql Server

En esta ocasión tomaremos como referencia la tabla Alumnos de nuestra Base de Datos creada, esta tabla tiene 5 columnas, que son: Id, Nombre, Apellido, Direccion y Fecha_nacimiento. A continuación, muestro la tabla de forma gráfica:

insertar datos en tablas relacionadas sql server

Para agregar datos a una tabla es necesario hacer uso de la instrucción Insert into, que es uno de los comandos más usado del código Sql. Para insertar los registros lo podemos hacer de uno en uno, o podemos agregar varios registros a través de una misma instrucción.

Sintaxis de instrucción Insert Sql

La sintaxis para insertar un registro en una tabla es la siguiente:

INSERT INTO “Nombre_Tabla” (“columna1”, “columna2”, etc)
VALUES (“Dato1”, “Dato2”, etc);

Explicación:

Nombre_tabla: Es el nombre de la tabla en la que vamos a insertar registros.
columna1, columna2,..: Son las columnas de la tabla en la que vamos a insertar datos.
“Dato1”, “Dato2” ,..: Son los valores que vamos a guardar en cada columna especificada.

Es importante mencionar que la sintaxis vista anteriormente se puede acortar en los casos que vamos a insertar registros a todas las columnas, ya que podemos hacerlo de la forma siguiente:

INSERT INTO “Nombre_Tabla”
VALUES (“Dato1”, “Dato2”, etc);

En los casos que hacemos uso de esta sintaxis, debemos tomar en cuenta el orden de las columnas y además debemos enviar todos los datos según la cantidad de columnas de la tabla, ya que dicha sintaxis indica que se van agregar registros a todas las columnas. Por lo tanto debemos respetar el orden que especificamos en las columnas y en values enviar los datos exactamente como los hemos especificado en las columnas.

Existe otra opción de insertar registros y es mencionando columnas específicas, para este caso debemos tomar en cuenta que las columnas que omitimos deben tener la propiedad null, es decir que aceptan valores nulos.

Agregar datos a una tabla sql

A continuación vamos a realizar algunos ejemplos en los que agregaremos registros a la tabla alumnos:

Nota: Si esta serie de artículos te están pareciendo interesantes, te invitamos a que accedas al curso completo sobre SQL SERVER. ➡️ Pincha AQUI ✔️

INSERT INTO Alumnos (Id, Nombre, Apellido, Direccion, Fecha_nacimiento) 
VALUES ('0101', 'Franklin', 'Garcia', 'avenida 01', '12/01/80')
INSERT INTO Alumnos VALUES ('0102', 'Juan', 'Hernandez', 'avenida 01', '12/01/80') 
INSERT INTO Alumnos (Id, Nombre, Apellido) VALUES ('0103', 'Juan', 'Perez') 

En la primera instrucción insertamos un registro a todas las columnas, citándolas una a una.

El segundo ejercicio, aplicamos el acortamiento de la instrucción y omitimos especificar las columnas, automáticamente se entiende que insertaremos datos en todas las columnas

El tercer ejemplo no hemos asignado valores a las columnas Direccion y Fecha_Nacimiento, por tanto tomará automáticamente el valor NULL.

Nota: Si una columna está definida como NOT NULL (es decir, que no admite valores vacíos), en ese caso debemos especificar y enviar siempre un dato para insertar. Caso contrario se producirá un error al ejecutar la instrucción INSERT en Management Studio.

Insertar varios registros en un solo insert

Si queremos agregar varios registros a través de un un mismo insert, basta con agregar una coma en los valores que le enviamos en values, y especificar los datos a insertar. Ejemplo:

INSERT INTO Alumnos (Id, Nombre, Apellido, Direccion, Fecha_nacimiento) 
VALUES 
('0104', 'Franklin2', 'Garcia', 'avenida 01', '12/01/80'), 
('0105', 'Franklin3', 'Garcia', 'avenida 01', '12/01/80')

Insertar datos en tablas relacionadas

La Base de Datos creada tiene mas de dos tablas relacionadas, en ese caso hay ciertos aspectos que debemos tomar en cuenta:

Si revisamos el diagrama nos podemos dar cuenta que la tabla inscripción es la que recibe las llaves foráneas de las tablas Alumnos, Profesor y Asignatura. Por lo tanto, la lógica para agregarles registros es que primero debemos agregar asignaturas, agregar profesores y agregar alumnos; posteriormente podemos insertar datos a la tabla Inscripción, ya que los campos que están en la tabla inscripción (que relacionan las demás tablas), tiene las llaves primarias e inicialmente deben existir en sus respectivas tablas de origen, es decir el IdAsignatura debe estar agregado en la tabla Asignatura.

Insertar datos en dos tablas relacionadas

A continuación agregaremos registros a las dos tablas que se relacionan con la tabla inscripción, y que por el momento no tiene datos:

INSERT INTO Asignatura (Id, Nombre) VALUES ('BD01', 'Base de Datos 1')
INSERT INTO Profesor VALUES ('PF01', 'Antonio','Perez', 'avenida 01', '12/01/80','Licenciado') 

Ya habiendo registrado datos en la tabla asignatura y profesor, podemos agregar datos a la tabla inscripcion, ya que deben ser datos agregados previamente:

INSERT INTO Inscripcion VALUES ('INS01', 'BD01','0101', 'PF01', '12/01/80') 

Si únicamente tuviéramos dos tablas relacionadas, la lógica seria la misma: primero debemos crear un registro en la tabla que tiene la llave primaria, y posteriormente debemos agregar un registro en la tabla que tiene la llave foránea.

Tutorial Insertar registros en Sql Server con Management Studio

A continuación te comparto el tutorial en el que desarrollamos la practica anterior, ademas aprendemos a insertar registros de forma gráfica con Management Studio:

Ver en Youtube

Entradas Relacionadas: