Переключение на Главную Страницу Страницы: [1]  ОтправитьПечать
Очень популярная тема (более 25 ответов) Тормоза при работе с вирт. таблицами t-sql (число прочтений - 5497 )
Firedragon
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 13
Зарегистрирован: 30. Декабря 2010
Тормоза при работе с вирт. таблицами t-sql
21. Марта 2011 :: 02:33
Печать  
Проблема следущая. Существует запрос типа:
Код
Выбрать все
SELECT
    *
    INTO #VT
FROM
    ....
 


Этот запрос выполняется быстро. Но вот выборка из этой виртуальной таблицы #VT с одновременной типизацией значений полей
Код
Выбрать все
SELECT
    VirtTab.ИмяПоля [ИмяПоля $Справочник.ИмяСправочника],
    ...
FROM
    #VT VirtTab
 


а особенно если типизируемых полей несколько, то выполняется все это ОЧЕНЬ долго. Я слышал где-то что это из-за курсоров, через которые ODBCRecordSet или драйвер ODBC (непомню) работает с вирт. таблицами. Подскажите, кто знает как с этим бороться или отошлите на ветку где этот вопрос уже рассматривался, если таковая тема уже существует. Сам я поиском форума и глазами не нашел. Печаль
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #1 - 21. Марта 2011 :: 04:05
Печать  
А если сделать выборку без типизации полей - как быстро работает?
  
Наверх
 
IP записан
 
Firedragon
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 13
Зарегистрирован: 30. Декабря 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #2 - 21. Марта 2011 :: 04:47
Печать  
Примерно так же как и предыдущий, т.е. быстро. В этом то как раз и проблема, что именно с типизацией и именно из вирт. таблицы выборка осуществляется минуты три или больше. К примеру если мы напрямую сделаем запрос (без ВТ), т.е.:
Код
Выбрать все
SELECT
    А.ИмсяПоля [ИмяПоля $Справочник.ИмяСправочника],
    ...
FROM
    ... AS A
 


то выполняется это дело секунд за 5. Посему грешу на выборку с типизацией именно из вирт. таблицы.
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #3 - 21. Марта 2011 :: 05:06
Печать  
Вообще, странно - ибо типизация полей работает уже на стороне 1С, если я правильно помню.


А какой объем выборки?
И сколько времени выполняется запрос без типизации из ВТ/с типизацией из ВТ/с типизацией из таблиц базы?
  
Наверх
 
IP записан
 
Firedragon
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 13
Зарегистрирован: 30. Декабря 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #4 - 21. Марта 2011 :: 05:16
Печать  
Секунд 5-10 (примерно) все, кроме с типизацией выборки из ВТ. В случае с типизацией из ВТ время увеличивается до 3-5 минут. Все это время процесс скуля загружает процессор на 100%, пыхтит как сумасшедший. Я было подумал из-за памяти (ограничил скулю до 500Мб), но как показывает прямой запрос (не из ВТ) это не так, т.к. в этом случае запрос, как я уже говорил, с типизацией выполняется секунд 5-10.
  
Наверх
 
IP записан
 
Salimbek
God Member
*****
Отсутствует



Сообщений: 862
Зарегистрирован: 06. Июня 2006
Пол: Мужской
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #5 - 21. Марта 2011 :: 05:56
Печать  
1. Как уже тут спрашивали - какой объем выборки? (Вероятнее всего - очень большой)
2. Технология, собственно, такая - при типизации должны получится не "строки и ИД-шники", а "объекты 1С". Для этого самой 1С вызываются 1С-ные хранимые процедуры, при помощи которых и получаются объекты. В результате на каждый из типизируемых объектов (собственно [количество объектов] = [кол-во строк выборки] * [кол-во типизируемых полей в выборке]-[кол-во объектов, попавших в кэш на предыдущих запросах]) формируется запрос к БД, который получает все поля данного объекта.
Собственно отсюда и рекомендации:
1. Заранее подумать - какие поля потребуются в дальнейшей работе и добавить JOIN-ы к соответствующим таблицам с получением значений этих полей.
2. Так как не все поля нужно получать сразу, то заниматься типизацией в нужные моменты времени, т.е. если в каком-либо условии если возникла необходимость обратится к какому-то объекту, то получить его через MetaDataWork :: ЗначениеИзСтрокиБД
  
