TomnekoSoft.com

Backend blog for TomnekoSoft.com


Firebird Square

Firebird3.0で Identity Columnsが実装される

ルーマニアのMarius Popaが運営しているFirebird Newsから転載です。

Firebird3.0で、Identity Columnsがサポートされるということですが、Identity Colomunは内部でシーケンスと接続していて、INSERT時に自動的にインクリメントされるという機能です。つまり、MySQLだとAUTO_INCREMENTです。PostgreSQLだと、SERIALですね。

SQL:2008標準では、「CREATE TABLE tablename ( tablename_id INTEGER GENERATED BY DEFAULT AS IDENTITY ...) 」となっているので、Firebirdの実装は、SQL:2008に沿った形で進められているようです。DB2は完璧に標準通りで、MSSQLがちょっと変形といった感じですね。


各DB間のSQLの相違は、ココがとても詳しいのでぜひご覧下さい

Comparison of different SQL implementations

--- 以下引用 ----

"Firebird support for Identity Columns in 3.0"
Posted by mariuz on 15 Jan 2010 8:25 am. Filed under General news.
An identity column is a column associated with an internal sequence generator and has it value automatically set when omitted in an INSERT statement.

Example:

create table objects (
id integer generated by default as identity primary key,
name varchar(15)
);

insert into objects (name) values (‘Table’);
insert into objects (name) values (‘Book’);
insert into objects (id, name) values (10, ‘Computer’);

select * from objects;

ID NAME
============ ===============
1 Table
2 Book
10 Computer

2010年01月16日 00:22 | Firebird Square | tomneko


コメント

コメントはまだありません