diff options
Diffstat (limited to 'tests/unit/Data/SqlMap/maps/mssql/Order.xml')
-rw-r--r-- | tests/unit/Data/SqlMap/maps/mssql/Order.xml | 475 |
1 files changed, 475 insertions, 0 deletions
diff --git a/tests/unit/Data/SqlMap/maps/mssql/Order.xml b/tests/unit/Data/SqlMap/maps/mssql/Order.xml new file mode 100644 index 00000000..87a2d1a0 --- /dev/null +++ b/tests/unit/Data/SqlMap/maps/mssql/Order.xml @@ -0,0 +1,475 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<sqlMap namespace="Order" > + + + <resultMap id="credit-card-result" class="string"> + <result property="value" column="Order_CardNumber"/> + </resultMap> + + <resultMap id="order-with-lines-result" class="Order" + extends="lite-order-result-by-name" > + <result property="LineItemsList" lazyLoad="true" column="Order_ID" select="GetLineItemsForOrder" /> + </resultMap> + + <resultMap id="order-with-lines-result-statement-namespaces" class="Order" + extends="lite-order-result-by-name" > + <result property="LineItemsList" 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 id="order-with-lines-array" class="Order" + extends="lite-order-result-by-name"> + <result property="LineItemsArray" column="Order_ID" select="GetLineItemsForOrder"/> + </resultMap> + + <resultMap id="lite-order-map-result" class="array"> + <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 id="lite-order-result-by-name" class="Order"> + <result property="Id" column="Order_ID"/> + <result property="Date" type="date" column="Order_Date" nullValue="0001-01-01 00:00:00"/> + <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> + + <resultMap id="order-with-types-result" class="Order"> + <result property="Id" column="Order_ID" dbType="Int"/><!-- Int for SqlClient, Obdc; Integer for Oledb --> + <result property="Date" type="date" column="Order_Date" dbType="DateTime "/> + <result property="CardExpiry" column="Order_CardExpiry" dbType="VarChar"/> + <result property="CardType" column="Order_CardType" dbType="VarChar"/> + <result property="CardNumber" column="Order_CardNumber" dbType="VarChar"/> + <result property="Street" column="Order_Street" dbType="VarChar"/> + <result property="City" column="Order_City" dbType="VarChar"/> + <result property="Province" column="Order_Province" dbType="VarChar"/> + <result property="PostalCode" column="Order_PostalCode" dbType="VarChar"/> + </resultMap> + + <resultMap id="lite-order-result-by-index" class="Order"> + <result property="Id" column="Order_ID" columnIndex="0"/> + <result property="Date" type="date" column="Order_Date" columnIndex="1" /> + <result property="CardExpiry" column="Order_CardExpiry" columnIndex="2"/> + <result property="CardType" column="Order_CardType" columnIndex="3" /> + <result property="CardNumber" column="Order_CardNumber" columnIndex="4" /> + <result property="Street" column="Order_Street" columnIndex="5" /> + <result property="City" column="Order_City" columnIndex="6" /> + <result property="Province" column="Order_Province" columnIndex="7"/> + <result property="PostalCode" column="Order_PostalCode" columnIndex="8" /> + </resultMap> + + <resultMap id="order-with-account-result" class="Order"> + <result property="Id" column="Order_ID"/> + <result property="Date" type="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"/> + <result property="Account" column="Account_ID" select="GetAccountViaColumnName" /> + </resultMap> + + <resultMap id="order-with-sp-account-result" class="Order"> + <result property="Id" column="Order_ID"/> + <result property="Date" type="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"/> + <result property="Account" column="Account_ID=Account_ID" select="GetAccountViaSP" /> + </resultMap> + + <resultMap id="order-with-collection-result" class="Order"> + <result property="Id" column="Order_ID"/> + <result property="Date" type="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"/> + <result property="LineItemsList" column="Order_ID" select="GetLineItemsForOrder" /> + <result property="LineItems" column="Order_ID" select="GetLineItemsForOrder" lazyLoad="false" /> + </resultMap> + + <resultMap id="order-with-favourite-line-item" class="Order"> + <result property="Id" column="Order_ID"/> + <result property="Date" type="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"/> + <result property="FavouriteLineItem" column="Order_ID=Order_ID,LineItem_ID=Order_FavouriteLineItem" select="GetSpecificLineItem" /> + </resultMap> + + <resultMap id="order-with-dyn-favourite-line-item" class="Order"> + <result property="Id" column="Order_ID"/> + <result property="Date" type="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"/> + <result property="FavouriteLineItem" + column="Order_ID=Order_ID,LineItem_ID=Order_FavouriteLineItem" + select="GetDynSpecificLineItem" /> + </resultMap> + <resultMap id="order-joined-favourite" class="Order"> + <result property="Id" column="Order_ID"/> + <result property="Date" type="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"/> + <result property="FavouriteLineItem" resultMapping="LineItem" /> + </resultMap> + + <resultMap id="order-joined-favourite2" class="Order"> + <result property="Id" column="Order_ID"/> + <result property="Date" type="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"/> + <result property="FavouriteLineItem.Id" column="LineItem_ID"/> + <result property="FavouriteLineItem.Code" column="LineItem_Code"/> + <result property="FavouriteLineItem.Quantity" column="LineItem_Quantity"/> + <result property="FavouriteLineItem.Price" column="LineItem_Price"/> + </resultMap> + + <resultMap id="order-joined-with-account" class="Order"> + <result property="Id" column="Order_ID"/> + <result property="Date" type="date" column="Order_Date" nullValue="0001-01-01 00:00:00"/> + <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"/> + <result property="Account" resultMapping="account-result-nullable-email" /> + </resultMap> + + <resultMap id="order-hash" class="array"> + <result property="Date" column="Order_Date" nullValue="0001-01-01 00:00:00"/> + </resultMap> + + <statement id="GetOrderByHashTable" + parameterClass="Int" + resultMap="order-hash" > + select Order_Date from Orders where Order_ID = #value# + </statement> + + <statement id="GetOrderLiteByColumnName" + parameterClass="Int" + resultMap="lite-order-result-by-name" > + select * from Orders where Order_ID = #value# + </statement> + + <statement id="GetOrderLiteByColumnIndex" + parameterClass="Int" + resultMap="lite-order-result-by-index" > + select + Order_ID, + Order_Date, + Order_CardExpiry, + Order_CardType, + Order_CardNumber, + Order_Street, + Order_City, + Order_Province, + Order_PostalCode + from Orders where Order_ID = #value# + </statement> + + <statement id="GetOrderWithTypes" + parameterClass="Int" + resultMap="order-with-types-result" > + select * from Orders where Order_ID = #value# + </statement> + + <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 id="GetAllOrderWithLineItems" + parameterClass="Integer" + resultMap="order-with-lines-result" > + select * from Orders + </statement> + + <statement id="GetOrderCardExpiryViaResultClass" + parameterClass="int" + resultClass="date"> + select + Order_Date as datetime + from Orders where Order_ID = #value# + </statement> + + <statement id="GetOrderWithAccount" + parameterClass="int" + resultMap="order-with-account-result" > + select * from Orders where Order_ID = #value# + </statement> + + <statement id="GetOrderWithAccountViaSP" + parameterClass="int" + resultMap="order-with-sp-account-result" > + select * from Orders where Order_ID = #value# + </statement> + + <statement id="GetOrderWithLineItemsCollection" + parameterClass="Integer" + resultMap="order-with-collection-result" > + select * from Orders where Order_ID = #value# + </statement> + + <statement id="GetOrderJoinedFavourite" + parameterClass="Integer" + resultMap="order-joined-favourite" > + select * from Orders, LineItems + where Orders.Order_ID = LineItems.Order_ID + and Order_FavouriteLineItem = LineItems.LineItem_ID + and Orders.Order_ID = #value# + </statement> + + <statement id="GetOrderJoinedFavourite2" + parameterClass="Integer" + resultMap="order-joined-favourite2" > + select * from Orders, LineItems + where Orders.Order_ID = LineItems.Order_ID + and Order_FavouriteLineItem = LineItems.LineItem_ID + and Orders.Order_ID = #value# + </statement> + + <statement id="GetOrderJoinedFavourite3" + parameterClass="Integer" + resultClass="Order" > + select + Orders.Order_ID as Id, + Order_Date as Date, + Order_CardExpiry as CardExpiry, + Order_CardType as CardType, + Order_CardNumber as CardNumber, + Order_Street as Street, + Order_City as City, + Order_Province as Province, + Order_PostalCode as PostalCode, + LineItem_ID as "FavouriteLineItem.Id", + LineItem_Code as "FavouriteLineItem.Code", + LineItem_Quantity as "FavouriteLineItem.Quantity", + LineItem_Price as "FavouriteLineItem.Price" + from Orders, LineItems + where Orders.Order_ID = LineItems.Order_ID + and Order_FavouriteLineItem = LineItems.LineItem_ID + and Orders.Order_ID = #value# + </statement> + + <statement id="GetOrderWithFavouriteLineItem" + parameterClass="int" + resultMap="order-with-favourite-line-item" > + select * from Orders where Order_ID = #value# + </statement> + + <statement id="GetOrderWithLineItemCollection" + parameterClass="int" + resultMap="order-with-lines-collection" > + select * from Orders where Order_ID = #value# + </statement> + + <statement id="GetOrderAsHastable" + parameterClass="Integer" + resultMap="lite-order-map-result" > + select * from Orders where Order_ID = #value# + </statement> + + <statement id="GetOrderWithLineItemArray" + parameterClass="int" + resultMap="order-with-lines-array"> + select * from Orders where Order_ID = #value# + </statement> + + <statement id="GetAllCreditCardNumbersFromOrders" + resultMap="credit-card-result" > + select distinct Order_CardNumber from Orders + order by Order_CardNumber + </statement> + + <statement id="InsertOrderViaParameterMap" + parameterMap="order-insert-params" > + 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> + + <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> + + <statement id="InsertOrderViaPublicFields"> + insert into Orders + (Order_ID, Account_ID, Order_Date, Order_CardExpiry, Order_CardType, + Order_CardNumber, Order_Street, Order_City, Order_Province, Order_PostalCode ) + values + (#Id#, #Account.Id#, #Date#, #CardExpiry#, #CardType#, #CardNumber#, #Street#, #City#, #Province#, #PostalCode#) + </statement> + + <select id="GetOrderWithDynFavouriteLineItem" + parameterClass="Integer" + resultMap="order-with-dyn-favourite-line-item"> + select * from Orders where Order_ID = #value# + </select> + + <select id="SelectOrderByDate" + parameterClass="array" + resultMap="lite-order-result-by-name"> + select * from Orders where Order_Date = #Foo# + </select> + + <select id="SelectOrderByDateDynamic" + parameterClass="array" + resultMap="lite-order-result-by-name"> + select * from Orders + where 1=1 + <isNotEmpty prepend="AND" property="Foo"> + (Order_Date = '$Foo$') + </isNotEmpty> + </select> + + <select id="GetAccountJIRA45" + parameterClass="int" + resultMap="indexed-account-result"> + select + Account_ID, + Account_FirstName, + Account_LastName, + Account_Email + from Accounts + where Account_ID = #value# + </select> + + <select id="GetOrderJoinWithAccount" + parameterClass="Integer" + resultMap="order-joined-with-account"> + select + Order_ID, + Order_Date, + Order_CardExpiry, + Order_CardType, + Order_CardNumber, + Order_Street, + Order_City, + Order_Province, + Order_PostalCode, + acc.Account_ID, + acc.Account_FirstName, + acc.Account_LastName, + acc.Account_Email + from Orders as ord + LEFT OUTER JOIN Accounts as acc on acc.Account_ID = ord.Account_ID + where Order_ID = #value# + </select> + + + <parameterMap id="order-insert-params"> + <parameter property="Id" dbType="Int"/> <!-- Int for SqlClient, Obdc; Integer for Oledb --> + <parameter property="Account.Id" type="integer"/> + <parameter property="Date" type="date" nullValue="0001-01-01 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="params-parent"> <!-- 1043181 support request --> + <parameter property="Id" dbType="Int"/> + <parameter property="Account.Id"/> + <parameter property="Date" type="date" nullValue="0001-01-01 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> + + <statement id="GetOrderWithLineItemsNoLazyLoad" + parameterClass="Integer" + resultMap="order-with-lines-result-no-lazy-load" > + select * from Orders where Order_ID = #value# + </statement> + + <resultMap id="order-with-lines-result-no-lazy-load" class="Order" + extends="lite-order-result-by-name" > + <result property="LineItemsList" type="TList" column="Order_ID" select="GetLineItemsForOrder" /> + </resultMap> + + <statement id="GetOrderWithLineItemCollectionNoLazy" + parameterClass="int" + resultMap="order-with-lines-collection-no-lazy-load" > + select * from Orders where Order_ID = #value# + </statement> + + <resultMap id="order-with-lines-collection-no-lazy-load" class="Order" + extends="lite-order-result-by-name" > + <result property="LineItems" column="Order_ID" + select="GetLineItemsForOrderWithListClass" /> + </resultMap> + +</sqlMap>
\ No newline at end of file |