Hola, siguiendo con nuestra guía de SQL hoy vamos a ver el comando AUTO INCREMENT / AUTO INCREMENTAL
MySQL:
CREATE TABLE Usuarios
(
ID int NOT NULL AUTO_INCREMENT,
NOMBRE varchar(255),
PRIMARY KEY (ID)
);
Por defecto el AUTO INCREMENTAL inicia en 1 y va aumentando de a 1 por cada nuevo registro que se inserta en la tabla.
Si queremos que nuestra tabla el auto incrementar comience con otro valor tenemos que modificar la tabla mediante nuestro comando amigo ALTER TABLE.
ALTER TABLE Usuarios AUTO_INCREMENT=300;
ORACLE:
Para ORACLE se crea una tabla especial de secuencias:
CREATE SEQUENCE Seq_Usuario MINVALUE 1 START WITH 1 INCREMENT BY 1 CACHE 10
Definimos:
START WITH: Es el valor inicial;
MINVALUE: Es el valor mínimo.
INCREMENT BY: Es la cantidad que se va autoincremental por insert.
CACHE: El valor de cache es una opción que muestra la cantidad de valores almacenados en memoria para un acceso rápido.
Para realizar el insert en la tabla Usuarios sera asi:
INSERT INTO Persona (ID,APELLIDO) VALUES (Seq_Usuarios.NEXTVAL,'Murray');
Fíjese que para pedirle a la tabla de secuencias el próximo valor se utiliza la función NEXTVAL
SQL SERVER:
Para SQL SERVER es lo mismo que MySQL, pero cambia la palabra AUTO_INCREMENT por IDENTITY, indicando dentro de IDENTITY con un paréntesis el valor inicial, seguido por coma y poniendo el valor incremental.
CREATE TABLE Usuarios
(
ID int NOT NULL IDENTITY(1,1),
NOMBRE varchar(255),
PRIMARY KEY (ID)
);
ACCESS:
Para ACCESS es lo mismo que SQL SERVER, pero cambia la palabra IDENTITY por AUTOINCREMENT, indicando dentro de IDENTITY con un paréntesis el valor inicial, seguido por coma y poniendo el valor incremental.
CREATE TABLE Usuarios
(
ID int NOT NULL AUTOINCREMENT(1,1),
NOMBRE varchar(255),
PRIMARY KEY (ID)
);
SQL - AUTO INCREMENT
Generalmente el AUTO INCREMENT / AUTO INCREMENTAL se usa para tener una PRIMARY KEY de una tabla mediante la generación automática de un numero secuencial único en la tabla.SQL - Sintaxis AUTO INCREMENT
La sintaxis del AUTO INCREMENT es muy fácil y solo varia de acuerdo al sistema de base de datos:MySQL:
CREATE TABLE Usuarios
(
ID int NOT NULL AUTO_INCREMENT,
NOMBRE varchar(255),
PRIMARY KEY (ID)
);
Por defecto el AUTO INCREMENTAL inicia en 1 y va aumentando de a 1 por cada nuevo registro que se inserta en la tabla.
Si queremos que nuestra tabla el auto incrementar comience con otro valor tenemos que modificar la tabla mediante nuestro comando amigo ALTER TABLE.
ALTER TABLE Usuarios AUTO_INCREMENT=300;
ORACLE:
Para ORACLE se crea una tabla especial de secuencias:
CREATE SEQUENCE Seq_Usuario MINVALUE 1 START WITH 1 INCREMENT BY 1 CACHE 10
Definimos:
START WITH: Es el valor inicial;
MINVALUE: Es el valor mínimo.
INCREMENT BY: Es la cantidad que se va autoincremental por insert.
CACHE: El valor de cache es una opción que muestra la cantidad de valores almacenados en memoria para un acceso rápido.
Para realizar el insert en la tabla Usuarios sera asi:
INSERT INTO Persona (ID,APELLIDO) VALUES (Seq_Usuarios.NEXTVAL,'Murray');
Fíjese que para pedirle a la tabla de secuencias el próximo valor se utiliza la función NEXTVAL
SQL SERVER:
Para SQL SERVER es lo mismo que MySQL, pero cambia la palabra AUTO_INCREMENT por IDENTITY, indicando dentro de IDENTITY con un paréntesis el valor inicial, seguido por coma y poniendo el valor incremental.
CREATE TABLE Usuarios
(
ID int NOT NULL IDENTITY(1,1),
NOMBRE varchar(255),
PRIMARY KEY (ID)
);
ACCESS:
Para ACCESS es lo mismo que SQL SERVER, pero cambia la palabra IDENTITY por AUTOINCREMENT, indicando dentro de IDENTITY con un paréntesis el valor inicial, seguido por coma y poniendo el valor incremental.
CREATE TABLE Usuarios
(
ID int NOT NULL AUTOINCREMENT(1,1),
NOMBRE varchar(255),
PRIMARY KEY (ID)
);
SQL - AUTO INCREMENT - Sintaxis AUTO INCREMENT
Reviewed by El lado oscuro de java
on
julio 07, 2014
Rating:
Muchas Gracias !! , me sirvio !!. Saludos :- )
ResponderEliminarEste comentario ha sido eliminado por un administrador del blog.
ResponderEliminarMe sirvio mucho, muchas gracias...
ResponderEliminar