[OSGeoJapan-discuss] 【質問】QGISのshapeファイル:既存+新しく地物を追加した際に自動的にユニークIDが入力される方法(uuid()以外でもあるでしょうか?)

Yoichi Kayama yoichi.kayama @ gmail.com
2023年 11月 12日 (日) 23:19:34 PST


この処理は新たなフィールドを作成して、そこに連番つけるだけみたいですね。
そうするとご所望の機能ではないかもしれません。

面倒でないのは ShapeファイルやめちゃってGeopackageにしてしまうという手がありますが。
Geopackageぼベクタはデフォルトでidというカラムがあって主キーになっていてここは多分自動インクリメントです。
(ですから id というカラムがあるShapeファイルとかをGeopackageに変換するとエラーになります。
その場合Geopackage側のキーカラム名を変換のところでidでないものに変えるという必要あります)

ただそれだと既存レコードのキーは生かされませんが。

2023年11月13日(月) 15:11 藤田卓 <fujita @ nacsj.or.jp>:

> かやまさま
>
> 早速アドバイスいただきありがとうございます
> 藤田です
>
> >ベクタのレイヤを作成した後 プロセッシングツールボックス -> ベクタテーブル ->  自動インクリメント属性を追加 で可能かもしれません。
>> https://docs.qgis.org/3.28/ja/docs/user_manual/processing_algs/qgis/vectortable.html#qgisaddautoincrementalfield
>
> ありがとうございます
> ご教授いただいた方法では、ベクタの新しい地物を追加する度に毎回、
> 「 ベクタのレイヤを作成した後 プロセッシングツールボックス -> ベクタテーブル ->  自動インクリメント属性を追加 」を実行して
> 出力してSHAPEを作成する必要があるということですね
>
> この場合は、過去に作成していた地物のIDは、変わらず、同じIDが付与することも可能ということでしょうか
>
> (編集の際は、地物の追加だけでなく、過去に作成した地物を削除、または過去に作成していた地物を編集する場合もある(IDはそのままにしたい)したりすることもありますが、過去のIDはそれぞれ引き継ぐもしく、削除した地物のIDは復活しないとしたいです)
>
> たびたびのお伺いとなってしまい申し訳ございません
>
> 2023年11月13日(月) 13:58 Yoichi Kayama <yoichi.kayama @ gmail.com>:
>
>> 藤田様
>>
>> ベクタのレイヤを作成した後 プロセッシングツールボックス -> ベクタテーブル ->  自動インクリメント属性を追加 で可能かもしれません。
>>
>>
>> https://docs.qgis.org/3.28/ja/docs/user_manual/processing_algs/qgis/vectortable.html#qgisaddautoincrementalfield
>>
>> 2023年11月13日(月) 12:39 藤田卓 (OSGeoJapan-discuss 経由) <
>> osgeojapan-discuss @ lists.osgeo.org>:
>>
>>> みなさま
>>>
>>> 日本自然保護協会の藤田と申します。
>>> QGISについて1つ教えていただきたいことがあり、ご連絡いたしました。
>>>
>>>
>>>
>>> *【質問】*
>>> QGISでshapeファイルのユニークID(地物毎に固有の値)を作成する際に、
>>> 既存の地物だけでなく、新しく地物を追加した際に自動的にユニークIDが入力される方法
>>> として、
>>>
>>> uuid() を使用する方法があるようですが
>>> *uuid() 以外の 関数を用いて自動でユニークIDを入力できる方法はないでしょうか*
>>> (もしくは uuid() を38文字より縮めるなどができるか?)
>>>
>>> *【質問した理由】*
>>> *uuid()の場合、IDが38文字と長いため、ファイルサイズが大きくなる、扱いがやや面倒との懸念もあり*
>>> $idなど、6~10桁などの数値など短いIDでユニークIDを自動生成できる方法で
>>> 新しく地物を追加した際に自動的にユニークIDを 追加できないかと考えております
>>>
>>>
>>> アドバイスいただけましたら幸いです
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> 藤田卓        /  Dr. Taku FUJITA
>>> (理学博士・ 技術士(環境部門)
>>> *公益財団法人 日本自然保護協会(NACS-J**)*
>>> *生物多様性保全部*
>>> fujita @ nacsj.or.jphttps://www.nacsj.or.jp/
>>> TEL: 03-3553-4101 (代表)
>>> 〒104-0033 東京都中央区新川1-16-10 ミトヨビル2F
>>> *★70周年キャンペーン★ **https://www.nacsj.or.jp/activist
>>> <https://www.nacsj.or.jp/activist>*
>>> [image: FB] <https://www.facebook.com/NACSJ>  [image: TW]
>>> <https://twitter.com/NACSJ>   [image: Instagram]
>>> <https://www.instagram.com/nacsj_official/>   [image: Youtube]
>>> <https://www.youtube.com/channel/UClUy3wg5i1qB1GYT6YxRTDQ>
>>>
>>> _______________________________________________
>>> OSGeoJapan-discuss mailing list
>>> OSGeoJapan-discuss @ lists.osgeo.org
>>> https://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss
>>>
>>
>
> --
>
>
>
>
>
>
> 藤田卓        /  Dr. Taku FUJITA
> (理学博士・ 技術士(環境部門)
> *公益財団法人 日本自然保護協会(NACS-J**)*
> *生物多様性保全部*
> fujita @ nacsj.or.jphttps://www.nacsj.or.jp/
> TEL: 03-3553-4101 (代表)
> 〒104-0033 東京都中央区新川1-16-10 ミトヨビル2F
> *★70周年キャンペーン★ **https://www.nacsj.or.jp/activist
> <https://www.nacsj.or.jp/activist>*
> [image: FB] <https://www.facebook.com/NACSJ>  [image: TW]
> <https://twitter.com/NACSJ>   [image: Instagram]
> <https://www.instagram.com/nacsj_official/>   [image: Youtube]
> <https://www.youtube.com/channel/UClUy3wg5i1qB1GYT6YxRTDQ>
>
>
-------------- next part --------------
HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...
URL: <http://lists.osgeo.org/pipermail/osgeojapan-discuss/attachments/20231113/ab289ac1/attachment-0001.htm>


OSGeoJapan-discuss メーリングリストの案内