SQL_STUDY:12.SQL AUTO INCREMENTフィールド

免責事項:この記事はブロガーオリジナル記事です、続くBY-SAのCC 4.0を著作権契約、複製、元のソースのリンクと、この文を添付してください。
このリンク: https://blog.csdn.net/NumberOneStudent/article/details/102732534

要約:
さまざまな言語の使用自動インクリメントキーデータ

SQL AUTO INCREMENTフィールド

新しいレコードを生成します自動インクリメントは、一意の番号テーブルに挿入されます。

AUTO INCREMENTフィールド

私たちは通常、新しいレコードが挿入されるたびに、自動的にプライマリキーフィールドの値を作成して期待しています。

私たちは、テーブルで自動インクリメントフィールドを作成することができます。
以下のためのMySQLの構文
「人」テーブル「P_ID」欄に次のSQL文は、自動インクリメントの主キーとして定義されています。

CREATE TABLE Persons
(
P_Id int NOT NULL AUTO_INCREMENT,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
PRIMARY KEY (P_Id)
)

MySQLは自動インクリメントのタスクを実行するためにAUTO_INCREMENTキーワードを使用しています。

デフォルトでは、開始値のAUTO_INCREMENTは、それぞれの新しいレコードが1だけインクリメントされ、1です。

AUTO_INCREMENTシーケンスは、別の値で開始し、次のSQL構文を使用してみましょう:

ALTER TABLE Persons AUTO_INCREMENT=100

「人」のテーブルに新しいレコードを挿入するには、我々は(自動的に一意の値が追加されます)がありません「P_ID」欄の評価であります:

INSERT INTO Persons (FirstName,LastName)
VALUES ('Bill','Gates')

上記のSQL文は、「人」のテーブルに新しいレコードを挿入します。「P_IDは、」ユニークな値が割り当てられます。「姓」は「姓」の欄には「ゲイツ」に設定されます、「ビル」に設定されています。


SQL Serverの構文

次のSQL文「人」テーブル「P_ID」の欄には、自動インクリメントの主キーとして定義されます。

CREATE TABLE Persons
(
P_Id int PRIMARY KEY IDENTITY,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

MS SQLは、自動インクリメントIDENTITYキーワードを使用してタスクを実行します。

デフォルトでは、開始値のIDENTITYは、それぞれの新しいレコードが1インクリメントされ、1です。

値10と増分で開始する必要があります「P_ID」の列を指定するには、(20,10)をアイデンティティIDENTITYを変更してください

「人」のテーブルに新しいレコードを挿入するには、我々は(自動的に一意の値が追加されます)がありません「P_ID」欄の評価であります:

INSERT INTO Persons (FirstName,LastName)
VALUES ('Bill','Gates')

上記のSQL文は、「人」のテーブルに新しいレコードを挿入します。「P_IDは、」ユニークな値が割り当てられます。「姓」は「姓」の欄には「ゲイツ」に設定されます、「ビル」に設定されています。


アクセスするための構文

次のSQL文「人」テーブル「P_ID」の欄には、自動インクリメントの主キーとして定義されます。

CREATE TABLE Persons
(
P_Id int PRIMARY KEY AUTOINCREMENT,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255)
)

自動インクリメントのタスクを実行するためにAUTOINCREMENTキーワードを使用してMS Accessの。

デフォルトでは、AUTOINCREMENTの開始値は、それぞれの新しいレコードが1インクリメントされ、1です。

値10と増分で開始する必要があります「P_ID」の列を指定するには、(20,10)をオートインクリメントAUTOINCREMENTを変更してください

「人」のテーブルに新しいレコードを挿入するには、我々は(自動的に一意の値が追加されます)がありません「P_ID」欄の評価であります:

INSERT INTO Persons (FirstName,LastName)
VALUES ('Bill','Gates')

上記のSQL文は、「人」のテーブルに新しいレコードを挿入します。「P_IDは、」ユニークな値が割り当てられます。「姓」は「姓」の欄には「ゲイツ」に設定されます、「ビル」に設定されています。


Oracleの構文

オラクルでは、コードはより複雑ビット。

あなたは、自動インクリメントフィールドシーケンスにより、(番号のシーケンスを生成するためのオブジェクト)を作成する必要があります。

以下をCREATE SEQUENCE構文を使用してください:

CREATE SEQUENCE seq_person
MINVALUE 1
START WITH 1
INCREMENT BY 1
CACHE 10

上記のコードは1に、スタート時に1だけインクリメントされseq_personシーケンスと呼ばれるオブジェクトを作成します。性能値を改善するために、オブジェクトキャッシュ10。CACHEオプションが格納されるシーケンス値の数への高速アクセスを提供します。

「人」のテーブルに新しいレコードを挿入するには、我々は(この関数はseq_personシーケンスから次の値を取得する)NEXTVAL機能を使用する必要があります。

INSERT INTO Persons (P_Id,FirstName,LastName)
VALUES (seq_person.nextval,'Lars','Monsen')

上記のSQL文は、「人」のテーブルに新しいレコードを挿入します。「P_ID」割り当てはseq_personから順に次の番号です。「姓」は「姓」の欄には「ゲイツ」に設定されます、「ビル」に設定されています。

おすすめ

転載: blog.csdn.net/NumberOneStudent/article/details/102732534