Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Проблема получения данных Datareader ом
|
|||
|---|---|---|---|
|
#18+
На мс скуле есть такая процедурка: USE master CREATE procedure who AS declare @sSpid varchar(6) declare @sBlk varchar(128), @dt varchar(31), @EventInfo varchar(4000) DECLARE @t TABLE (spid int, blocked int, EventInfo varchar(4000), dbmane varchar(255), status varchar(255), cmd varchar(255), loginame varchar(255), hostname varchar(255), program_name varchar(255), dt varchar(31)) CREATE TABLE #tt(EventType varchar(63), Parameters int, EventInfo varchar(4000)) declare @iFlag int select @iFlag = 0 declare c cursor for select spid, blocked from master..sysprocesses (nolock) where blocked <> 0 or spid in (select blocked from master..sysprocesses (nolock) where blocked <> 0) order by blocked desc SET @dt = CONVERT(varchar(31), getdate(), 13) open c while (1=1) begin fetch next from c into @sSpid, @sBlk if (@@fetch_status = -1) begin break end if (@@fetch_status = -2) continue SET @iFlag = 1 INSERT @t(spid, dt, blocked, EventInfo, status, loginame, hostname, dbmane, program_name, cmd) select spid, @dt, blocked, ' ', status, substring(loginame,1,30) loginame, substring(hostname,1,20) hostname, substring(db_name(dbid),1,30) dbmane, substring(program_name,1,20) program_name, cmd from master..sysprocesses (nolock) where spid = @sSpid INSERT INTO #tt exec ('dbcc inputbuffer('+@sSpid+')') SET @EventInfo = (SELECT EventInfo FROM #tt) DELETE #tt UPDATE @t SET EventInfo = @EventInfo WHERE spid = @sSpid end close c deallocate c SELECT * FROM @t Как Вы все понимаете она возвращает блокировки и их буфер, иногда полезно посмотреть))) Клиент пишется на VB.Net 2003, патч не фреймворке есть. Проблема вот в чем, датаридер прекрасно видит названия полей и их размерность но данные не во всех полях. Для поля EventInfo он видит, что расмерность string, но данные System.DBNull. Как его зада победить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2004, 15:00 |
|
||
|
Проблема получения данных Datareader ом
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2004, 15:02 |
|
||
|
Проблема получения данных Datareader ом
|
|||
|---|---|---|---|
|
#18+
ещё разок: а ошибок не случается тк в общем случае в #tt у вас может быть не оюна запись ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2004, 15:03 |
|
||
|
Проблема получения данных Datareader ом
|
|||
|---|---|---|---|
|
#18+
процедура отрабатывает абсолютно правитльно, и SET NOCOUNT ON ставил и ремарил, все поля читаются нормально, кроме информации буфера (varchar(4000)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2004, 15:10 |
|
||
|
Проблема получения данных Datareader ом
|
|||
|---|---|---|---|
|
#18+
Тип курсора для вашего коннекта нужно поменять с серверного на клиентский. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2004, 15:48 |
|
||
|
Проблема получения данных Datareader ом
|
|||
|---|---|---|---|
|
#18+
Так у датаридера курсор по жизни клиентский ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2004, 17:23 |
|
||
|
|

start [/forum/topic.php?fid=20&msg=32835518&tid=1437608]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
87ms |
get topic data: |
13ms |
get forum data: |
4ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
| others: | 265ms |
| total: | 472ms |

| 0 / 0 |
