mysql+mybatisプライマリ・キーの自己増加を実現
一、mybatis対応の特定テーブル(Customer)の構成
1、コード
2、説明
keyPropertyは、データベースで指定したテーブルのプライマリ・キー・フィールドに対応するJavaオブジェクトのプロパティです.
useGeneratedKeysパラメータはinsert文のみに対して有効で、デフォルトはfalseです.
①keyPropertyとuseGeneratedKeysを併用
データベースがプライマリ・キーを自動的に生成するフィールド(MySQLやSQL Serverなど)をサポートしている場合は、useGeneratedKeys="true"を設定してkeyPropertyをターゲット・プロパティに設定すればOKです.
②keyPropertyのみを使用し、useGeneratedKeysを使用しない場合は、併用する必要があります
二、実行
1,このように配置し終わった後に、プログラムを実行してそのように成功したと想像することができなくて、第1回は挿入する時mysqlデータベースの中で必ず主なキーの自ら増加する文を実行しなければならなくて、やっと願い通りに新しく成功することができて、
alter table student modify studnet_id integer auto_increment,studentテーブル名,student_idはプライマリ・キーです.
2,mysql ID付加価値の開始値を設定する文:
alter table student AUTO_INCREMENT=1000
useGenerateKey:自増列 に戻る KeyProperty:自増列、オブジェクト対応属性を返します. 自己増分値取得:自己増分プライマリ・キーは、オブジェクトに対応する属性の にマッピングされます.
1、コード
insert into im_customer
CustomerCode,
CustomerName,
CustomerLocation,
#{customercode,jdbcType=VARCHAR},
#{customername,jdbcType=VARCHAR},
#{customerlocation,jdbcType=VARCHAR},
2、説明
keyPropertyは、データベースで指定したテーブルのプライマリ・キー・フィールドに対応するJavaオブジェクトのプロパティです.
useGeneratedKeysパラメータはinsert文のみに対して有効で、デフォルトはfalseです.
①keyPropertyとuseGeneratedKeysを併用
データベースがプライマリ・キーを自動的に生成するフィールド(MySQLやSQL Serverなど)をサポートしている場合は、useGeneratedKeys="true"を設定してkeyPropertyをターゲット・プロパティに設定すればOKです.
insert into Author (username,password,email,bio)
values (#{username},#{password},#{email},#{bio})
②keyPropertyのみを使用し、useGeneratedKeysを使用しない場合は、併用する必要があります
select CAST(RANDOM()*1000000 as INTEGER) a from SYSIBM.SYSDUMMY1
insert into Author
(id, username, password, email,bio, favourite_section)
values
(#{id}, #{username}, #{password}, #{email}, #{bio}, #{favouriteSection,jdbcType=VARCHAR})
二、実行
1,このように配置し終わった後に、プログラムを実行してそのように成功したと想像することができなくて、第1回は挿入する時mysqlデータベースの中で必ず主なキーの自ら増加する文を実行しなければならなくて、やっと願い通りに新しく成功することができて、
alter table student modify studnet_id integer auto_increment,studentテーブル名,student_idはプライマリ・キーです.
2,mysql ID付加価値の開始値を設定する文:
alter table student AUTO_INCREMENT=1000