Наверх
ICQ  
IP записан
 
Firedragon
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 13
Зарегистрирован: 30. Декабря 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #6 - 21. Марта 2011 :: 06:13
Печать  
Говорю же: при выборке напрямую запрос с типизацией работает быстро. А вот если мы результат нашего прямого запроса поместим в вирт. таблицу (как в буфер) и уже из нее еще одним запросом с типизацией попробуем вытащить данные, вот тогда скуль начинает дико выедать процессорное время и загружать систему непонятно почему. Поймите, что получаемые данные одинаковы, а вот затрачиваемое время ОЧЕНЬ разное. Объясните тогда в чем разница между выборкой из таблиц базы и выборкой из ВТ? Что такого начинает делать скуль что так вешает систему? На мой взгляд разницы не должно быть никакой, ибо и то и то таблицы.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #7 - 21. Марта 2011 :: 08:08
Печать  
(6) Приведи тестовый пример понятный для всех.

Также не помню точно но вроде select * into копирует только таблицу
без индексов может в этом причина.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #8 - 21. Марта 2011 :: 08:16
Печать  
(0) запрос без типизации работает быстро ?
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #9 - 21. Марта 2011 :: 11:17
Печать  
Проверил 7.
при создании таблицы с помощью
select into индексы не создаются ( даже primary key )
Вот скорее всего именно из-за этого работа с этой таблицей очень медленно происходит.
Для более точного ответа нужен понятный тестовый пример из (0)
  
Наверх
 
IP записан
 
Firedragon
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 13
Зарегистрирован: 30. Декабря 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #10 - 21. Марта 2011 :: 23:50
Печать  
Я не знаю как привести пример. Немогу же я всю базу здесь выложить? Подмигивание А чтобы реально загрузить скуль нуно много данных. Возьмите любую базу 1с (тестовую или рабочую) и в первом запросе (см. 1 пост) вместо ... подставьте, например, виртуальный регистр какой нибудь (у меня это РегистрОстатки) с какими нибудь измерениями и ресурсами, желательно по 3 каждого, а во втором запросе (где выборка из #VT) все измерения выбирайте с типизацией, ну и ресурсы просто для приличия выбирайте Улыбка
На счет индексов: объясните по подробней что это и как создать мне их для ВТ? Просто никогда до селе не сталкивался с ними, небыло необходимости) Я нашел пример как создать индекс, но незнаю какой тип индекса нужен ODBCRecordSet для работы, как скуль поймет что таблица приндексирована? Как мне использовать имя созданного индекса моей ВТ?

И еще... я немного соврал ранее, без типизации полей работает также медленно. И еще я немного не договорил Круглые глаза у меня к вт джойнится журнал 1с)) при чем джойнится корявенько, потому как без него се быстро выбирается из ВТ))) Простите меня дуру грешную))) Тему можно закрыть и удалить, желательно побыстрее, чтоб никто из знакомых не увидел моего позора Смех
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #11 - 22. Марта 2011 :: 05:16
Печать  
Дело в том, что у меня регулярно используются как выборки сразу от таблиц БД, так и выборки через промежуточные ВТ.
И никаких тормозов с работой ВТ я не наблюдал.

Хотя, конечно, можно попробовать еще такое - для чистоты эксперимента:
Код
Выбрать все
SELECT
    VirtTab.ИмяПоля [ИмяПоля $Справочник.ИмяСправочника],
    ...
FROM
    (
	  SELECT
		*
	  FROM
		#VT VirtTab
    ) VirtTab
  

  
Наверх
 
IP записан
 
Firedragon
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 13
Зарегистрирован: 30. Декабря 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #12 - 23. Марта 2011 :: 00:06
Печать  
Я нашел в чем была трабла. Все тормоза были из-за ф-ции DATALENGTH которая использовалась у меня в связывании при обрезании одного из строковых полей по размеру другого строкового поля, по которым как раз таки ведется связывание. Я по простоте душевной думал, что скуль оптимизирует ее вызов. Оказалось что нет, скуль постоянно вызывал ее, что вызывало жутчайшие тормоза и время выполнения увеличивалось в разы.

