Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
Топик располагается на нескольких страницах: ←Ctrl назад 1 2 3 [4] 5 6 вперед Ctrl→ все |
o-o
Guest |
известная баговина, в студии тоже есть. если выбрать сегодняшнюю дату в фильтре на таблицы create_date >= ... по идее, 12/11, но студия *шлет на сервер строкой*, не датой. сервер выдает 0 таблиц за 11/12, что логично, на дворе ноябрь. а сегодня вся база перезалита через drop/create, так что сплошное 12/11 --- а если *завтрашнюю* дату выбрать (13/11), вообще ппц. щас покажу и второе тоже (--> 11/13) К сообщению приложен файл. Размер - 45Kb |
||
12 ноя 15, 12:50 [18405644] Ответить | Цитировать Сообщить модератору |
o-o
Guest |
самое смешное, что в диалоге фильтра дату руками вообще не вбить. студия выдает календарь, где, разумеется, никакого 13-ого месяца нет. так что честно выбрав 13/11, получаем К сообщению приложен файл. Размер - 11Kb |
12 ноя 15, 12:54 [18405673] Ответить | Цитировать Сообщить модератору |
cr@nk Member Откуда: Челябинск Сообщений: 118 |
o-o, И снова ваш совет помог. Теперь остался ещё очень весомый косяк В таблице есть поле Templ_ID . В нём содержится номер шаблона операции из другой таблицы. Та вот... почему то все записи принимают значение последнего выбранного шаблона (все значения в указанной колонке принимают одно и тоже значение) |
12 ноя 15, 12:58 [18405722] Ответить | Цитировать Сообщить модератору |
Winnipuh Member [заблокирован] Откуда: Київ Сообщений: 10428 |
интересно было бы на запросы посмотреть в профайлере, как они дату записывают |
12 ноя 15, 12:58 [18405723] Ответить | Цитировать Сообщить модератору |
cr@nk Member Откуда: Челябинск Сообщений: 118 |
C датой сейчас трабла ушла. Осталась серьёзная беда с заменой всех значений в определённой колонке... |
||
12 ноя 15, 13:11 [18405829] Ответить | Цитировать Сообщить модератору |
o-o
Guest |
строкой и записывают. не то чтоб на меня озарение снизошло, все из профайлера. а у ТС все признаки того же самого. |
||
12 ноя 15, 13:14 [18405847] Ответить | Цитировать Сообщить модератору |
cr@nk Member Откуда: Челябинск Сообщений: 118 |
o-o, Можно посмотреть как-то какие запросы шлёт программа? |
12 ноя 15, 13:15 [18405865] Ответить | Цитировать Сообщить модератору |
o-o
Guest |
пока не совсем понимаю, что вы описываете. на примере можно? |
||
12 ноя 15, 13:16 [18405867] Ответить | Цитировать Сообщить модератору |
o-o
Guest |
профайлером. только у вас экспресс... можно скачать студию 2014, в ней профайлер есть |
||
12 ноя 15, 13:17 [18405879] Ответить | Цитировать Сообщить модератору |
Winnipuh Member [заблокирован] Откуда: Київ Сообщений: 10428 |
имелось в виду как это делается той программой у ТС |
||||
12 ноя 15, 13:18 [18405894] Ответить | Цитировать Сообщить модератору |
cr@nk Member Откуда: Челябинск Сообщений: 118 |
o-o, Качаю студию 2014 тоже бесплатной редакции. Я когда буду ставить, то SQL не обновится случайно до 2014 версии и всё сломается? P.S.: Server Managment у меня 2016 версии |
12 ноя 15, 13:19 [18405901] Ответить | Цитировать Сообщить модератору |
cr@nk Member Откуда: Челябинск Сообщений: 118 |
Нашёл Activity monitor Действительно, запрос выполняется такой: UPDATE [analysis] set [Templ_ID] = @1 но непонятно, почему раньше такого не было (я имею ввиду сбоя) |
12 ноя 15, 13:35 [18406028] Ответить | Цитировать Сообщить модератору |
cr@nk Member Откуда: Челябинск Сообщений: 118 |
Очень печально, но на старом ПК симптомы аналогичные. Всё началось после падения винды |
12 ноя 15, 14:04 [18406267] Ответить | Цитировать Сообщить модератору |
Winnipuh Member [заблокирован] Откуда: Київ Сообщений: 10428 |
не выражайтесь загадками, конкретнее |
||
12 ноя 15, 14:16 [18406359] Ответить | Цитировать Сообщить модератору |
cr@nk Member Откуда: Челябинск Сообщений: 118 |
Почему-то после сбоя ОС (нужны некие подробности глюков ОС ?) в программе по учёту анализовов появился глюк с: 1. С датой (его сейчас помогли устранить) 2. С присвоением всей колонке Templ_ID значения последнего выбранного анализа. Т.е. выбрали пациента, создаём для него анализ по выбранному шаблону и у всех пациентов в списке проставляется ID этого шаблона. Как-то так |
||
12 ноя 15, 14:28 [18406433] Ответить | Цитировать Сообщить модератору |
Winnipuh Member [заблокирован] Откуда: Київ Сообщений: 10428 |
в программе или в базе? или это уже эффект нового сервера и клиента? наверняка ваш сервер отличается от предыдущего установками ваша клиентская машина отличается чем-то от старой Вы профайлер пустите, пусть соберет трейсы во время работы приложения в проблемном месте, сохраните и выложите сюда База большая? если не очень - бекапните и выложите куда-то, так будет проще. |
||||
12 ноя 15, 14:39 [18406508] Ответить | Цитировать Сообщить модератору |
o-o
Guest |
и что мы из этого описания поняли? какой еще шаблон для анализа, для кала с ложечкой, для мочи с трубочкой? вы можете в терминах таблиц изъясняться? |
||||
12 ноя 15, 14:41 [18406519] Ответить | Цитировать Сообщить модератору |
cr@nk Member Откуда: Челябинск Сообщений: 118 |
Хорошо, через пару часиков буду разбираться с профайлером. Я так понял, что это приложение входит в любую платную версию SQL Server. Если я скачаю 2008 R2 и поставлю поверх, то ничего не сломается или надо делать чистую установку? Сама база весит 600мб |
12 ноя 15, 14:47 [18406557] Ответить | Цитировать Сообщить модератору |
cr@nk Member Откуда: Челябинск Сообщений: 118 |
Узрел профайлер. Попозже выложу результат его работы или вопросы по тому как с ним работать :) |
12 ноя 15, 14:53 [18406599] Ответить | Цитировать Сообщить модератору |
o-o
Guest |
еще раз, в 2014-ой *студии* он есть. в бесплатной студии. а вот в 2008 в экспрессе нет, ни в студии, ни отдельно. поди в вашей 2016-ой тоже есть ---------- установка студии ничего не делаете с серверами других версий. а сервер другой версии вам и не нужен. проверьте то, что у вас есть, прежде чем что-то ставить. ---------- и базу нам вашу не надо. из вашего описания вообще непонятно, в таблицу что-то стало попадать или ваше приложение *стало отображать* что-то не то. в любом случае, кому нужна база без приложения? откуда знать, что с ней делает ваше ПО? |
||
12 ноя 15, 14:54 [18406609] Ответить | Цитировать Сообщить модератору |
cr@nk Member Откуда: Челябинск Сообщений: 118 |
Выкладываю лог профайлера. Проблема с колонкой Templ_ID. Мне крайне непонятно зачем вызывается UPDATE по этой колонке без дополнительных условий (тупо применяется ко всей таблице). Программа для работы с БД не менялась с 2005 года (поэтому и программиста с исходниками найти не можем) Такого явного косяка раньше тоже не было (на почти погибшем ПК). Работать с такой ошибкой невозможно. Может быть раньше был какой-то триггер или что-то подобное, который ограничивал оператору UPDATE диапазон применяемых данных (вместо WHERE). Бред, конечно, но я не могу объяснить текущее поведение программы/СУБД К сообщению приложен файл (Analiz.trc - 13Kb) cкачать ![]() |
12 ноя 15, 16:37 [18407334] Ответить | Цитировать Сообщить модератору |
o-o
Guest |
вы же просто приаттачили базу на новый сервер. если триггер был, он и остался, ничего из базы пропасть не могло. --- может теперь что-то перестало компилироваться вообще, а супер-ПО поглощает ошибку и, не обрабатывая ее, идет дальше? --- для начала выставьте базе compatibility_level 80, хотя вроде при аттаче он и так должен остаться 80. потом, если вы знаете, как подкорректировать логику, сами триггер напишите, instead of update |
||
12 ноя 15, 16:52 [18407447] Ответить | Цитировать Сообщить модератору |
o-o
Guest |
его прежний сервер -- 2000, а нынешний -- 2008 R2. конечно же они отличаются. только это надо опросить мигрировавших с 2000-ого, что потом работало не так или вообще не компилировалось. у меня такого опыта просто нет |
||
12 ноя 15, 17:11 [18407591] Ответить | Цитировать Сообщить модератору |
Winnipuh Member [заблокирован] Откуда: Київ Сообщений: 10428 |
Ну, вот, и по поводу дат - туда же, ****, писатели ![]() SET NO_BROWSETABLE OFF go Insert into analysis (P_ID,Vrach_ID,Lab_ID,Zabor,Postanovka, Klinik_ID,Templ_ID) values(58317,2,6,'11.12.2015','11.12.2015',3,0) go SET NO_BROWSETABLE ON go select max(id) from analysis go SET NO_BROWSETABLE ON go select p.ID as PID,p.*, a.id as AID,a.*,th.T_Name from pacienty p, analysis a,Templ_headers th where a.P_ID=p.ID and th.id=a.Templ_ID go SET NO_BROWSETABLE OFF go Insert into Analiz_result (tsid,aResult, Norma, EdIzm, IsSubstr, StrID,Pokazatel, Analiz_ID)select id,'',Norma,EdIzm,IsSubstring,StrID,Pokazatel,96533 from Analiz_template where header_id=9 go SET NO_BROWSETABLE ON go SET NO_BROWSETABLE OFF go Update analysis set Templ_ID=9 go SET NO_BROWSETABLE ON go select p.ID as PID,p.*, a.id as AID,a.*,th.T_Name from pacienty p, analysis a,Templ_headers th where a.P_ID=p.ID and th.id=a.Templ_ID go |
12 ноя 15, 17:33 [18407809] Ответить | Цитировать Сообщить модератору |
cr@nk Member Откуда: Челябинск Сообщений: 118 |
Да база то по идее простая в понимании. Логику триггера (теоретического) я смутно представляю, т.к. нужно знать значения, выбранные в программе Уровень совместимости - 80 был установлен по дефолту Честно говоря я не думаю, что проблема в сервере СУБД, т.к. на старом ПК после сбоя Windows эта проблема и начала проявляться (Win XP + SQL Server 2000) Есть одна мысля по поводу костыля для данной ситуации. Проверю свои догадки и обращусь снова сюда |
12 ноя 15, 17:49 [18407937] Ответить | Цитировать Сообщить модератору |
Топик располагается на нескольких страницах: ←Ctrl назад 1 2 3 [4] 5 6 вперед Ctrl→ все |
Все форумы / Microsoft SQL Server | ![]() |