Skip to main content

 

 

 

Template:OutSystems/Documentation_KB/Breadcrumb_New_Layout

 

 

Template:OutSystems/OSLanguageSwitcher

 

 

 

OutSystems

データベースのオートナンバー

エンティティをモデリングしてデータベースにデータを保存する際、Integer型のアトリビュートをオートナンバーにし、必ず各レコードが一意の値を持つようにできます。

このページでは、アトリビュートのIsAutoNumberプロパティを[Yes]に設定したときのデータベースの動作について説明しています。

SQL Server

SQL Serverデータベースでシーケンシャルアトリビュートを作成すると、Intデータ型でIdentity(1,1)を設定した列が作成されます。これで値は1から始まり、新しいレコードが挿入されると1ずつ増えるようになります。

CREATE TABLE Product (
    Id INT IDENTITY(1,1),
    Name VARCHAR(50)
);

Oracle

Oracleでは、シーケンシャルアトリビュートは以下のOracleオブジェクトにマッピングされます。

  1. OSSEQ」というプレフィックスが付けられたシーケンスは、対応する列の一意性を保証するために作成されます。このシーケンスは1から始まり、1ずつ増えます。
  2. OSTRG」というプレフィックスが付けられたトリガーは、シーケンスの次の値を計算するために作成されます。このトリガーは、新しいレコードを挿入する前に呼び出されます。

MySQL

MySQLでは、シーケンシャルアトリビュートはAUTO_INCREMENTアトリビュートのInteger型の列にマッピングされます。このアトリビュートはMySQLデータベースに対し、この列は1から始まるシーケンス番号を使用していることを示します。

CREATE TABLE Product (
    Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    Name NVARCHAR(50)
);
  • Was this article helpful?