p.s. обрезание делал обоснованно, так как IDDOC в регистре и IDDOC в журнале это не одно и то же. К IDDOC регистра добавляется еще и тип документа в 36-тиричной системе счисления. Хотя можно было конечно делать обратную операцию, т.е. не обрезать IDDOC регистра, а к IDDOC журнала прибавлять код базы. Но это так... размышления в слух... а вось кто столкнется с подобной проблемой. Улыбка
« Последняя редакция: 23. Марта 2011 :: 03:16 - Firedragon »  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #13 - 23. Марта 2011 :: 04:59
Печать  
Firedragon писал(а) 23. Марта 2011 :: 00:06:
Я нашел в чем была трабла. Все тормоза были из-за ф-ции DATALENGTH которая использовалась у меня в связывании при обрезании одного из строковых полей по размеру другого строкового поля, по которым как раз таки ведется связывание. Я по простоте душевной думал, что скуль оптимизирует ее вызов. Оказалось что нет, скуль постоянно вызывал ее, что вызывало жутчайшие тормоза и время выполнения увеличивалось в разы.

p.s. обрезание делал обоснованно, так как IDDOC в регистре и IDDOC в журнале это не одно и то же. К IDDOC регистра добавляется еще и тип документа в 36-тиричной системе счисления. Хотя можно было конечно делать обратную операцию, т.е. не обрезать IDDOC регистра, а к IDDOC журнала прибавлять код базы. Но это так... размышления в слух... а вось кто столкнется с подобной проблемой. Улыбка


1) блин, у меня слов нет... как из твоего исходного сообщения мы могли догадаться, что выборка из ВТ - это не просто выборка, а полноценный суровый запрос со связываниями и т.п.

2) Я так понимаю, под "IDDOC в регистре" ты подразумеваешь не поле IDDOC (регистратор движения - он всегда char(9)), а какое-то измерение/реквизит типа Документ (или даже Неопределено). Но даже в этом случае у тебя или Char(13), или Char(23) - и ты точно знаешь тип (из метаданных). Соответственно, Right(9) в первом случае и нечто похожее во втором решает твою головную боль.

Ну и более правильный способ - это сделать общий реквизит документа идДок13 (с отбором по нему - чтоб он попал в таблицу журнала и был проиндексирован). И дальше его заполнять (можно, конечно, и средствами 1С - но легко пишется триггер, который будет делать это автоматом. Только надо не забывать обновлять тригер после изменений, затрагивающих журнал - 1Ска в этих случаях его грохает).
  
Наверх
 
IP записан
 
Firedragon
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 13
Зарегистрирован: 30. Декабря 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #14 - 23. Марта 2011 :: 07:37
Печать  
Ну вобще-то я писал еще в 10-м посте (прочтите внимательно последний абзац), что джойню журнал, в 12-м просто решил более подробно объяснить ситуацию, на случай если кто с таким же столкнется и начнет грешить на ВТ. Почему я так уверенно грешил на ВТ? Потому как немного ранее я использовал DATALENGTH и ни чего не лагало, из-за чего у меня и в мыслях не возникло грешить на него и на оптимизатор запросов. Как оказалось зря. Теперь буду знать. И вообще все в том же 10-м посте я писал что тему можно закрыть.

P.S. Безошибочных людей небывает...
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #15 - 23. Марта 2011 :: 09:20
Печать  
Firedragon писал(а) 23. Марта 2011 :: 07:37:
Ну вобще-то я писал еще в 10-м посте (прочтите внимательно последний абзац), что джойню журнал, в 12-м просто решил более подробно объяснить ситуацию, на случай если кто с таким же столкнется и начнет грешить на ВТ. Почему я так уверенно грешил на ВТ? Потому как немного ранее я использовал DATALENGTH и ни чего не лагало, из-за чего у меня и в мыслях не возникло грешить на него и на оптимизатор запросов. Как оказалось зря. Теперь буду знать. И вообще все в том же 10-м посте я писал что тему можно закрыть.

P.S. Безошибочных людей небывает...

