sqlite rowidを確認する

sqlite rowidを確認する

sqliteで、rowidを確認する手順を記述してます。rowidとはsqliteに自動的に割り振られる値のことです。「select」時にカラム名に「rowid」を指定すれば取得できます。sqliteは、3.37.1を使用してます。

環境

  • OS windows11 home
  • sqlite 3.37.1
  • DB Browser for SQLite 3.12.2

手順

rowidを確認するには、「select」時に「rowid」を指定します。

select rowid from テーブル名;

実際に、以下の「sampletbl」というテーブルの「rowid」を確認してみます。

CREATE TABLE sampletbl(id integer primary key, name text);

insert into sampletbl values(1, 'taro');
insert into sampletbl values(2, 'jiro');
insert into sampletbl values(3, 'saburo');

確認します。

select *,rowid from sampletbl;

実行結果

データを追加して再度確認してみます。

insert into sampletbl values(5, 'goro');

実行結果

「rowid」と「id」の値が、同じになっています。
これは「rowid」は「integer primary key」を指定した「カラム」とまったく同じ値になるようになっているためのようです。

試しに「primary key」を指定しないテーブル「sampletbl2」を作成して、データをinsertしてみます。

CREATE TABLE sampletbl2(id integer, name text);

insert into sampletbl2 values(1, 'taro');
insert into sampletbl2 values(2, 'jiro');
insert into sampletbl2 values(3, 'saburo');
insert into sampletbl2 values(5, 'goro');

「rowid」を確認してみます。

select *,rowid from sampletbl2;

実行結果

「primary key」が指定されていないと、同じ値にならないことが確認できます。