Необходимо создать временную таблицу в SQL server с помощью запроса ibatis
Мой проект имеет некоторые требования для создания временной таблицы с помощью IBATIS. Мне нужно выполнить какую-то операцию над временной таблицей, например: -
1. Создать таблицу
2. Вставить некоторые данные
3. Выполните некоторую операцию с этими данными и обновите их.
4. получите эти данные из временной таблицы.
Я могу выполнять все операции при написании всех запросов в одном операторе, мой файл sql mapper выглядит следующим образом, см. ниже: -
<sqlMap namespace="xxx" xmlns="http://ibatis.apache.org/mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <select id="GetTempTableData" resultClass="xxx" parameterClass="System.String"> Create table ##TestTable(MatterID varchar(20), ShortDesc varchar(100)) Insert into ##TestTable values('1001-101','ABC') Insert into ##TestTable values('1001-102','XYZ') Select * from ##TestTable </select> </sqlMap>
Но у меня есть требование разделить все запросы на отдельные разделы, см. ниже: -
<?xml version="1.0" encoding="utf-8" ?> <sqlMap namespace="xxx" xmlns="http://ibatis.apache.org/mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <select id="GetTempTableData" resultClass="xxx" parameterClass="System.String"> Create table ##TestTable(MatterID varchar(20), ShortDesc varchar(100)) </select> <insert id="InsertIntoTempTable" resultClass="xxx" parameterClass="System.String"> Insert into ##TestTable values('1001-101','ABC') Insert into ##TestTable values('1001-102','XYZ') </insert> <select id="SelectFromTempTable" resultClass="xxx" parameterClass="System.String"> Select * from ##TestTable </select> </sqlMap>
Но во 2-м подходе я получаю исключение "недопустимое имя объекта #TestTable".
Может ли кто-нибудь посоветовать мне, что мне делать в этом случае?
Быстрое решение будет высоко оценено.
Заранее спасибо.
Что я уже пробовал:
I am able to perform all the operations while writing all queries in single statement, my sql mapper file look like this see below: - <pre lang="xml"><sqlMap namespace="xxx" xmlns="http://ibatis.apache.org/mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <select id="GetTempTableData" resultClass="xxx" parameterClass="System.String"> Create table ##TestTable(MatterID varchar(20), ShortDesc varchar(100)) Insert into ##TestTable values('1001-101','ABC') Insert into ##TestTable values('1001-102','XYZ') Select * from ##TestTable </select> </sqlMap>
Maciej Los
Я бы предложил задать такой вопрос на форуме IBATIS. Кстати: Ibatis mapper-это "отставное программное обеспечение apache". Видеть: iBATIS дома[^] Автор рекомендует изменить его на mybatis ;)
Удачи вам!
Member 14790054
Могу ли я добавить некоторые условия перед этими вставками?