Так причем тут оптимизатор запросов.
Если у Вас в Where стоит функция  пример Funct(Field)
то индекс поля Field не может быть применен для выполнения запроса.
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #16 - 23. Марта 2011 :: 09:32
Печать  
Firedragon писал(а) 23. Марта 2011 :: 00:06:
Я нашел в чем была трабла. Все тормоза были из-за ф-ции DATALENGTH которая использовалась у меня в связывании при обрезании одного из строковых полей по размеру другого строкового поля, по которым как раз таки ведется связывание. Я по простоте душевной думал, что скуль оптимизирует ее вызов. Оказалось что нет, скуль постоянно вызывал ее, что вызывало жутчайшие тормоза и время выполнения увеличивалось в разы.

p.s. обрезание делал обоснованно, так как IDDOC в регистре и IDDOC в журнале это не одно и то же. К IDDOC регистра добавляется еще и тип документа в 36-тиричной системе счисления. Хотя можно было конечно делать обратную операцию, т.е. не обрезать IDDOC регистра, а к IDDOC журнала прибавлять код базы. Но это так... размышления в слух... а вось кто столкнется с подобной проблемой. Улыбка

таблица RA для регистра и включена галка быстрая обработка движений имеет поля
IDDOC  char(9)
IDDOCDEF int
DATE_TIME_IDDOC char(23)
Если не получается запрос с виртуальными функциями то можешь переписать свой запрос без них
и в качестве поля соединения использовать IDDOC ( из таблицы RA )



  
Наверх
 
IP записан
 
