Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Помогите с запросом!
|
|||
|---|---|---|---|
|
#18+
Пытаюсь передать в хранимую процедуру название Linked Server и создать курсор: DECLARE @NameMpgh varchar (10) SET @NameMpgh = 'TEST' DECLARE @SQLString NVARCHAR(500) --SET @SQLString = execute sp_executesql N'DECLARE DbfCurs CURSOR GLOBAL SCROLL FOR select *from openquery (@Mpgh,''select WHAT, KKMNO, OPNO, DATE, TIME, SUM, CHECKNO from EJKKM32'') FOR READ ONLY', N'@Mpgh VARCHAR (10)', @Mpgh = @NameMpgh Происходит ошибка: Incorrect syntax near '@Mpgh' По советуйте как правильно составить такой запрос! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2002, 08:25 |
|
||
|
Помогите с запросом!
|
|||
|---|---|---|---|
|
#18+
BOL OPENQUERY does not accept variables for its arguments - OPENQUERY не принимает переменные в качестве аргументов Кроме того вы неправильно открываете курсор с помощью динамического запроса DECLARE @NameMpgh varchar (10) SET @NameMpgh = 'TEST' DECLARE @SQLString NVARCHAR(500) DECLARE @DbfCurs cursor SET @SQLString = N'SET @cursor1 = CURSOR GLOBAL SCROLL FOR select * from openquery ('+ @NameMpgh +'''select WHAT, KKMNO, OPNO, DATE, TIME, SUM, CHECKNO from EJKKM32'') FOR READ ONLY' execute sp_executesql @SQLString, N'@cursor1 cursor output ', @cursor1=@DbfCurs output FETCH NEXT FROM @DbfCurs WHILE @@FETCH_STATUS = 0 BEGIN FETCH NEXT FROM @DbfCurs END ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2002, 08:41 |
|
||
|
Помогите с запросом!
|
|||
|---|---|---|---|
|
#18+
маленькое дополнение DECLARE @NameMpgh varchar (10) SET @NameMpgh = 'TEST' DECLARE @SQLString NVARCHAR(500) DECLARE @DbfCurs cursor SET @SQLString = N'SET @cursor1 = CURSOR GLOBAL SCROLL FOR select * from openquery ('+ @NameMpgh +'''select WHAT, KKMNO, OPNO, DATE, TIME, SUM, CHECKNO from EJKKM32'') FOR READ ONLY OPEN @cursor1 ' execute sp_executesql @SQLString, N'@cursor1 cursor output ', @cursor1=@DbfCurs output FETCH NEXT FROM @DbfCurs WHILE @@FETCH_STATUS = 0 BEGIN FETCH NEXT FROM @DbfCurs END ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2002, 08:54 |
|
||
|
Помогите с запросом!
|
|||
|---|---|---|---|
|
#18+
Уважаемый Glory большое спасибо за ответ, но я бы был вам более признателен если бы вы указали на раздел BOL по этой теме! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2002, 09:28 |
|
||
|
Помогите с запросом!
|
|||
|---|---|---|---|
|
#18+
1. BOL - Transact-SQL Reference - OPENQUERY 2. А про возврат переменной типа cursor как ни странно BOL - Transact-SQL Reference - CREATE PROCEDURE См. про VARIYNG и пример E. Use an OUTPUT cursor parameter 3. Насчет получение переменной из динамического запроса в sp_executesql явного примера в BOL я не видел. Идея была взята мной из подсказки уважаемого Деда Маздая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.01.2002, 09:46 |
|
||
|
|

start [/forum/topic.php?fid=46&fpage=3510&tid=1824122]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
4ms |
track hit: |
52ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 259ms |
| total: | 415ms |

| 0 / 0 |
