很多系统支持自动生成主关键字。一些数据库厂商预先生成(oracle),一些数据库厂商之后生成(mssal mysql).。如果你在<insert>元素中使用<selectKey>节,你就能获得一个预先生成的key.。下面的例子演示了这种方法:

<!—Oracle SEQUENCE Example -->
<insert > SELECT STOCKIDSEQUENCE.NEXTVAL AS ID FROM DUAL

        </selectKey> insert into PRODUCT (PRD_ID,PRD_DESCRIPTION) values

        (#id#,#description#) </insert>  

<!— Microsoft SQL Server IDENTITY Column Example -->

<insert

        parameterClass="product"> insert into PRODUCT (PRD_DESCRIPTION)

        values (#description#) <selectKey resultClass="int"

        Property="id" > SELECT @@IDENTITY AS ID </selectKey>

        </insert>


上面是IbatisNet的iBATIS Data Mapper Developer Guide上的说明:下面来介绍一下具体的应用和注意的地方:
person.xml
?xml version="1.0" encoding="utf-8" ?>

<sqlMap
 namespace="Person"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:noNamespaceSchemaLocation="SqlMap.xsd">

 <!-- XML "behind" document for the People service class. -->

 <alias>
  <typeAlias alias="Person" type="IbatisTest.Domain.Person, IbatisTest.Domain" />
 </alias>
 
 <resultMaps>
  <resultMap >              {

                   int result = -1;

                    result =(int)Mapper().Insert("Insert",person);

                   return result;

              }
             catch(Exception ex) 
              {

                   throw ex; 
              }

         }

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-28
  • 2022-01-01
  • 2022-12-23
  • 2022-12-23
  • 2021-06-24
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-13
  • 2022-12-23
  • 2022-02-12
  • 2021-11-24
相关资源
相似解决方案