Firedragon
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 13
Зарегистрирован: 30. Декабря 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #17 - 24. Марта 2011 :: 01:01
Печать  
Объясняю все подробно, чтоб больше ни у кого ни возникло никаких вопросов. У меня есть выборка из регистра, в котором есть поле типа Документ (общий тип документа). РЕЗУЛЬТАТ ВЫБОРКИ ИЗ РЕГИСТРА Я ЛОЖУ В ВИРТУАЛЬНУЮ ТАБЛИЦУ, ИМЕННО ЕЕ Я ИМЕЮ В ВИДУ ПОД СЛОВАМИ "ВЫБОРКА ИЗ РЕГИСТРА" ВПОСЛЕДСТВИИ (с рестром больше не работаю). Из-за того, что у нашего чудесного 13-тисимвольного поля  тип неопределенный документ (Документ), длина данного поля не 9 символов (как должно быть), а 13, т.к. 1С прибавляет слева еще 4 символа, которые в свою очередь являются 36-тиричным значением IDDOCDEF (это был не код базы как я по ошибке предположил ранее!). А т.к. мне необходимо приджойнить журнал по IDDOC, то просто так этого сделать не получится. Отсюда есть 2 выхода:
1) прибавлять к IDDOC журнала 36-тиричное значение IDDOCDEF все того же журнала и пихать этот симбиоз в условие связывания ON моего джойна результата выборки из регистра с журналом по чудесному 13-символьному полю типа Документ (это сразу отмел, кто знает что такое перевод из 10-тичного числа в 36-тиричное, тем более реализованный на скуле, тот поймет почему);
2) отнимать от нашего 13-символьного поля регистра эти самые четыре символа и сделать с ним все тоже самое, что и с симбиозом в 1)-м пункте. На этом я и остановился.
Я знаю что поле IDDOC журнала длиной 9 символов, но для универсальности решил извлекать его длину через DATALENGTH и пихать результат в RIGHT. Получилось примерно такое условие связывания
Код
Выбрать все
...
ON RIGHT(#VT.ЧудесноеПолеДокумент, DATALENGTH(_1SJourn.IDDOC)) = _1SJourn.IDDOC
... 


Так вот при такой постановке условия все работает ужасно медленно. А вот если вообще убрать DATALENGTH(_1SJourn.IDDOC) и поставить 9 или же

Код
Выбрать все
DECLARE @LENIDDOC int;
SET @LENIDDOC = (SELECT TOP 1 DATALENGTH(IDDOC) FROM _1SJourn);

SELECT
...
ON RIGHT(#VT.ЧудесноеПолеДокумент, @LENIDDOC) = _1SJourn.IDDOC
... 


то все работает просто замечательно (секунд 10 вместо 5 минут). При чем ну тут непроиндексированность поля ЧудесноеПолеДокумент? Оно в обоих случаях участвует в запросе. Конечно можно предположить тогда, что поле IDDOC журнала 1C непроиндексировано, ведь именно его вместе с DATALENGTH мы исключаем во 2-м примере из основного запроса, но это полный бред. Здесь очевидно что все трмоза из-за DATALENGTH в условии связывания и ни о какой непроиндексации каких либо полей речи идти не может. Надеюсь все прояснилось?
  
Наверх
 
IP записан
 
Salimbek
God Member
*****
Отсутствует



Сообщений: 862
Зарегистрирован: 06. Июня 2006
Пол: Мужской
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #18 - 24. Марта 2011 :: 06:13
Печать  
Единственное, что бы я отметил - можно еще на этапе выборки во временную таблицу сразу выбирать
Код
Выбрать все
SELECT ... , Right(IDDOC, 9) as Doc FROM 


и далее
Код
Выбрать все
ON #VT.Doc = _1SJourn.IDDOC 

  
Наверх
ICQ  
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #19 - 24. Марта 2011 :: 06:25
Печать  
+ к (18) и еще надо чтобы по полю
#VT.Doc был индекс  ( о чем уже неоднократно упоминалось )

НУ и саму такую таблицу #VT надо понимать что сразу же после создания такая таблица может устареть если кто то перепроведет документ затрагивающий этот регистр.

PS и я считаю что в посте 18 слово можно надо заменить на слово Нужно

  
Наверх
 
IP записан
 
Firedragon
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 13
Зарегистрирован: 30. Декабря 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #20 - 28. Марта 2011 :: 01:57
Печать  
К (18) - так сделать нельзя, ибо на выходе происходит типизация [Док $Документ]. Она применима именно к 13-ти символьному полю (на сколько я знаю).
Посему только на этапе связывания можно обрезать.

К (19). Про индексацию - может быть, про устаревание #VT - не устареет, ибо все будет происходить в монопольном режиме.
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #21 - 28. Марта 2011 :: 03:56
Печать  
А что мешает в ВТ писать И идДок9 И идДок13?

К тому же - если _1SJourn все-равно джойнится, то можно типизацию $Документ сделать через 2 поля:
_1SJourn.IDDoc [Док $Документ],
_1SJourn.IDDocDef Док_вид
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #22 - 28. Марта 2011 :: 05:47
Печать  
Firedragon писал(а) 28. Марта 2011 :: 01:57:
К (18) - так сделать нельзя, ибо на выходе происходит типизация [Док $Документ]. Она применима именно к 13-ти символьному полю (на сколько я знаю).
Посему только на этапе связывания можно обрезать.

К (19). Про индексацию - может быть, про устаревание #VT - не устареет, ибо все будет происходить в монопольном режиме.

Вы разберитесь как идет типизация в таблице _1sjourn на отдельном тестовом примере ( хотя бы к одному конкретному документу).
причем в этой таблице нет поля char(13) а типизация есть.
  
Наверх
 
IP записан
 
Firedragon
YaBB Newbies
*
Отсутствует


1C++ rocks!

Сообщений: 13
Зарегистрирован: 30. Декабря 2010
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #23 - 28. Марта 2011 :: 07:19
Печать  
_1SJourn.IDDoc [Док $Документ] такое приведение невозможно, потому как поле длиной всего 9 символов. При попытке выполнения подобного запроса вылазит ошибка "Для типизации поля "док", не найдено дополнительное типизирующее поле."
  
Наверх
 
IP записан
 
Z1
God Member
*****
Отсутствует


I Love YaBB 2!

Сообщений: 2906
Местоположение: Москва
Зарегистрирован: 26. Мая 2006
Пол: Мужской
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #24 - 28. Марта 2011 :: 07:51
Печать  
_1SJourn.IDDoc as [Док $Документ]
,_1SJourn.IDDocDef  as  [Док_Вид $Число]
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Тормоза при работе с вирт. таблицами t-sql
Ответ #25 - 28. Марта 2011 :: 08:02
Печать  
Док_вид
  

1&&2&&3
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 
ОтправитьПечать