TSharma0407 Ответов: 0

Необходимо создать временную таблицу в 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

Могу ли я добавить некоторые условия перед этими вставками?

0 Ответов