|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
Есть сложный запрос с использованием курсоров, объявление переменных и использованием сторонних хранимок, но возвращающий в результате данные в виде таблицы. Как результаты подобного запроса занести в DataTable. Создать из этого запроса хранимку возможности нет. Обычные средства типа SQLCommand или SQLDataadapter.Fill не работают, так как ругаются на синтаксис (с ним все в порядке). ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2016, 15:00 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
lex452так как ругаются на синтаксис (с ним все в порядке). Значит не все в прядке. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2016, 19:16 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
lex452Создать из этого запроса хранимку возможности нет. Не верю ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2016, 19:16 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
Cat2, Возможности нет у меня. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2016, 19:49 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
Cat2Не верюдумаю, что не технически не может, а организационно ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2016, 19:49 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
Shocker.Pro, Именно ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2016, 19:52 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
Например, первая строка моего запроса, declare @ID int А при попытке его выполнить через sqlcommand выдает ошибку Не найдена переменная @ID, объявите ее. Хотя я ее как раз и объявляю. Как я понимаю подобные запросы не поддерживаются. Задача моя состоит узнать свободное место и общий объем дисков на удаленном сервере, для этого я использую Ole Automation Procedures в своем запросе. Если можете предложить другие варианты буду только рад. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2016, 19:58 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
lex452Cat2, Возможности нет у меня. У Вас всегда есть возможность объявить временную хранимую процедуру lex452Если можете предложить другие варианты буду только рад. Примерно так, через WMI Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35.
... |
|||
:
Нравится:
Не нравится:
|
|||
05.03.2016, 20:28 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
Cat2, Спасибо, я попробую. Но сработает ли это если нет доступа к машине по сети, а есть только доступ к SQL Server? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2016, 13:06 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
lex452Но сработает ли это если нет доступа к машине по сети, а есть только доступ к SQL Server? нет, естественно ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2016, 13:22 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
lex452Как я понимаю подобные запросы не поддерживаются. неправда. Код: c# 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2016, 13:37 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
Изопропил, а например эта не работает Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
и выдает ошибку что я писал выше ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2016, 15:54 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
lex452, 1)ошибку не выдаёт. 2)данный запрос выдаёт не одну таблицу, а две. DataSet заполняйте. Или уберите SELECT @@Servername 3) на сервере должно быть разрешено выполнение 'Ole Automation Procedures', я б на месте админа не разрешил 4) drop table #drives добавить полезно в конце PS сдаётся мне, что этот код бездумно скопирован невесть откуда какая версия SQL сервера? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2016, 16:36 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
Изопропил, 1)ошибку не выдаёт. 2)данный запрос выдаёт не одну таблицу, а две. DataSet заполняйте. Или уберите SELECT @@Servername 3) на сервере должно быть разрешено выполнение 'Ole Automation Procedures', я б на месте админа не разрешил 4) drop table #drives добавить полезно в конце 1) Ошибку у меня выдает. Наверное где-то делаю что то не так 2)Каюсь использовал запрос не именно этот, таблицу создавал без #, @@ServerName не использовал, то есть возвращает мой запрос 1 таблицу 3) Разрешение есть. Почему вы бы не разрешили? 4) DROP не нужен (см. пункт 2) Как я понимаю если работает Adapter.Fill, то должно работать и sqlCommand.ExecuteReader? SQL Server 2014 enterprise ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2016, 19:23 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
lex452, 1) естественно 2) смысл постить сюда не то что не работает, а то что подвернулось? 3) опасная затея в рамках процесса SQL сервера левые COM объекты создавать(а как администратор может гарантировать что они не левые). если до разрушения данных не дойдёт, то утечки памяти заработать очень легко 4)- 5) ExecureReader собственно внутри ададаптера и используется может такой код устроит ? Код: sql 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2016, 20:12 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
Изопропил, Я примерно такое и использую. Но мне нужно знать сколько всего размер диска, ведь на одном и том же может быть несколько баз и других файлов. А код я этот выложим, потому что к оригиналу доступа нет, он на работе. А OLE я планирую включать перед выполнением запроса и выключать после. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2016, 22:09 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
lex452Но мне нужно знать сколько всего размер диска, ведь на одном и том же может быть несколько баз и других файлов. а что по твоему этот код возвращает? посмотри что можно полезного получить из sys.master_files да и база может быть на нескольких дисках ... |
|||
:
Нравится:
Не нравится:
|
|||
06.03.2016, 22:54 |
|
Загрузка данных из сложного запроса в DataTable
|
|||
---|---|---|---|
#18+
Изопропил, Спасибо, посмотрю. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.03.2016, 12:06 |
|
|
start [/forum/topic.php?fid=20&msg=39186516&tid=1400748]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
40ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
others: | 16ms |
total: | 150ms |
0 / 0 |