You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ibatis.apache.org by ro...@apache.org on 2005/03/02 07:15:25 UTC
svn commit: r155890 [2/3] - in incubator/ibatis/trunk/cs/mapper: ./
IBatisNet.Common.Test/ IBatisNet.Common.Test/Maps/Access/OleDb/
IBatisNet.Common.Test/Scripts/Access/ IBatisNet.Common.Test/bin/Debug/
IBatisNet.Common/ IBatisNet.Common/Utilities/ IBatisNet.DataAccess.Test/
IBatisNet.DataAccess.Test/Maps/Access/OleDb/
IBatisNet.DataAccess.Test/Scripts/Access/
IBatisNet.DataAccess.Test/bin/Debug/ IBatisNet.DataMapper.Test/
IBatisNet.DataMapper.Test/Maps/Access/OleDb/
IBatisNet.DataMapper.Test/Scripts/Access/
IBatisNet.DataMapper.Test/bin/Debug/
Modified: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/DynamicAccount.xml
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/DynamicAccount.xml?view=diff&r1=155889&r2=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/DynamicAccount.xml (original)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/DynamicAccount.xml Tue Mar 1 22:15:12 2005
@@ -1,10 +1,14 @@
<?xml version="1.0" encoding="utf-8" ?>
-<sqlMap name="Category" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="..\..\Nausicaa.Framework.Dal\Schemas\SqlMap.xsd">
+<sqlMap namespace="Category" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="SqlMap.xsd">
+ <alias>
+ <typeAlias alias="Search" type="IBatisNet.DataAccess.Test.Domain.Search, IBatisNet.DataAccess.Test"/>
+ </alias>
+
<statements>
- <statement name="DynamicIsEqual"
+ <statement id="DynamicIsEqual"
parameterClass="string"
resultClass="Account">
select
@@ -18,7 +22,7 @@
</isEqual>
</statement>
- <statement name="DynamicIsParameterPresent"
+ <statement id="DynamicIsParameterPresent"
parameterClass="integer"
resultClass="Account">
select
@@ -32,7 +36,7 @@
</isParameterPresent>
</statement>
- <statement name="DynamicIsNotEmpty"
+ <statement id="DynamicIsNotEmpty"
parameterClass="string"
resultClass="Account">
select
@@ -46,7 +50,7 @@
</isNotEmpty>
</statement>
- <statement name="DynamicIsGreater"
+ <statement id="DynamicIsGreater"
parameterClass="int"
resultClass="Account">
select
@@ -60,7 +64,7 @@
</isGreaterThan>
</statement>
- <statement name="DynamicIsGreaterEqual"
+ <statement id="DynamicIsGreaterEqual"
parameterClass="int"
resultClass="Account">
select
@@ -74,7 +78,7 @@
</isGreaterEqual>
</statement>
- <statement name="DynamicIsLess"
+ <statement id="DynamicIsLess"
parameterClass="int"
resultClass="Account">
select
@@ -88,7 +92,7 @@
</isLessThan>
</statement>
- <statement name="DynamicIsLessEqual"
+ <statement id="DynamicIsLessEqual"
parameterClass="int"
resultClass="Account">
select
@@ -102,7 +106,7 @@
</isLessEqual>
</statement>
- <statement name="DynamicIsNotNull"
+ <statement id="DynamicIsNotNull"
parameterClass="string"
resultClass="Account">
select
@@ -116,7 +120,7 @@
</isNotNull>
</statement>
- <statement name="DynamicIsPropertyAvailable"
+ <statement id="DynamicIsPropertyAvailable"
parameterClass="string"
resultClass="Account">
select
@@ -131,7 +135,7 @@
</statement>
- <statement name="DynamicSubst"
+ <statement id="DynamicSubst"
parameterClass="map"
resultClass="Account">
<dynamic>
@@ -139,7 +143,7 @@
</dynamic>
</statement>
- <statement name="DynamicIterate"
+ <statement id="DynamicIterate"
parameterClass="list"
resultClass="Account">
select
@@ -154,7 +158,7 @@
</iterate>
</statement>
- <statement name="DynamicIterate2"
+ <statement id="DynamicIterate2"
parameterClass="Account"
resultClass="Account">
select
@@ -169,7 +173,7 @@
</iterate>
</statement>
- <statement name="MultiDynamicIterate"
+ <statement id="MultiDynamicIterate"
parameterClass="list"
resultClass="Account">
select
@@ -189,7 +193,7 @@
</statement>
- <statement name="DynamicQueryByExample"
+ <statement id="DynamicQueryByExample"
parameterClass="Account"
resultClass="Account">
select
@@ -225,7 +229,7 @@
</dynamic>
</statement>
- <statement name="DynamicIterateWithPrepend1"
+ <statement id="DynamicIterateWithPrepend1"
parameterClass="list"
resultClass="Account">
select
@@ -242,7 +246,7 @@
</dynamic>
</statement>
- <statement name="DynamicIterateWithPrepend2"
+ <statement id="DynamicIterateWithPrepend2"
parameterClass="list"
resultClass="Account">
select
@@ -258,7 +262,7 @@
</dynamic>
</statement>
- <statement name="DynamicIterateWithPrepend3"
+ <statement id="DynamicIterateWithPrepend3"
parameterClass="list"
resultClass="Account">
select
@@ -276,7 +280,7 @@
</dynamic>
</statement>
- <statement name="DynamicWithPrepend"
+ <statement id="DynamicWithPrepend"
parameterClass="Account"
resultClass="Account">
select
@@ -300,7 +304,7 @@
</dynamic>
</statement>
- <statement name="DynamicWithTwoDynamicElements"
+ <statement id="DynamicWithTwoDynamicElements"
parameterClass="Account"
resultClass="Account">
select
@@ -324,7 +328,7 @@
</dynamic>
</statement>
- <statement name="ComplexDynamicStatement"
+ <statement id="ComplexDynamicStatement"
cacheModel="account-cache"
resultClass="Account"
parameterClass="Account">
@@ -351,7 +355,29 @@
</dynamic>
order by Account_LastName
</statement>
-
+
+ <statement id="Jira-IBATISNET-11"
+ resultClass="Account"
+ parameterClass="Search">
+ select
+ Account_ID as Id,
+ Account_FirstName as FirstName,
+ Account_LastName as LastName,
+ Account_Email as EmailAddress
+ from Accounts
+ <dynamic prepend="where">
+ <isNotNull prepend="and" property="NumberSearch">
+ ((Account_ID $Operande$ #NumberSearch#) or
+ (Account_ID $Operande$ #NumberSearch#))
+ </isNotNull>
+ <isEqual prepend="and" property="StartDate" compareValue="25/12/2004">
+ <![CDATA[Account_FirstName >= #StartDate# ]]>
+ </isEqual>
+ <isEqual prepend="and" property="StartDateAnd" compareValue="true">
+ <![CDATA[Account_LastName >= #StartDate# ]]>
+ </isEqual>
+ </dynamic>
+ </statement>
</statements>
Modified: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/Enumeration.xml
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/Enumeration.xml?view=diff&r1=155889&r2=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/Enumeration.xml (original)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/Enumeration.xml Tue Mar 1 22:15:12 2005
@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
-<sqlMap name="Enumeration" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="..\..\Nausicaa.Framework.Dal\Schemas\SqlMap.xsd">
+<sqlMap namespace="Enumeration" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="SqlMap.xsd">
<alias>
- <typeAlias name="Enumeration" assembly="IBatisNet.Test.dll" class="IBatisNet.Test.Domain.Enumeration"/>
+ <typeAlias alias="Enumeration" type="IBatisNet.DataAccess.Test.Domain.Enumeration, IBatisNet.DataAccess.Test"/>
</alias>
<resultMaps>
- <resultMap name="enumeration-result" class="Enumeration" >
+ <resultMap id="enumeration-result" class="Enumeration" >
<result property="Id" column="Enum_ID"/>
<result property="Day" column="Enum_Day"/>
<result property="Color" column="Enum_Color"/>
@@ -17,7 +17,7 @@
<statements>
- <select name="GetEnumerationNullValue"
+ <select id="GetEnumerationNullValue"
parameterClass="Integer"
resultMap="enumeration-result">
select
@@ -29,17 +29,17 @@
where Enum_ID = #value#
</select>
- <select name="GetEnumeration" parameterClass="Integer" resultClass="Enumeration">
+ <select id="GetEnumeration" parameterClass="Integer" resultClass="Enumeration">
select
- Enum_ID as Id,
- Enum_Day as Day,
- Enum_Color as Color,
- Enum_Month as Month
+ Enum_ID as [Id],
+ Enum_Day as [Day],
+ Enum_Color as [Color],
+ Enum_Month as [Month]
from Enumerations
where Enum_ID = #value#
</select>
- <insert name="InsertEnumViaParameterMap" parameterMap="insert-params" >
+ <insert id="InsertEnumViaParameterMap" parameterMap="insert-params" >
insert into Enumerations
(Enum_ID, Enum_Day, Enum_Color, Enum_Month)
values
@@ -49,7 +49,7 @@
</statements>
<parameterMaps>
- <parameterMap name="insert-params">
+ <parameterMap id="insert-params">
<parameter property="Id" column="Enum_ID" />
<parameter property="Day" column="Enum_Day"/>
<parameter property="Color" column="Enum_Color" />
Modified: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/LineItem.xml
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/LineItem.xml?view=diff&r1=155889&r2=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/LineItem.xml (original)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/LineItem.xml Tue Mar 1 22:15:12 2005
@@ -1,27 +1,26 @@
<?xml version="1.0" encoding="UTF-8" ?>
-
-<sqlMap name="LineItem" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="..\..\Nausicaa.Framework.Dal\Schemas\SqlMap.xsd">
+<sqlMap namespace="LineItem" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="SqlMap.xsd">
<alias>
- <typeAlias name="LineItem" assembly="IBatisNet.Test.dll" class="IBatisNet.Test.Domain.LineItem" />
- <typeAlias name="LineItemCollection" assembly="IBatisNet.Test.dll" class="IBatisNet.Test.Domain.LineItemCollection" />
+ <typeAlias alias="LineItem" type="IBatisNet.DataAccess.Test.Domain.LineItem, IBatisNet.DataAccess.Test" />
+ <typeAlias alias="LineItemCollection" type="IBatisNet.DataAccess.Test.Domain.LineItemCollection, IBatisNet.DataAccess.Test" />
</alias>
<resultMaps>
- <resultMap name="LineItem-Price" class="decimal">
+ <resultMap id="LineItem-Price" class="decimal">
<result property="value" column="LineItem_Price"/>
</resultMap>
- <resultMap name="LineItem" class="LineItem">
+ <resultMap id="LineItem" class="LineItem">
<result property="Id" column="LineItem_ID"/>
<result property="Code" column="LineItem_Code"/>
<result property="Quantity" column="LineItem_Quantity"/>
<result property="Price" column="LineItem_Price"/>
</resultMap>
- <resultMap name="LineItemWithNullReplacement" class="LineItem">
+ <resultMap id="LineItemWithNullReplacement" class="LineItem">
<result property="Id" column="LineItem_ID"/>
<result property="Code" column="LineItem_Code"/>
<result property="Quantity" column="LineItem_Quantity"/>
@@ -31,7 +30,7 @@
</resultMaps>
<statements>
- <statement name="GetLineItemPrice"
+ <statement id="GetLineItemPrice"
parameterClass="Hashtable"
resultMap="LineItem-Price" >
select
@@ -41,7 +40,7 @@
and LineItem_ID = #LineItem_ID#
</statement>
- <statement name="GetLineItemsForOrder"
+ <statement id="GetLineItemsForOrder"
parameterClass="int"
resultClass="LineItem">
select
@@ -52,7 +51,7 @@
from LineItems where Order_ID = #value#
</statement>
- <statement name="GetLineItemsForOrderWithListClass"
+ <statement id="GetLineItemsForOrderWithListClass"
parameterClass="int"
listClass="LineItemCollection"
resultClass="LineItem">
@@ -65,7 +64,7 @@
order by LineItem_Code
</statement>
- <statement name="GetSpecificLineItem"
+ <statement id="GetSpecificLineItem"
parameterClass="Hashtable"
resultClass="LineItem">
select
@@ -78,7 +77,21 @@
and LineItem_ID = #LineItem_ID#
</statement>
- <select name="GetDynSpecificLineItem"
+ <statement id="GetSpecificLineItemWithPicture"
+ parameterClass="Hashtable"
+ resultClass="LineItem">
+ select
+ LineItem_ID as Id,
+ LineItem_Code as Code,
+ LineItem_Quantity as Quantity,
+ LineItem_Price as Price,
+ LineItem_Picture as PictureData
+ from LineItems
+ where Order_ID = #Order_ID#
+ and LineItem_ID = #LineItem_ID#
+ </statement>
+
+ <select id="GetDynSpecificLineItem"
parameterClass="HashMap"
resultClass="LineItem">
select
@@ -95,7 +108,7 @@
</dynamic>
</select>
- <statement name="GetSpecificLineItemWithNullReplacement"
+ <statement id="GetSpecificLineItemWithNullReplacement"
parameterClass="int"
resultMap="LineItemWithNullReplacement">
select
@@ -107,7 +120,7 @@
where LineItem_ID = #value#
</statement>
- <statement name="InsertLineItem"
+ <statement id="InsertLineItem"
parameterMap="insert-params" >
insert into LineItems
(LineItem_ID, Order_ID, LineItem_Code, LineItem_Quantity, LineItem_Price)
@@ -115,7 +128,15 @@
(?, ?, ?, ?, ?);
</statement>
- <insert name="InsertLineItemPostKey" parameterClass="LineItem">
+ <statement id="InsertLineItemWithPicture"
+ parameterMap="insert-params-picture" >
+ insert into LineItems
+ (LineItem_ID, Order_ID, LineItem_Code, LineItem_Quantity, LineItem_Price, LineItem_Picture)
+ values
+ (?, ?, ?, ?, ?, ?);
+ </statement>
+
+ <insert id="InsertLineItemPostKey" parameterClass="LineItem">
insert into LineItems
(LineItem_ID, Order_ID, LineItem_Code, LineItem_Quantity, LineItem_Price)
values
@@ -125,7 +146,7 @@
</selectKey>
</insert>
- <insert name="InsertLineItemPreKey" parameterClass="LineItem">
+ <insert id="InsertLineItemPreKey" parameterClass="LineItem">
<selectKey property="Id" type="pre" resultClass="int" >
select 99 from LineItems where LineItem_ID = 1 and Order_ID=1
</selectKey>
@@ -135,26 +156,48 @@
(#Id#, #Order.Id#, #Code#, #Quantity#, #Price:Decimal#)
</insert>
- <insert name="InsertLineItemNoKey" parameterClass="LineItem">
+ <insert id="InsertLineItemNoKey" parameterClass="LineItem">
insert into LineItems
(LineItem_ID, Order_ID, LineItem_Code, LineItem_Quantity, LineItem_Price)
values
(#Id#, #Order.Id#, #Code#, #Quantity#, #Price:Decimal#)
</insert>
+ <!-- JIRA 23 -->
+ <!--
+ Exception
+ Cannot run multiple statements through single command
+ with OleDb provider and Access
+ -->
+ <delete id="DeleteWithComments" >
+ <!-- Delete LineItems -->
+ delete from LineItems where Order_ID = 10
+ <!-- Delete LineItems -->
+ delete from LineItems where Order_ID = 9
+ </delete>
+
</statements>
<parameterMaps>
- <parameterMap name="insert-params">
+ <parameterMap id="insert-params">
+ <parameter property="Id" />
+ <parameter property="Order.Id" />
+ <parameter property="Code" />
+ <parameter property="Quantity" />
+ <parameter property="Price" dbType="Decimal" nullValue="-99.99"/>
+ </parameterMap>
+
+ <parameterMap id="insert-params-picture">
<parameter property="Id" />
<parameter property="Order.Id" />
<parameter property="Code" />
<parameter property="Quantity" />
<parameter property="Price" dbType="Decimal" nullValue="-99.99"/>
+ <parameter property="PictureData" dbType="Binary" />
</parameterMap>
-
+
</parameterMaps>
</sqlMap>
Modified: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/Order.xml
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/Order.xml?view=diff&r1=155889&r2=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/Order.xml (original)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/Order.xml Tue Mar 1 22:15:12 2005
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<sqlMap name="Order" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="..\..\Nausicaa.Framework.Dal\Schemas\SqlMap.xsd">
+<sqlMap namespace="Order" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="SqlMap.xsd">
<alias>
- <typeAlias name="Order" assembly="IBatisNet.Test.dll" class="IBatisNet.Test.Domain.Order" />
+ <typeAlias alias="Order" type="IBatisNet.DataAccess.Test.Domain.Order, IBatisNet.DataAccess.Test" />
</alias>
<!-- If the type is not specified, ADO.NET infers the
@@ -13,38 +13,43 @@
<resultMaps>
- <resultMap name="credit-card-result" class="string">
+ <resultMap id="credit-card-result" class="string">
<result property="value" column="Order_CardNumber"/>
</resultMap>
- <resultMap name="order-with-lines-result" class="Order"
+ <resultMap id="order-with-lines-result" class="Order"
extends="lite-order-result-by-name" >
<result property="LineItemsIList" lazyLoad="true" column="Order_ID" select="GetLineItemsForOrder" />
</resultMap>
- <resultMap name="order-with-lines-collection" class="Order"
+ <resultMap id="order-with-lines-result-statement-namespaces" class="Order"
+ extends="lite-order-result-by-name" >
+ <result property="LineItemsIList" lazyLoad="true" column="Order_ID" select="LineItem.GetLineItemsForOrder" />
+ </resultMap>
+
+ <resultMap id="order-with-lines-collection" class="Order"
extends="lite-order-result-by-name" >
<result property="LineItems" column="Order_ID" select="GetLineItemsForOrderWithListClass" />
</resultMap>
- <resultMap name="order-with-lines-array" class="Order"
+ <resultMap id="order-with-lines-array" class="Order"
extends="lite-order-result-by-name">
<result property="LineItemsArray" column="Order_ID" select="GetLineItemsForOrder"/>
</resultMap>
- <resultMap name="lite-order-map-result" class="Hashtable">
- <result property="Id" column="Order_ID"/>
- <result property="Date" column="Order_Date"/>
- <result property="CardExpiry" column="Order_CardExpiry"/>
- <result property="CardType" column="Order_CardType"/>
- <result property="CardNumber" column="Order_CardNumber"/>
- <result property="Street" column="Order_Street"/>
- <result property="City" column="Order_City"/>
- <result property="Province" column="Order_Province"/>
- <result property="PostalCode" column="Order_PostalCode"/>
+ <resultMap id="lite-order-map-result" class="Hashtable">
+ <result property="Id" type="Int" column="Order_ID"/>
+ <result property="Date" type="date" column="Order_Date"/>
+ <result property="CardExpiry" type="string" column="Order_CardExpiry"/>
+ <result property="CardType" type="string" column="Order_CardType"/>
+ <result property="CardNumber" type="string" column="Order_CardNumber"/>
+ <result property="Street" type="string" column="Order_Street"/>
+ <result property="City" type="string" column="Order_City"/>
+ <result property="Province" type="string" column="Order_Province"/>
+ <result property="PostalCode" type="string" column="Order_PostalCode"/>
</resultMap>
- <resultMap name="lite-order-result-by-name" class="Order">
+ <resultMap id="lite-order-result-by-name" class="Order">
<result property="Id" column="Order_ID"/>
<result property="Date" column="Order_Date" nullValue="01/01/0001 00:00:00"/>
<result property="CardExpiry" column="Order_CardExpiry"/>
@@ -56,7 +61,7 @@
<result property="PostalCode" column="Order_PostalCode"/>
</resultMap>
- <resultMap name="order-with-types-result" class="Order">
+ <resultMap id="order-with-types-result" class="Order">
<result property="Id" column="Order_ID" dbType="Integer"/><!-- Int for SqlClient, Obdc; Integer for Oledb -->
<result property="Date" column="Order_Date" dbType="DateTime "/>
<result property="CardExpiry" column="Order_CardExpiry" dbType="VarChar"/>
@@ -68,7 +73,7 @@
<result property="PostalCode" column="Order_PostalCode" dbType="VarChar"/>
</resultMap>
- <resultMap name="lite-order-result-by-index" class="Order">
+ <resultMap id="lite-order-result-by-index" class="Order">
<result property="Id" column="Order_ID" columnIndex="0"/>
<result property="Date" column="Order_Date" columnIndex="1" />
<result property="CardExpiry" column="Order_CardExpiry" columnIndex="2"/>
@@ -80,7 +85,7 @@
<result property="PostalCode" column="Order_PostalCode" columnIndex="8" />
</resultMap>
- <resultMap name="order-with-account-result" class="Order">
+ <resultMap id="order-with-account-result" class="Order">
<result property="Id" column="Order_ID"/>
<result property="Date" column="Order_Date"/>
<result property="CardExpiry" column="Order_CardExpiry"/>
@@ -93,7 +98,7 @@
<result property="Account" column="Account_ID" select="GetAccountViaColumnName" />
</resultMap>
- <resultMap name="order-with-collection-result" class="Order">
+ <resultMap id="order-with-collection-result" class="Order">
<result property="Id" column="Order_ID"/>
<result property="Date" column="Order_Date"/>
<result property="CardExpiry" column="Order_CardExpiry"/>
@@ -107,7 +112,7 @@
<result property="LineItems" column="Order_ID" select="GetLineItemsForOrder" lazyLoad="false" />
</resultMap>
- <resultMap name="order-with-favourite-line-item" class="Order">
+ <resultMap id="order-with-favourite-line-item" class="Order">
<result property="Id" column="Order_ID"/>
<result property="Date" column="Order_Date"/>
<result property="CardExpiry" column="Order_CardExpiry"/>
@@ -120,7 +125,7 @@
<result property="FavouriteLineItem" column="Order_ID=Order_ID,LineItem_ID=Order_FavouriteLineItem" select="GetSpecificLineItem" />
</resultMap>
- <resultMap name="order-with-dyn-favourite-line-item" class="Order">
+ <resultMap id="order-with-dyn-favourite-line-item" class="Order">
<result property="Id" column="Order_ID"/>
<result property="Date" column="Order_Date"/>
<result property="CardExpiry" column="Order_CardExpiry"/>
@@ -135,8 +140,8 @@
select="GetDynSpecificLineItem" />
</resultMap>
- <resultMap name="order-joined-favourite" class="Order">
- <result property="Id" column="Order_ID"/>
+ <resultMap id="order-joined-favourite" class="Order">
+ <result property="Id" column="Orders.Order_ID"/>
<result property="Date" column="Order_Date"/>
<result property="CardExpiry" column="Order_CardExpiry"/>
<result property="CardType" column="Order_CardType"/>
@@ -151,13 +156,13 @@
</resultMaps>
<statements>
- <statement name="GetOrderLiteByColumnName"
+ <statement id="GetOrderLiteByColumnName"
parameterClass="Int"
resultMap="lite-order-result-by-name" >
select * from Orders where Order_ID = #value#
</statement>
- <statement name="GetOrderLiteByColumnIndex"
+ <statement id="GetOrderLiteByColumnIndex"
parameterClass="Int"
resultMap="lite-order-result-by-index" >
select
@@ -173,20 +178,30 @@
from Orders where Order_ID = #value#
</statement>
- <statement name="GetOrderWithTypes"
+ <statement id="GetOrderWithTypes"
parameterClass="Int"
resultMap="order-with-types-result" >
select * from Orders where Order_ID = #value#
</statement>
- <statement name="GetOrderWithLineItems"
+ <statement id="GetOrderWithLineItems"
parameterClass="Integer"
resultMap="order-with-lines-result" >
select * from Orders where Order_ID = #value#
</statement>
+
+ <statement id="GetOrderWithLineItemsUsingStatementNamespaces"
+ parameterClass="Integer"
+ resultMap="order-with-lines-result-statement-namespaces" >
+ select * from Orders where Order_ID = #value#
+ </statement>
-
- <statement name="GetOrderCardExpiryViaResultClass"
+ <statement id="GetAllOrderWithLineItems"
+ resultMap="order-with-lines-result" >
+ select * from Orders
+ </statement>
+
+ <statement id="GetOrderCardExpiryViaResultClass"
parameterClass="int"
resultClass="date">
select
@@ -194,58 +209,63 @@
from Orders where Order_ID = #value#
</statement>
- <statement name="GetOrderWithAccount"
+ <statement id="GetOrderWithAccount"
parameterClass="int"
resultMap="order-with-account-result" >
select * from Orders where Order_ID = #value#
</statement>
- <statement name="GetOrderWithLineItemsCollection"
+ <statement id="GetOrderWithLineItemsCollection"
parameterClass="Integer"
resultMap="order-with-collection-result" >
select * from Orders where Order_ID = #value#
</statement>
- <statement name="GetOrderJoinedFavourite"
+ <statement id="GetOrderJoinedFavourite"
parameterClass="Integer"
resultMap="order-joined-favourite" >
- select * from Orders, LineItems
+ select
+ Orders.Order_ID, Account_ID, Order_Date, Order_CardExpiry, Order_CardType,
+ Order_CardNumber, Order_Street, Order_City, Order_Province, Order_PostalCode,
+ LineItems.Order_ID as Order_Id, LineItem_ID, LineItem_Code, LineItem_Quantity,
+ LineItem_Price
+ from Orders, LineItems
where Orders.Order_ID = LineItems.Order_ID
and Order_FavouriteLineItem = LineItems.LineItem_ID
and Orders.Order_ID = #value#
</statement>
- <statement name="GetOrderWithFavouriteLineItem"
+ <statement id="GetOrderWithFavouriteLineItem"
parameterClass="int"
resultMap="order-with-favourite-line-item" >
select * from Orders where Order_ID = #value#
</statement>
- <statement name="GetOrderWithLineItemCollection"
+ <statement id="GetOrderWithLineItemCollection"
parameterClass="int"
resultMap="order-with-lines-collection" >
select * from Orders where Order_ID = #value#
</statement>
- <statement name="GetOrderAsHastable"
+ <statement id="GetOrderAsHastable"
parameterClass="Integer"
resultMap="lite-order-map-result" >
select * from Orders where Order_ID = #value#
</statement>
- <statement name="GetOrderWithLineItemArray"
+ <statement id="GetOrderWithLineItemArray"
parameterClass="int"
resultMap="order-with-lines-array">
select * from Orders where Order_ID = #value#
</statement>
- <statement name="GetAllCreditCardNumbersFromOrders"
+ <statement id="GetAllCreditCardNumbersFromOrders"
resultMap="credit-card-result" >
select distinct Order_CardNumber from Orders
order by Order_CardNumber
</statement>
- <statement name="InsertOrderViaParameterMap"
+ <statement id="InsertOrderViaParameterMap"
parameterMap="insert-params" >
insert into Orders
(Order_ID, Account_ID, Order_Date, Order_CardExpiry, Order_CardType,
@@ -254,7 +274,16 @@
(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
</statement>
- <select name="GetOrderWithDynFavouriteLineItem"
+ <statement id="InsertOrderViaExtendParameterMap"
+ parameterMap="insert-extend" >
+ insert into Orders
+ (Order_ID, Account_ID, Order_Date, Order_CardExpiry, Order_CardType,
+ Order_CardNumber, Order_Street, Order_City, Order_Province, Order_PostalCode )
+ values
+ (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
+ </statement>
+
+ <select id="GetOrderWithDynFavouriteLineItem"
parameterClass="Integer"
resultMap="order-with-dyn-favourite-line-item">
select * from Orders where Order_ID = #value#
@@ -264,7 +293,7 @@
<parameterMaps>
- <parameterMap name="insert-params">
+ <parameterMap id="insert-params">
<parameter property="Id" dbType="Integer"/> <!-- Int for SqlClient, Obdc; Integer for Oledb -->
<parameter property="Account.Id"/>
<parameter property="Date" nullValue="01/01/0001 00:00:00" />
@@ -276,7 +305,23 @@
<parameter property="Province" />
<parameter property="PostalCode" />
</parameterMap>
+
+ <parameterMap id="params-parent"> <!-- 1043181 support request -->
+ <parameter property="Id" dbType="Integer"/>
+ <parameter property="Account.Id"/>
+ <parameter property="Date" nullValue="01/01/0001 00:00:00" />
+ <parameter property="CardExpiry" />
+ <parameter property="CardType" />
+ <parameter property="CardNumber" />
+ <parameter property="Street" />
+ <parameter property="City" />
+ <parameter property="Province" />
+ <parameter property="PostalCode" />
+ </parameterMap>
+ <parameterMap id="insert-extend" extends="params-parent">
+ </parameterMap>
+
</parameterMaps>
</sqlMap>
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/Other.xml
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/Other.xml?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/Other.xml (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/Other.xml Tue Mar 1 22:15:12 2005
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="utf-8"?>
+<sqlMap namespace="Other" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="SqlMap.xsd">
+
+ <alias>
+ <typeAlias alias="Other" type="IBatisNet.DataAccess.Test.Domain.Other, IBatisNet.DataAccess.Test"/>
+ </alias>
+
+ <resultMaps>
+ <resultMap id="other-result" class="Other" >
+ <result property="Int" column="Other_Int"/>
+ <result property="Long" column="Other_Long"/>
+ </resultMap>
+ </resultMaps>
+
+ <statements>
+
+ <statement id="DynamicSelectByIntLong"
+ parameterClass="Hashtable"
+ resultMap="other-result">
+ select
+ Other_Int,
+ Other_Long
+ from Others
+ <dynamic prepend="WHERE">
+ <isNotEqual prepend="AND" property="year" compareValue="0">
+ Other_Int = #year#
+ </isNotEqual>
+
+ <isNotEqual prepend="AND" property="areaid" compareValue="0">
+ Other_Long = #areaid#
+ </isNotEqual>
+ </dynamic>
+ </statement>
+
+ </statements>
+
+</sqlMap>
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/ResultClass.xml
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/ResultClass.xml?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/ResultClass.xml (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Maps/Access/OleDb/ResultClass.xml Tue Mar 1 22:15:12 2005
@@ -0,0 +1,103 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+
+<sqlMap namespace="Order" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="SqlMap.xsd">
+
+ <statements>
+ <!--
+ System.InvalidCastException
+ No cast function in Access SQL syntax
+ -->
+ <statement id="GetBoolean"
+ parameterClass="Int"
+ resultClass="bool" >
+ select 1 from Orders where Order_ID = #value#
+ </statement>
+
+ <!--
+ System.InvalidCastException
+ No cast function in Access SQL syntax
+ -->
+ <statement id="GetByte"
+ parameterClass="Int"
+ resultClass="byte" >
+ select 155 from Orders where Order_ID = #value#
+ </statement>
+
+ <statement id="GetChar"
+ parameterClass="Int"
+ resultClass="char" >
+ select 'a' from Orders where Order_ID = #value#
+ </statement>
+
+ <!--
+ System.InvalidCastException
+ No cast function in Access SQL syntax
+ -->
+ <statement id="GetDate"
+ parameterClass="Int"
+ resultClass="date" >
+ select '2003-02-15 8:15:00' from Orders where Order_ID = #value#
+ </statement>
+
+ <statement id="GetDecimal"
+ parameterClass="Int"
+ resultClass="decimal" >
+ select 1.56 from Orders where Order_ID = #value#
+ </statement>
+
+ <!--
+ System.InvalidCastException
+ -->
+ <statement id="GetDouble"
+ parameterClass="Int"
+ resultClass="double" >
+ select 99.5 from Orders where Order_ID= #value#
+ </statement>
+
+ <!--
+ System.InvalidCastException
+ No cast function in Access SQL syntax
+ -->
+ <statement id="GetGuid"
+ parameterClass="Int"
+ resultClass="guid" >
+ select 'CD5ABF17-4BBC-4C86-92F1-257735414CF4' from Orders where Order_ID = #value#
+ </statement>
+
+ <statement id="GetInt16"
+ parameterClass="Int"
+ resultClass="short" >
+ select 32111 from Orders where Order_ID = #value#
+ </statement>
+
+ <statement id="GetInt32"
+ parameterClass="Int"
+ resultClass="int" >
+ select 999999 from Orders where Order_ID = #value#
+ </statement>
+
+ <statement id="GetInt64"
+ parameterClass="Int"
+ resultClass="long" >
+ select 9223372036854775800 from Orders where Order_ID = #value#
+ </statement>
+
+ <!--
+ System.InvalidCastException
+ -->
+ <statement id="GetSingle"
+ parameterClass="Int"
+ resultClass="float" >
+ select 92233.5 from Orders where Order_ID = #value#
+ </statement>
+
+ <statement id="GetString"
+ parameterClass="Int"
+ resultClass="string" >
+ select 'VISA'
+ from Orders where Order_ID = #value#
+ </statement>
+ </statements>
+
+</sqlMap>
\ No newline at end of file
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/DataBase.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/DataBase.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/DataBase.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/DataBase.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1,80 @@
+/* Certain queries must be run through ADO since Access does not
+ recognize some SQL DDL keywords/data types (such as DECIMAL
+ or DEFAULT) through the Access SQL Query window */
+
+drop table ACCOUNTS;
+
+drop table CATEGORIES;
+
+drop table ENUMERATIONS;
+
+drop table LINEITEMS;
+
+drop table ORDERS;
+
+drop table OTHERS;
+
+create table ACCOUNTS
+(
+ [ACCOUNT_ID] long not null,
+ [ACCOUNT_FIRSTNAME] text(32) not null,
+ [ACCOUNT_LASTNAME] text(32) not null,
+ [ACCOUNT_EMAIL] text(128),
+ constraint pkAccounts
+ primary key ([ACCOUNT_ID])
+);
+
+create table CATEGORIES
+(
+ [CATEGORY_ID] counter not null,
+ [CATEGORY_NAME] text(32),
+ [CATEGORY_GUID] guid,
+ constraint pkCategories
+ primary key ([CATEGORY_ID])
+);
+
+create table ENUMERATIONS
+(
+ [ENUM_ID] long not null,
+ [ENUM_DAY] long not null,
+ [ENUM_COLOR] long not null,
+ [ENUM_MONTH] long,
+ constraint pkEnumerations
+ primary key ([ENUM_ID])
+);
+
+create table LINEITEMS
+(
+ [LINEITEM_ID] long not null,
+ [ORDER_ID] long not null,
+ [LINEITEM_CODE] text(32) not null,
+ [LINEITEM_QUANTITY] long not null,
+ [LINEITEM_PRICE] decimal(18,2),
+ [LINEITEM_PICTURE] longbinary,
+ constraint pkLineItems
+ primary key ([ORDER_ID], [LINEITEM_ID])
+);
+
+create table ORDERS
+(
+ [ORDER_ID] long not null,
+ [ACCOUNT_ID] long not null,
+ [ORDER_DATE] datetime,
+ [ORDER_CARDTYPE] text(32),
+ [ORDER_CARDNUMBER] text(32),
+ [ORDER_CARDEXPIRY] text(32),
+ [ORDER_STREET] text(32),
+ [ORDER_CITY] text(32),
+ [ORDER_PROVINCE] text(32),
+ [ORDER_POSTALCODE] text(32),
+ [ORDER_FAVOURITELINEITEM] long,
+ constraint pkOrders
+ primary key ([ORDER_ID])
+);
+
+create table OTHERS
+(
+ OTHER_INT long,
+ OTHER_LONG decimal
+);
+
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/DataBaseNHibernate.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/DataBaseNHibernate.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/DataBaseNHibernate.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/DataBaseNHibernate.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1,16 @@
+/* Certain queries must be run through ADO since Access does not
+ recognize some SQL DDL keywords/data types (such as DECIMAL
+ or DEFAULT) through the Access SQL Query window */
+
+drop table USERS;
+
+create table USERS
+(
+ [LOGONID] text(20) not null default 0,
+ [NAME] text(40) default null,
+ [PASSWORD] text(20) default null,
+ [EMAILADDRESS] text(40) default null,
+ [LASTLOGON] datetime default null,
+ constraint pkUsers
+ primary key ([LOGONID])
+);
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/account-init.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/account-init.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/account-init.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/account-init.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1,17 @@
+drop table ACCOUNTS;
+
+create table ACCOUNTS
+(
+ [ACCOUNT_ID] long not null,
+ [ACCOUNT_FIRSTNAME] text(32) not null,
+ [ACCOUNT_LASTNAME] text(32) not null,
+ [ACCOUNT_EMAIL] text(128),
+ constraint pkAccounts
+ primary key ([ACCOUNT_ID])
+);
+
+INSERT INTO Accounts VALUES(1,'Joe', 'Dalton', 'Joe.Dalton@somewhere.com');
+INSERT INTO Accounts VALUES(2,'Averel', 'Dalton', 'Averel.Dalton@somewhere.com');
+INSERT INTO Accounts VALUES(3,'William', 'Dalton', null);
+INSERT INTO Accounts VALUES(4,'Jack', 'Dalton', 'Jack.Dalton@somewhere.com');
+INSERT INTO Accounts VALUES(5,'Gilles', 'Bayon', null);
\ No newline at end of file
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/account-procedure.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/account-procedure.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/account-procedure.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/account-procedure.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1 @@
+SELECT NULL;
\ No newline at end of file
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/category-init.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/category-init.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/category-init.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/category-init.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1,10 @@
+drop table CATEGORIES;
+
+create table CATEGORIES
+(
+ [CATEGORY_ID] counter not null,
+ [CATEGORY_NAME] text(32),
+ [CATEGORY_GUID] guid,
+ constraint pkCategories
+ primary key ([CATEGORY_ID])
+);
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/category-procedure.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/category-procedure.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/category-procedure.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/category-procedure.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1 @@
+SELECT NULL;
\ No newline at end of file
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/documents-init.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/documents-init.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/documents-init.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/documents-init.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1,19 @@
+drop table DOCUMENTS;
+
+create table DOCUMENTS
+(
+ [DOCUMENT_ID] long not null,
+ [DOCUMENT_TITLE] text(32),
+ [DOCUMENT_TYPE] text(32),
+ [DOCUMENT_PAGENUMBER] long,
+ [DOCUMENT_CITY] text(32),
+ constraint pkAccounts
+ primary key ([DOCUMENT_ID])
+);
+
+INSERT INTO Documents VALUES (1, 'The World of Null-A', 'Book', 55, null);
+INSERT INTO Documents VALUES (2, 'Le Progres de Lyon', 'Newspaper', null , 'Lyon');
+INSERT INTO Documents VALUES (3, 'Lord of the Rings', 'Book', 3587, null);
+INSERT INTO Documents VALUES (4, 'Le Canard enchaine', 'Tabloid', null , 'Paris');
+INSERT INTO Documents VALUES (5, 'Le Monde', 'Broadsheet', null , 'Paris');
+INSERT INTO Documents VALUES (6, 'Foundation', 'Monograph', 557, null);
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/enumeration-init.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/enumeration-init.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/enumeration-init.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/enumeration-init.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1,16 @@
+drop table ENUMERATIONS;
+
+create table ENUMERATIONS
+(
+ [ENUM_ID] long not null,
+ [ENUM_DAY] long not null,
+ [ENUM_COLOR] long not null,
+ [ENUM_MONTH] long,
+ constraint pkEnumerations
+ primary key ([ENUM_ID])
+);
+
+INSERT INTO Enumerations VALUES(1, 1, 1, 128);
+INSERT INTO Enumerations VALUES(2, 2, 2, 2048);
+INSERT INTO Enumerations VALUES(3, 3, 4, 256);
+INSERT INTO Enumerations VALUES(4, 4, 8, null);
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/line-item-init.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/line-item-init.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/line-item-init.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/line-item-init.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1,35 @@
+drop table LINEITEMS;
+
+create table LINEITEMS
+(
+ [LINEITEM_ID] long not null,
+ [ORDER_ID] long not null,
+ [LINEITEM_CODE] text(32) not null,
+ [LINEITEM_QUANTITY] long not null,
+ [LINEITEM_PRICE] decimal(18,2),
+ [LINEITEM_PICTURE] longbinary,
+ constraint pkLineItems
+ primary key ([ORDER_ID], [LINEITEM_ID])
+);
+
+INSERT INTO LineItems VALUES (1, 10, 'ESM-34', 1, 45.43, null);
+INSERT INTO LineItems VALUES (2, 10, 'QSM-98', 8, 8.40, null);
+INSERT INTO LineItems VALUES (1, 9, 'DSM-78', 2, 45.40, null);
+INSERT INTO LineItems VALUES (2, 9, 'TSM-12', 2, 32.12, null);
+INSERT INTO LineItems VALUES (1, 8, 'DSM-16', 4, 41.30, null);
+INSERT INTO LineItems VALUES (2, 8, 'GSM-65', 1, 2.20, null);
+INSERT INTO LineItems VALUES (1, 7, 'WSM-27', 7, 52.10, null);
+INSERT INTO LineItems VALUES (2, 7, 'ESM-23', 2, 123.34, null);
+INSERT INTO LineItems VALUES (1, 6, 'QSM-39', 9, 12.12, null);
+INSERT INTO LineItems VALUES (2, 6, 'ASM-45', 6, 78.77, null);
+INSERT INTO LineItems VALUES (1, 5, 'ESM-48', 3, 43.87, null);
+INSERT INTO LineItems VALUES (2, 5, 'WSM-98', 7, 5.40, null);
+INSERT INTO LineItems VALUES (1, 4, 'RSM-57', 2, 78.90, null);
+INSERT INTO LineItems VALUES (2, 4, 'XSM-78', 9, 2.34, null);
+INSERT INTO LineItems VALUES (1, 3, 'DSM-59', 3, 5.70, null);
+INSERT INTO LineItems VALUES (2, 3, 'DSM-53', 3, 98.78, null);
+INSERT INTO LineItems VALUES (1, 2, 'DSM-37', 4, 7.80, null);
+INSERT INTO LineItems VALUES (2, 2, 'FSM-12', 2, 55.78, null);
+INSERT INTO LineItems VALUES (1, 1, 'ESM-48', 8, 87.60, null);
+INSERT INTO LineItems VALUES (2, 1, 'ESM-23', 1, 55.40, null);
+
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/more-account-records.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/more-account-records.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/more-account-records.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/more-account-records.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1,6 @@
+INSERT INTO Accounts VALUES(6,'Jane', 'Calamity', 'Jane.Calamity@somewhere.com');
+INSERT INTO Accounts VALUES(7,'Lucky', 'Luke', 'Lucky.Luke@somewhere.com');
+INSERT INTO Accounts VALUES(8,'Ming', 'Li Foo', null);
+INSERT INTO Accounts VALUES(9,'O''Hara', 'Steve', 'Jack.OHara@somewhere.com');
+INSERT INTO Accounts VALUES(10,'Robert', 'O''Timmins', null);
+
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/order-init.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/order-init.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/order-init.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/order-init.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1,30 @@
+drop table ORDERS;
+
+create table ORDERS
+(
+ [ORDER_ID] long not null,
+ [ACCOUNT_ID] long not null,
+ [ORDER_DATE] datetime,
+ [ORDER_CARDTYPE] text(32),
+ [ORDER_CARDNUMBER] text(32),
+ [ORDER_CARDEXPIRY] text(32),
+ [ORDER_STREET] text(32),
+ [ORDER_CITY] text(32),
+ [ORDER_PROVINCE] text(32),
+ [ORDER_POSTALCODE] text(32),
+ [ORDER_FAVOURITELINEITEM] long,
+ constraint pkOrders
+ primary key ([ORDER_ID])
+);
+
+INSERT INTO Orders VALUES (1, 1, '2003-02-15 8:15:00', 'VISA', '999999999999', '05/03', '11 This Street', 'Victoria', 'BC', 'C4B 4F4',2);
+INSERT INTO Orders VALUES (2, 4, '2003-02-15 8:15:00', 'MC', '888888888888', '06/03', '222 That Street', 'Edmonton', 'AB', 'X4K 5Y4',1);
+INSERT INTO Orders VALUES (3, 3, '2003-02-15 8:15:00', 'AMEX', '777777777777', '07/03', '333 Other Street', 'Regina', 'SK', 'Z4U 6Y4',2);
+INSERT INTO Orders VALUES (4, 2, '2003-02-15 8:15:00', 'MC', '666666666666', '08/03', '444 His Street', 'Toronto', 'ON', 'K4U 3S4',1);
+INSERT INTO Orders VALUES (5, 5, '2003-02-15 8:15:00', 'VISA', '555555555555', '09/03', '555 Her Street', 'Calgary', 'AB', 'J4J 7S4',2);
+INSERT INTO Orders VALUES (6, 5, '2003-02-15 8:15:00', 'VISA', '999999999999', '10/03', '6 Their Street', 'Victoria', 'BC', 'T4H 9G4',1);
+INSERT INTO Orders VALUES (7, 4, '2003-02-15 8:15:00', 'MC', '888888888888', '11/03', '77 Lucky Street', 'Edmonton', 'AB', 'R4A 0Z4',2);
+INSERT INTO Orders VALUES (8, 3, '2003-02-15 8:15:00', 'AMEX', '777777777777', '12/03', '888 Our Street', 'Regina', 'SK', 'S4S 7G4',1);
+INSERT INTO Orders VALUES (9, 2, '2003-02-15 8:15:00', 'MC', '666666666666', '01/04', '999 Your Street', 'Toronto', 'ON', 'G4D 9F4',2);
+INSERT INTO Orders VALUES (10, 1, '2003-02-15 8:15:00', 'VISA', '555555555555', '02/04', '99 Some Street', 'Calgary', 'AB', 'W4G 7A4',1);
+
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/other-init.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/other-init.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/other-init.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/other-init.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1,10 @@
+drop table OTHERS;
+
+create table OTHERS
+(
+ OTHER_INT long,
+ OTHER_LONG decimal
+);
+
+INSERT INTO Others VALUES(1, 8888888);
+INSERT INTO Others VALUES(2, 9999999999);
\ No newline at end of file
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/swap-procedure.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/swap-procedure.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/swap-procedure.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/swap-procedure.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1 @@
+SELECT NULL;
\ No newline at end of file
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/user-init.sql
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/user-init.sql?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/user-init.sql (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/Scripts/Access/user-init.sql Tue Mar 1 22:15:12 2005
@@ -0,0 +1,12 @@
+drop table USERS;
+
+create table USERS
+(
+ [LOGONID] text(20) not null default 0,
+ [NAME] text(40) default null,
+ [PASSWORD] text(20) default null,
+ [EMAILADDRESS] text(40) default null,
+ [LASTLOGON] datetime default null,
+ constraint pkUsers
+ primary key ([LOGONID])
+);
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/bin/Debug/SqlMap_Access_OleDb.config
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/bin/Debug/SqlMap_Access_OleDb.config?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/bin/Debug/SqlMap_Access_OleDb.config (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/bin/Debug/SqlMap_Access_OleDb.config Tue Mar 1 22:15:12 2005
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="utf-8"?>
+<sqlMapConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="SqlMapConfig.xsd">
+
+ <settings>
+ <setting useStatementNamespaces="false"/>
+ <setting cacheModelsEnabled="true"/>
+ </settings>
+
+ <properties resource="Database.config"/>
+
+ <!-- ==== OleDb configuration ========= -->
+ <database>
+ <provider name="OleDb1.1"/>
+ <dataSource name="iBatisNetOLEDB" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\projects\ibatis\asf\trunk\cs\mapper\IBatisNet.mdb;User Id=admin;Password=;"/>
+ </database>
+
+ <alias>
+ <typeAlias alias="Account" type="IBatisNet.DataAccess.Test.Domain.Account, IBatisNet.DataAccess.Test" />
+ </alias>
+
+ <sqlMaps>
+ <sqlMap resource="Maps\Access\OleDb\Account.xml"/>
+ <sqlMap resource="Maps\Access\OleDb\DynamicAccount.xml"/>
+ <sqlMap resource="Maps\Access\OleDb\Order.xml"/>
+ <sqlMap resource="Maps\Access\OleDb\Category.xml"/>
+ <sqlMap resource="Maps\Access\OleDb\Complex.xml"/>
+ <sqlMap resource="Maps\Access\OleDb\LineItem.xml"/>
+ <sqlMap resource="Maps\Access\OleDb\Enumeration.xml"/>
+ <sqlMap resource="Maps\Access\OleDb\Other.xml"/>
+ </sqlMaps>
+
+</sqlMapConfig>
Added: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/bin/Debug/dao_Access_OleDb.config
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/bin/Debug/dao_Access_OleDb.config?view=auto&rev=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/bin/Debug/dao_Access_OleDb.config (added)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataAccess.Test/bin/Debug/dao_Access_OleDb.config Tue Mar 1 22:15:12 2005
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8"?>
+<daoConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="DaoConfig.xsd">
+
+ <daoSessionHandlers>
+ <handler id="NHibernate"
+ implementation="IBatisNet.DataAccess.Extensions.DaoSessionHandlers.NHibernateDaoSessionHandler, IBatisNet.DataAccess.Extensions">
+ </handler>
+ </daoSessionHandlers>
+
+ <context id="SimpleDao" default="true">
+
+ <properties resource="Database.config"/>
+
+ <!-- ==== OleDb configuration ========= -->
+ <database>
+ <provider name="OleDb1.1"/>
+ <dataSource name="iBatisNet" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\projects\ibatis\asf\trunk\cs\mapper\IBatisNet.mdb;User Id=admin;Password=;"/>
+ </database>
+
+ <daoFactory>
+ <dao interface="IBatisNet.DataAccess.Test.Dao.Interfaces.IAccountDao, IBatisNet.DataAccess.Test" implementation="IBatisNet.DataAccess.Test.Dao.Implementations.Ado.AccountDao, IBatisNet.DataAccess.Test"/>
+ </daoFactory>
+ </context>
+
+ <context id="SqlMapDao">
+
+ <properties resource="Database.config"/>
+
+ <!-- ==== OleDb configuration ========= -->
+ <database>
+ <provider name="OleDb1.1"/>
+ <dataSource name="iBatisNet" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\projects\ibatis\asf\trunk\cs\mapper\IBatisNet.mdb;User Id=admin;Password=;" />
+ </database>
+
+ <daoSessionHandler id="SqlMap">
+ <property name="sqlMapConfigFile" value="SqlMap_Access_OleDb.config"/>
+ </daoSessionHandler>
+
+ <daoFactory>
+ <dao interface="IBatisNet.DataAccess.Test.Dao.Interfaces.IAccountDao, IBatisNet.DataAccess.Test"
+ implementation="IBatisNet.DataAccess.Test.Dao.Implementations.DataMapper.AccountDao, IBatisNet.DataAccess.Test"/>
+ </daoFactory>
+ </context>
+
+ <context id="NHibernateDao">
+ <properties resource="Database.config"/>
+
+ <database>
+ <provider name="OleDb1.1"/>
+ <dataSource name="NHibernate" connectionString="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\projects\ibatis\asf\trunk\cs\mapper\NHibernate.mdb;User Id=admin;Password=;" />
+ </database>
+
+ <daoSessionHandler id="NHibernate">
+ <property name="hibernate.dialect" value="NHibernate.Dialect.GenericDialect"/>
+ <property name="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider"/>
+ <property name="hibernate.connection.driver_class" value="NHibernate.Driver.OleDbDriver"/>
+ <property name="mapping" value="IBatisNet.DataAccess.Test"/>
+ <property name="show_sql" value="false"/>
+ <property name="use_outer_join" value="true"/>
+ </daoSessionHandler>
+
+ <daoFactory>
+ <dao interface="IBatisNet.DataAccess.Test.Dao.Interfaces.IUserDao, IBatisNet.DataAccess.Test" implementation="IBatisNet.DataAccess.Test.Dao.Implementations.NHibernate.UserDao, IBatisNet.DataAccess.Test"/>
+ </daoFactory>
+ </context>
+
+</daoConfig>
Modified: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.csproj
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.csproj?view=diff&r1=155889&r2=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.csproj (original)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/IBatisNet.DataMapper.Test.csproj Tue Mar 1 22:15:12 2005
@@ -130,6 +130,10 @@
BuildAction = "Content"
/>
<File
+ RelPath = "bin\Debug\dao_Access_OleDb.config"
+ BuildAction = "None"
+ />
+ <File
RelPath = "bin\Debug\dao_MSSQL_Odbc.config"
BuildAction = "None"
/>
@@ -162,6 +166,10 @@
BuildAction = "None"
/>
<File
+ RelPath = "bin\Debug\SqlMap_Access_OleDb.config"
+ BuildAction = "None"
+ />
+ <File
RelPath = "bin\Debug\SqlMap_MSSQL_Odbc.config"
BuildAction = "None"
/>
@@ -282,6 +290,10 @@
BuildAction = "Content"
/>
<File
+ RelPath = "Maps\Access\OleDb\Document.xml"
+ BuildAction = "Content"
+ />
+ <File
RelPath = "Maps\Access\OleDb\DynamicAccount.xml"
BuildAction = "Content"
/>
@@ -298,6 +310,14 @@
BuildAction = "Content"
/>
<File
+ RelPath = "Maps\Access\OleDb\Other.xml"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Maps\Access\OleDb\ResultClass.xml"
+ BuildAction = "Content"
+ />
+ <File
RelPath = "Maps\MSSQL\Odbc\Account.xml"
BuildAction = "Content"
/>
@@ -617,6 +637,62 @@
RelPath = "NUnit\SqlMapTests\Oracle\StatementTest.cs"
SubType = "Code"
BuildAction = "Compile"
+ />
+ <File
+ RelPath = "Scripts\Access\account-init.sql"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Scripts\Access\account-procedure.sql"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Scripts\Access\category-init.sql"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Scripts\Access\category-procedure.sql"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Scripts\Access\DataBase.sql"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Scripts\Access\DataBaseNHibernate.sql"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Scripts\Access\documents-init.sql"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Scripts\Access\enumeration-init.sql"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Scripts\Access\line-item-init.sql"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Scripts\Access\more-account-records.sql"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Scripts\Access\order-init.sql"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Scripts\Access\other-init.sql"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Scripts\Access\swap-procedure.sql"
+ BuildAction = "Content"
+ />
+ <File
+ RelPath = "Scripts\Access\user-init.sql"
+ BuildAction = "Content"
/>
<File
RelPath = "Scripts\MSSQL\account-init.sql"
Modified: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/Access/OleDb/Account.xml
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/Access/OleDb/Account.xml?view=diff&r1=155889&r2=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/Access/OleDb/Account.xml (original)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/Access/OleDb/Account.xml Tue Mar 1 22:15:12 2005
@@ -1,56 +1,10 @@
<?xml version="1.0" encoding="UTF-8" ?>
-<sqlMap name="Account" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="..\..\Nausicaa.Framework.Dal\Schemas\SqlMap.xsd">
-
- <alias>
- <typeAlias name="Account" assembly="IBatisNet.Test.dll" class="IBatisNet.Test.Domain.Account" />
- </alias>
-
- <!-- =============================================
- <resultMap
- name="name"
- class="name"
- extend="resultMap"
- >
- <result
- property="name"
- column="name"
- columnIndex="name"
- nullValue="value"
- select="name"
- resultMap="name"
- lazyLoad="true/false"
- dbType=""
- />
- <procedure
- name="name"
- parameterMap="name"
- >
- <statement
- name="name"
- parameterClass="name"
- parameterMap="name"
- resultClass="name"
- resultMap="name"
- listClass="name"
- >
- <parameterMap
- name="name"
- class=""
- >
- <parameter
- property="name"
- dbType=""
- output="true/false"
- type=""
- nullValue=""
- />
-
- ============================================= -->
-
+<sqlMap namespace="Account" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="SqlMap.xsd">
+
<cacheModels>
- <cacheModel name="account-cache" implementation="MEMORY" >
+ <cacheModel id="account-cache" implementation="MEMORY" >
<flushInterval hours="24"/>
<flushOnExecute statement="UpdateAccountViaInlineParameters"/>
<flushOnExecute statement="UpdateAccountViaParameterMap"/>
@@ -67,30 +21,30 @@
</cacheModels>
<resultMaps>
- <resultMap name="account-result" class="Account" >
+ <resultMap id="account-result" class="Account" >
<result property="Id" column="Account_ID"/>
<result property="FirstName" column="Account_FirstName"/>
<result property="LastName" column="Account_LastName"/>
<result property="EmailAddress" column="Account_Email" nullValue="no_email@provided.com"/>
</resultMap>
- <resultMap name="indexed-account-result" class="Account">
+ <resultMap id="indexed-account-result" class="Account">
<result property="Id" column="Account_ID" columnIndex="0"/>
<result property="FirstName" column="Account_FirstName" columnIndex="1"/>
<result property="LastName" column="Account_LastName" columnIndex="2"/>
<result property="EmailAddress" column="Account_Email" columnIndex="3" nullValue="no_email@provided.com"/>
</resultMap>
- <resultMap name="account-result-nullable-email" class="Account">
+ <resultMap id="account-result-nullable-email" class="Account">
<result property="Id" column="Account_ID"/>
<result property="FirstName" column="Account_FirstName"/>
<result property="LastName" column="Account_LastName"/>
<result property="EmailAddress" column="Account_Email"/>
</resultMap>
- <resultMap name="email-result" class="string">
+ <resultMap id="email-result" class="string">
<result property="value" column="Account_Email"/>
</resultMap>
- <resultMap name="account-hashtable-result" class="Hashtable">
+ <resultMap id="account-hashtable-result" class="Hashtable">
<result property="Id" column="Account_ID"/>
<result property="FirstName" column="Account_FirstName"/>
<result property="LastName" column="Account_LastName"/>
@@ -104,16 +58,41 @@
=============================================
-->
<statements>
-
- <select name="GetCachedAccountsViaResultMap"
+
+ <select id="GetAccountsDynamic" resultMap="account-result" parameterClass="Hashtable" >
+ select top $MaximumAllowed$ * from Accounts
+ <dynamic prepend="where">
+ <isParameterPresent>
+ <isNotEmpty prepend="and" property="FirstName" >
+ Account_FirstName LIKE '%$FirstName$%'
+ </isNotEmpty>
+ <isNotEmpty prepend="and" property="LastName" >
+ Account_LastName LIKE '%$LastName$%'
+ </isNotEmpty>
+ <isNotEmpty prepend="and" property="EmailAddress" >
+ Account_Email LIKE '%$EmailAddress$%'
+ </isNotEmpty>
+ </isParameterPresent>
+ </dynamic>
+ order by Account_LastName
+ </select>
+
+ <select id="GetCachedAccountsViaResultMap"
resultMap="account-result"
cacheModel="account-cache" >
select *
from Accounts
order by Account_ID
</select>
+
+ <select id="SelectWithProperty"
+ resultMap="account-result">
+ select *
+ from Accounts
+ where Account_FirstName = ${accountName}
+ </select>
- <select name="GetAccountAsHashtable"
+ <select id="GetAccountAsHashtable"
parameterClass="Integer"
resultMap="account-hashtable-result">
select *
@@ -121,14 +100,14 @@
where Account_ID = #value#
</select>
- <select name="GetAllAccountsAsHashMapViaResultMap"
+ <select id="GetAllAccountsAsHashMapViaResultMap"
resultMap="account-hashtable-result">
select *
from Accounts
order by Account_ID
</select>
- <select name="GetAccountAsHashtableResultClass"
+ <select id="GetAccountAsHashtableResultClass"
parameterClass="int"
resultClass="HashMap">
select
@@ -140,7 +119,7 @@
where Account_ID = #value#
</select>
- <select name="GetAllAccountsAsHashtableViaResultClass"
+ <select id="GetAllAccountsAsHashtableViaResultClass"
resultClass="Hashtable">
select
Account_ID as Id,
@@ -151,7 +130,7 @@
order by Account_ID
</select>
- <select name="GetAccountViaColumnName"
+ <select id="GetAccountViaColumnName"
parameterClass="int"
resultMap="account-result">
select
@@ -163,7 +142,7 @@
where Account_ID = #value#
</select>
- <select name="GetAccountViaColumnIndex"
+ <select id="GetAccountViaColumnIndex"
parameterClass="int"
resultMap="indexed-account-result">
select
@@ -175,13 +154,13 @@
where Account_ID = #value#
</select>
- <select name="GetAllAccountsViaResultMap"
+ <select id="GetAllAccountsViaResultMap"
resultMap="account-result">
select * from Accounts
order by Account_ID
</select>
- <select name="GetAllAccountsViaResultClass"
+ <select id="GetAllAccountsViaResultClass"
resultClass="Account">
select
Account_ID as Id,
@@ -192,7 +171,16 @@
order by Account_ID
</select>
- <select name="GetNoAccountsViaResultMap"
+ <select id="GetFewAccountsViaResultMap"
+ resultMap="account-result">
+ <![CDATA[
+ select * from Accounts
+ where Account_ID < 2
+ order by Account_ID
+ ]]>
+ </select>
+
+ <select id="GetNoAccountsViaResultMap"
resultMap="account-result">
select * from Accounts
where Account_ID > 1000
@@ -200,7 +188,7 @@
</select>
- <select name="GetAccountNullableEmail"
+ <select id="GetAccountNullableEmail"
resultMap="account-result-nullable-email">
select
Account_ID,
@@ -211,7 +199,7 @@
where Account_ID = #value#
</select>
- <select name="GetAccountViaResultClass"
+ <select id="GetAccountViaResultClass"
resultClass="Account">
<![CDATA[
select
@@ -224,7 +212,7 @@
]]>
</select>
- <select name="GetAccountViaInlineParameters"
+ <select id="GetAccountViaInlineParameters"
resultMap="account-result">
select
Account_ID,
@@ -235,13 +223,13 @@
where Account_ID = #Id# and Account_ID = #Id#
</select>
- <select name="GetEmailAddressViaResultClass" resultClass="string">
- select Account_Email as value
+ <select id="GetEmailAddressViaResultClass" resultClass="string">
+ select Account_Email as [value]
from Accounts
where Account_ID = #value#
</select>
- <select name="GetEmailAddressViaResultMap"
+ <select id="GetEmailAddressViaResultMap"
parameterClass="int"
resultMap="email-result">
select Account_Email
@@ -249,21 +237,21 @@
where Account_ID = #value#
</select>
- <select name="GetAllEmailAddressesViaResultClass"
+ <select id="GetAllEmailAddressesViaResultClass"
resultClass="string">
select Account_Email
from Accounts
order by Account_ID
</select>
- <select name="GetAllEmailAddressesViaResultMap"
+ <select id="GetAllEmailAddressesViaResultMap"
resultMap="email-result">
select Account_Email
from Accounts
order by Account_ID
</select>
- <insert name="InsertAccountViaParameterMap"
+ <insert id="InsertAccountViaParameterMap"
parameterMap="insert-params">
insert into Accounts
(Account_ID, Account_FirstName, Account_LastName, Account_Email)
@@ -271,7 +259,7 @@
(?, ?, ?, ?)
</insert>
- <update name="UpdateAccountViaParameterMap"
+ <update id="UpdateAccountViaParameterMap"
parameterMap="update-params">
update Accounts set
Account_FirstName = ?,
@@ -281,7 +269,7 @@
Account_ID = ?
</update>
- <update name="UpdateAccountViaParameterMap2"
+ <update id="UpdateAccountViaParameterMap2"
parameterMap="update-params2">
update Accounts set
Account_ID = ?,
@@ -292,13 +280,13 @@
Account_ID = ?
</update>
- <delete name="DeleteAccountViaInlineParameters">
+ <delete id="DeleteAccountViaInlineParameters">
delete from Accounts
where
Account_ID = #Id#
</delete>
- <select name="GetAccountComplexMapping"
+ <select id="GetAccountComplexMapping"
resultMap="indexed-account-result"
parameterClass="Hashtable">
select *
@@ -308,7 +296,7 @@
And Account_LastName = #Order.City#
</select>
- <select name="GetDynamicOrderedEmailAddressesViaResultMap"
+ <select id="GetDynamicOrderedEmailAddressesViaResultMap"
resultMap="email-result">
select Account_Email
from Accounts
@@ -316,21 +304,21 @@
</select>
<!-- Dynamic statements -->
- <select name="GetAllAccountsViaResultMapWithDynamicElement"
+ <select id="GetAllAccountsViaResultMapWithDynamicElement"
resultMap="account-result">
select * from Accounts
where Account_Email $value$ '%@%'
order by Account_ID
</select>
- <select name="SimpleDynamicSubstitution"
+ <select id="SimpleDynamicSubstitution"
parameterClass="Hashtable"
resultClass="Account">
$statement$
</select>
<!-- Public Fields -->
- <insert name="InsertAccountViaPublicFields">
+ <insert id="InsertAccountViaPublicFields">
insert into Accounts
(Account_ID, Account_FirstName, Account_LastName, Account_Email)
values
@@ -339,7 +327,7 @@
</insert>
<!-- Inline Parameters -->
- <update name="UpdateAccountViaInlineParameters"
+ <update id="UpdateAccountViaInlineParameters"
parameterClass="Account">
update Accounts set
Account_FirstName = #FirstName#,
@@ -349,7 +337,7 @@
Account_ID = #Id#
</update>
- <insert name="InsertAccountViaInlineParameters"
+ <insert id="InsertAccountViaInlineParameters"
parameterClass="Account" >
insert into Accounts
(Account_ID, Account_FirstName, Account_LastName, Account_Email)
@@ -358,7 +346,7 @@
)
</insert>
- <insert name="InsertAccountNullableEmail"
+ <insert id="InsertAccountNullableEmail"
parameterClass="Account" >
insert into Accounts
(Account_ID, Account_FirstName, Account_LastName, Account_Email)
@@ -366,27 +354,57 @@
( #Id#, #FirstName#, #LastName#, #EmailAddress:VarChar# )
</insert>
- <insert name="InsertAccountUknownParameterClass">
+ <insert id="InsertAccountUknownParameterClass">
insert into Accounts
(Account_ID, Account_FirstName, Account_LastName, Account_Email)
values
( #Id#, #FirstName#, #LastName#, #EmailAddress:VarChar# )
</insert>
- <delete name="DeleteAccount"
+ <delete id="DeleteAccount"
parameterClass="Account">
delete from Accounts
where Account_ID = #Id#
and Account_ID = #Id#
</delete>
+
+ <!-- Extends statement -->
+ <select id="GetAllAccounts"
+ resultMap="account-result">
+ select
+ Account_ID,
+ Account_FirstName,
+ Account_LastName,
+ Account_Email
+ from Accounts
+ </select>
+
+ <select id="GetAllAccountsOrderByName"
+ extends="GetAllAccounts"
+ resultMap="account-result">
+ order by Account_FirstName
+ </select>
+
+ <select id="GetOneAccount"
+ extends="GetAllAccounts"
+ resultMap="account-result">
+ where Account_ID = #value#
+ </select>
+ <select id="GetSomeAccount"
+ extends="GetAllAccounts"
+ parameterClass="Hashtable"
+ resultMap="account-result">
+ where Account_ID between #lowID# and #hightID#
+ </select>
+
<!-- For procedure, the parameters of the parameterMap must in the same order
as for the procedure paramaters-->
- <procedure name="InsertAccountViaStoreProcedure" parameterMap="insert-params">
+ <procedure id="InsertAccountViaStoreProcedure" parameterMap="insert-params">
sp_InsertAccount
</procedure>
- <procedure name="SwapEmailAddresses" parameterMap="swap-params">
+ <procedure id="SwapEmailAddresses" parameterMap="swap-params">
ps_swap_email_address
</procedure>
</statements>
@@ -396,26 +414,26 @@
============================================= -->
<parameterMaps>
- <parameterMap name="swap-params">
+ <parameterMap id="swap-params">
<parameter property="email1" column="First_Email" />
<parameter property="email2" column="Second_Email" />
</parameterMap>
- <parameterMap name="insert-params">
+ <parameterMap id="insert-params">
<parameter property="Id" />
<parameter property="FirstName" />
<parameter property="LastName" />
<parameter property="EmailAddress" nullValue="no_email@provided.com"/>
</parameterMap>
- <parameterMap name="update-params">
+ <parameterMap id="update-params">
<parameter property="FirstName" />
<parameter property="LastName" />
<parameter property="EmailAddress" nullValue="no_email@provided.com"/>
<parameter property="Id" />
</parameterMap>
- <parameterMap name="update-params2">
+ <parameterMap id="update-params2">
<parameter property="Id" />
<parameter property="FirstName" />
<parameter property="LastName" />
Modified: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/Access/OleDb/Category.xml
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/Access/OleDb/Category.xml?view=diff&r1=155889&r2=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/Access/OleDb/Category.xml (original)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/Access/OleDb/Category.xml Tue Mar 1 22:15:12 2005
@@ -1,54 +1,185 @@
<?xml version="1.0" encoding="utf-8"?>
-<sqlMap name="Category" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="..\..\Nausicaa.Framework.Dal\Schemas\SqlMap.xsd">
+<sqlMap namespace="Category" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="SqlMap.xsd">
<alias>
- <typeAlias name="Category" assembly="IBatisNet.Test.dll" class="IBatisNet.Test.Domain.Category"/>
+ <typeAlias alias="Category" type="IBatisNet.DataMapper.Test.Domain.Category, IBatisNet.DataMapper.Test"/>
</alias>
<statements>
- <select name="GetCategory" parameterClass="Integer" resultClass="Category">
+ <select id="GetCategory" parameterClass="Integer" resultClass="Category">
select
- Category_ID as Id,
- Category_Name as Name,
- Category_Guid as Guid
+ Category_ID as [Id],
+ Category_Name as [Name],
+ Category_Guid as [Guid]
from Categories
where Category_ID = #value#
</select>
<!-- Test for statement as insert -->
- <statement name="InsertCategory" parameterClass="Category" resultClass="int">
+ <!-- Needs to be <insert> vs <statement> for Access due to selectKey -->
+ <insert id="InsertCategory" parameterClass="Category" resultClass="int">
+ <selectKey property="Id" type="post" resultClass="int">
+ select @@IDENTITY as [value];
+ </selectKey>
insert into Categories
(Category_Name, Category_Guid)
values
(#Name#, #Guid:Guid#);
- select SCOPE_IDENTITY() as value
- </statement><!--Guid for Oledb, UniqueIdentifier for SqlClient,Odbc -->
-
- <!-- -->
- <insert name="InsertCategoryViaInsertSatement" parameterClass="Category" >
+ </insert><!--Guid for Oledb, UniqueIdentifier for SqlClient,Odbc -->
+
+ <!-- Test for Guid Parameter Class-->
+ <statement id="InsertCategoryGuidParameterClass" parameterClass="Guid" resultClass="int">
+ <selectKey property="Id" type="post" resultClass="int">
+ select @@IDENTITY as [value];
+ </selectKey>
+ insert into Categories
+ (Category_Name, Category_Guid)
+ values
+ ('toto', #value:Guid#);
+ </statement><!--Guid for Oledb, UniqueIdentifier for SqlClient,Odbc -->
+
+ <!-- JIRA 20 Test without specifying the dbtype-->
+ <statement id="InsertCategoryGuidParameterClassJIRA20" parameterClass="Guid" resultClass="int">
+ <selectKey property="Id" type="post" resultClass="int">
+ select @@IDENTITY as [value];
+ </selectKey>
+ insert into Categories
+ (Category_Name, Category_Guid)
+ values
+ ('toto', #value#);
+ </statement>
+
+ <insert id="InsertCategoryViaInsertStatement" parameterClass="Category" >
<selectKey property="Id" type="post" resultClass="int">
- select @@IDENTITY as value
+ select @@IDENTITY as [value];
</selectKey>
insert into Categories
(Category_Name, Category_Guid)
values
- (#Name#, #Guid:Guid#)
+ (#Name#, #Guid:Guid#);
</insert><!--Guid for Oledb, UniqueIdentifier for SqlClient, Odbc -->
- <procedure name="InsertCategoryViaStoreProcedure" parameterMap="insert-params">
+ <statement id="InsertCategoryViaParameterMap" parameterMap="InsertParam" resultClass="int">
+ <selectKey property="Id" type="post" resultClass="int">
+ select @@IDENTITY as [value];
+ </selectKey>
+ insert into Categories
+ (Category_Name, Category_Guid)
+ values
+ (?,?);
+ </statement>
+
+ <!-- Needs to be <insert> vs <statement> for Access due to selectKey -->
+ <insert id="InsertCategoryNull" parameterMap="insert-null-params" resultClass="int">
+ <selectKey property="Id" type="post" resultClass="int">
+ select @@IDENTITY as [value];
+ </selectKey>
+ insert into Categories
+ (Category_Name, Category_Guid)
+ values
+ (?,?);
+ </insert>
+
+ <update id="UpdateCategoryViaParameterMap" parameterMap="UpdateParam">
+ update Categories set
+ Category_Name =?,
+ Category_Guid = ?
+ where
+ Category_Id = ?
+ </update>
+
+ <procedure id="InsertCategoryViaStoreProcedure" parameterMap="insert-params">
sp_InsertCategorie
</procedure>
+
+ <insert id="InsertCategoryGenerate" parameterMap="insert-generate-params">
+ <selectKey property="Id" type="post" resultClass="int">
+ select @@IDENTITY as [value]
+ </selectKey>
+ <generate table="Categories" />
+ </insert>
+
+ <update id="UpdateCategoryGenerate" parameterMap="update-generate-params">
+ <generate table="Categories" by="Category_Id"/>
+ </update>
+
+ <delete id="DeleteCategoryGenerate" parameterMap="delete-generate-params">
+ <generate table="Categories" by="Category_Id, Category_Name"/>
+ </delete>
+
+ <select id="SelectByPKCategoryGenerate" resultClass="Category" parameterClass="Category" parameterMap="select-generate-params">
+ <generate table="Categories" by="Category_Id"/>
+ </select>
+ <select id="SelectAllCategoryGenerate" resultClass="Category" parameterMap="select-generate-params">
+ <generate table="Categories" />
+ </select>
+
+ <statement id="DynamicGuid"
+ resultClass="Category"
+ parameterClass="Category">
+ select
+ Category_ID as [Id],
+ Category_Name as [Name],
+ Category_Guid as [Guid]
+ from Categories
+ <dynamic prepend="where">
+ <isNotEqual prepend="and" property="Guid" compareProperty="EmptyGuid">
+ Category_Guid=#Guid:Guid#
+ </isNotEqual>
+ </dynamic>
+ </statement>
</statements>
<parameterMaps>
- <parameterMap name="insert-params">
+ <parameterMap id="insert-params">
<parameter property="Id" column="Category_Id" dbType="Integer" /><!-- Int for SqlClient, Obdc; Integer for Oledb -->
<parameter property="Name" column="Category_Name"/>
<parameter property="Guid" column="Category_Guid" dbType="Guid"/><!--Guid for Oledb, UniqueIdentifier for SqlClient,Odbc -->
</parameterMap>
+
+ <parameterMap id="InsertParam">
+ <parameter property="Name" column="Category_Name"/>
+ <parameter property="Guid" column="Category_Guid" dbType="Guid"/><!--Guid for Oledb, UniqueIdentifier for SqlClient,Odbc -->
+ </parameterMap>
+
+ <parameterMap id="insert-null-params">
+ <parameter property="Name" column="Category_Name"/>
+ <parameter property="Guid" column="Category_Guid" nullValue="00000000-0000-0000-0000-000000000000" dbType="Guid"/><!--Guid for Oledb, UniqueIdentifier for SqlClient,Odbc -->
+ </parameterMap>
+
+ <parameterMap id="UpdateParam" extends="InsertParam">
+ <parameter property="Id" column="Category_Id" />
+ </parameterMap>
+
+ <!-- Used by generated statement -->
+
+ <parameterMap id="insert-generate-params">
+ <parameter property="Name" column="Category_Name"/>
+ <parameter property="Guid" column="Category_Guid" dbType="Guid"/><!--Guid for Oledb, UniqueIdentifier for SqlClient,Odbc -->
+ </parameterMap>
+
+ <parameterMap id="update-generate-params" extends="insert-generate-params">
+ <parameter property="Id" column="Category_Id" />
+ </parameterMap>
+
+ <parameterMap id="delete-generate-params">
+ <parameter property="Id" column="Category_Id" />
+ <parameter property="Name" column="Category_Name"/>
+ </parameterMap>
+
+ <parameterMap id="selectByPK-generate-params">
+ <parameter property="Id" column="Category_Id" />
+ </parameterMap>
+
+ <parameterMap id="select-generate-params">
+ <parameter property="Id" column="Category_Id" />
+ <parameter property="Name" column="Category_Name"/>
+ <parameter property="Guid" column="Category_Guid" dbType="Guid"/>
+ </parameterMap>
+
</parameterMaps>
</sqlMap>
Modified: incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/Access/OleDb/Complex.xml
URL: http://svn.apache.org/viewcvs/incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/Access/OleDb/Complex.xml?view=diff&r1=155889&r2=155890
==============================================================================
--- incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/Access/OleDb/Complex.xml (original)
+++ incubator/ibatis/trunk/cs/mapper/IBatisNet.DataMapper.Test/Maps/Access/OleDb/Complex.xml Tue Mar 1 22:15:12 2005
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8" ?>
-<sqlMap name="Category" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:noNamespaceSchemaLocation="..\..\Nausicaa.Framework.Dal\Schemas\SqlMap.xsd">
+<sqlMap namespace="Category" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:noNamespaceSchemaLocation="SqlMap.xsd">
<statements>
- <statement name="ComplexMap"
+ <statement id="ComplexMap"
resultClass="int" >
select Account_ID from Accounts where Account_ID = #obj.Map.Id#
</statement>