1. Crear una clave primaria en una tabla existente
En SQL Server, una clave primaria se utiliza para identificar de manera única cada fila en una tabla. La sintaxis para crear una clave primaria en una tabla existente es la siguiente:
ALTER TABLE nombre_tabla ADD CONSTRAINT nombre_constraint PRIMARY KEY (columna);
Donde:
- nombre_tabla es el nombre de la tabla en la que se desea crear la clave primaria.
- nombre_constraint es el nombre que se le dará a la restricción de clave primaria.
- columna es el nombre de la columna que se utilizará como clave primaria.
Por ejemplo, si tenemos una tabla llamada «clientes» y queremos crear una clave primaria en la columna «id_cliente», la sintaxis sería:
ALTER TABLE clientes ADD CONSTRAINT PK_clientes PRIMARY KEY (id_cliente);
Esto creará una clave primaria llamada «PK_clientes» en la tabla «clientes» utilizando la columna «id_cliente».
2. Especificar una columna como clave primaria
En SQL Server, también es posible especificar una columna como clave primaria al momento de crear la tabla. La sintaxis para hacer esto es la siguiente:
CREATE TABLE nombre_tabla ( columna1 tipo_dato PRIMARY KEY, columna2 tipo_dato, ... );
Donde:
- nombre_tabla es el nombre de la tabla que se desea crear.
- columna1 es el nombre de la columna que se utilizará como clave primaria.
- tipo_dato es el tipo de dato de la columna.
Por ejemplo, si queremos crear una tabla llamada «productos» con una columna «id_producto» como clave primaria, la sintaxis sería:
CREATE TABLE productos ( id_producto int PRIMARY KEY, nombre_producto varchar(50), precio decimal(10,2), ... );
Esto creará una tabla llamada «productos» con una columna «id_producto» como clave primaria.
3. Crear una clave primaria compuesta
En SQL Server, también es posible crear una clave primaria compuesta, es decir, una clave primaria que consta de varias columnas. La sintaxis para hacer esto es la siguiente:
ALTER TABLE nombre_tabla ADD CONSTRAINT nombre_constraint PRIMARY KEY (columna1, columna2, ...);
Donde:
- nombre_tabla es el nombre de la tabla en la que se desea crear la clave primaria compuesta.
- nombre_constraint es el nombre que se le dará a la restricción de clave primaria.
- columna1, columna2, … son los nombres de las columnas que se utilizarán como parte de la clave primaria compuesta.
Por ejemplo, si tenemos una tabla llamada «pedidos» y queremos crear una clave primaria compuesta en las columnas «id_pedido» y «id_cliente», la sintaxis sería:
ALTER TABLE pedidos ADD CONSTRAINT PK_pedidos PRIMARY KEY (id_pedido, id_cliente);
Esto creará una clave primaria compuesta llamada «PK_pedidos» en la tabla «pedidos» utilizando las columnas «id_pedido» y «id_cliente».
4. Crear una clave primaria con autoincremento
En SQL Server, es posible crear una clave primaria con autoincremento, lo que significa que el valor de la clave se generará automáticamente al insertar una nueva fila en la tabla. La sintaxis para hacer esto es la siguiente:
CREATE TABLE nombre_tabla ( columna1 tipo_dato IDENTITY(1,1) PRIMARY KEY, columna2 tipo_dato, ... );
Donde:
- nombre_tabla es el nombre de la tabla que se desea crear.
- columna1 es el nombre de la columna que se utilizará como clave primaria.
- tipo_dato es el tipo de dato de la columna.
Por ejemplo, si queremos crear una tabla llamada «empleados» con una columna «id_empleado» como clave primaria con autoincremento, la sintaxis sería:
CREATE TABLE empleados ( id_empleado int IDENTITY(1,1) PRIMARY KEY, nombre_empleado varchar(50), salario decimal(10,2), ... );
Esto creará una tabla llamada «empleados» con una columna «id_empleado» como clave primaria con autoincremento.
5. Eliminar una clave primaria
En SQL Server, es posible eliminar una clave primaria existente en una tabla. La sintaxis para hacer esto es la siguiente:
ALTER TABLE nombre_tabla DROP CONSTRAINT nombre_constraint;
Donde:
- nombre_tabla es el nombre de la tabla en la que se desea eliminar la clave primaria.
- nombre_constraint es el nombre de la restricción de clave primaria que se desea eliminar.
Por ejemplo, si queremos eliminar la clave primaria «PK_clientes» de la tabla «clientes», la sintaxis sería:
ALTER TABLE clientes DROP CONSTRAINT PK_clientes;
Esto eliminará la clave primaria «PK_clientes» de la tabla «clientes».