dポイントプレゼントキャンペーン実施中!

久々データベースを触っているのですが、Primary KeyのようにAutoIncrementするフィールドにPrefixを付たいのですがどのようにすれば良いのでしょうか?

http://detail.chiebukuro.yahoo.co.jp/qa/question …
このページで言っているように、プログラム側でPrefixを付け、それをTransactionを使って、CharFieldに入れるしかないのかなとも思いましたが。

もしMySQLやMariaDB、PostgreSQLなどにそのようなPrefixを付けて自動でインクリメント出来る機能があれば教えて欲しいと思います。
宜しくおねがいします。

A 回答 (1件)

っていうかauto_incrementのカラムの頭に出力時にCONCATでつければいいだけじゃない?


桁数をあわせたいなら、最初からidに長さを指定して、unsigned zerofillしておけばよいでしょう

create table hoge (id int(10) unsigned zerofill not null auto_increment primary key,data varchar(10));
insert into hoge(data) values ('test1'),('test10'),('test100');
select concat('head',id) as hid,data from hoge;
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!