Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 59 60 61 62 63 [64] 65 66 67 68 .. 75   вперед  Ctrl
 Re: тогда вопрос номер два!  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
МСУ
softwarer
МСУ
Вот Вы же сами (уверен) поняли, о чем я
Софтварушка просто придрался к Локи, ну давайте на чистоту.

Cто раз сказанная глупость верной не становится.


Ошибки замечать немногого стоит: дать нечто лучшее — вот что приличествует достойному человеку (Мишенька Ломоносов)


Вам дать адрес Oracle ?
5 фев 09, 17:00    [6784688]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
Gluk (Kazan)
Нет не так. Просто пока в MS SQL нет инвалидации, в нем приходится делать куда больший упор собственно на тестирование. Соотвественно и "методологии" разные

С этим согласен, всё так и есть.
Объем работ и проверок, которые необходимо проводить - в некоторых случаях бОльший, нежели в оракле.
А вот в некоторых других случаях, как раз - меньший.
5 фев 09, 17:01    [6784692]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД!  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67534
Блог
locky
softwarer
В предыдущей беседе на эту тему, сколь мне помнится, никто так и не смог мне объяснять, как четко и однозначно отделить "условия связи" от "фильтрующих ограничений" и не смог дать алгоритма "что где писать в нетривиальных случаях".

Руководствуясь чуйством прекрасного и FK.

Выходит полная лажа. Что, собственно, типично для таких запросов, в которых приходилось разбираться. Половина там, половина здесь, и в итоге, глядя в одно конкретное место, так ни хрена и не понятно, как же таблица используется.
5 фев 09, 17:01    [6784693]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
locky

А вот в некоторых других случаях, как раз - меньший.


Возможно
С этим спорить не буду
5 фев 09, 17:02    [6784694]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД!  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
softwarer
Выходит полная лажа. Что, собственно, типично для таких запросов, в которых приходилось разбираться. Половина там, половина здесь, и в итоге, глядя в одно конкретное место, так ни хрена и не понятно, как же таблица используется.

В некоторых случаях - да, в некоторых нет.
Сценарий - приводить? Когда FK сущействует сугубо логически/виртуально?
5 фев 09, 17:03    [6784710]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
Gluk (Kazan)
МСУ
Ошибки замечать немногого стоит: дать нечто лучшее — вот что приличествует достойному человеку (Мишенька Ломоносов)


Вам дать адрес Oracle ?


Вам подсказать, как обратиться в компанию Microsoft?
5 фев 09, 17:03    [6784712]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
МСУ
Gluk (Kazan)
МСУ
Ошибки замечать немногого стоит: дать нечто лучшее — вот что приличествует достойному человеку (Мишенька Ломоносов)


Вам дать адрес Oracle ?


Вам подсказать, как обратиться в компанию Microsoft?


И был Свет ... и была Тьма (с)
5 фев 09, 17:06    [6784737]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
Gluk (Kazan)
МСУ
Gluk (Kazan)
МСУ
Ошибки замечать немногого стоит: дать нечто лучшее — вот что приличествует достойному человеку (Мишенька Ломоносов)


Вам дать адрес Oracle ?


Вам подсказать, как обратиться в компанию Microsoft?


И был Свет ... и была Тьма (с)


Плохому началу — плохой конец...
5 фев 09, 17:07    [6784743]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67534
Блог
Sgt.Pepper
Все-таки все мы гордимся :) декларативностью sql

На своём месте. Воспользовавшись аналогией locky: я люблю борщ, люблю мясо, люблю картошку, компот и мороженое. Вместе они составляют хороший обед - если не пытаться их готовить, одновременно сложив в одну кастрюлю
5 фев 09, 17:12    [6784785]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67534
Блог
locky
1. Мы берём оракл и идеально построенный процесс разработки и тестирования.
2. Мы берём сиквел, без процесса разработки и тестирования.

примерно так?

Нет, не так. Хотя я понимаю желание тянуть в эту сторону.

Мы берём оракл с обычным (повседневным невыдающимся) процессом разработки и сиквел с обычным (повседневным невыдающимся) процессом разработки.

Заявленное Вами преимущество LTT ведёт к реальной опасности просачивания ошибки в production. Защититься от этого можно двумя способами, оба из которых Вы назвали. Либо значительным удорожанием тестирования (пусть и не полное регрессионное по каждому чиху, но всё равно) либо таки скоординированным назначением достаточно уникальных имён таблицам (что сразу дезавуирует Ваш аргумент насчёт назначения имён GTT - в чём, собственно, и цель всей этой ветки беседы).

Заодно Ваше утверждение про "легко приведёте аналогичный сценарий" - мягко говоря, дало ожидаемый результат. Ваш сценарий выстроен так, как не работают даже самые неграмотные новички; такое можно сделать только если специально пытаться испортить.
5 фев 09, 17:19    [6784836]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
softwarer
skip

Ок.
Согласен. Только "совершенно безграмотные новички".
Исходим из предположения, что таки и на оракле, и на сиквеле в нашем примере таки да работают не совершенно и не безграмотные?
5 фев 09, 17:24    [6784863]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67534
Блог
locky
В вашем "примере реальной проблемы" существует одно маленькое допущение: вы априори уверены в том, что такой код успешно пройдет тестирование.

Нет. Я построил пример, в котором код успешно пройдёт локальное тестирование и априори уверен, что глобальное - дорого. Слишком дорого, чтобы применять его к каждому мелкому патчу.

locky
Я показал вам пример, который исходит из того же самого предположения: код успешно прошел тестирование.

Нет. Вы попытались сконструировать код, который таки дойдёт до тестирования. И не сказать что так уж в этом преуспели. Пройти тестирование он из-за инвалидов шанса не имеет (из-за них он до тестирования-то собственно и не дойдёт).

locky
И в первом,и во втором случае есть неявное предположение: тесты построены неправильно.

Нет. Я понимаю, Вам удобно игнорировать противоречащее Вашей позиции, но про стоимость полного тестирования я Вам сказал давным-давно. Тесты в обоих случаях построены правильно; просто природа этой ошибки такова, что через "правильный локальный тест" она с хорошими шансами проходит необнаруженной.

Вы же почему-то по-студенчески говорите правильно/неправильно, не пытаясь подумать, что же за этим стоит. Для Вас "правильно" - то, что обнаруживает все ошибки, и никак иначе. Честно говоря, это мне напоминает, как я лет десять назад говорил, что правильно работать только в serializable, а всё прочее мало отличается от dirty read.

locky
Хотя, по идее - предположения должны быть одинаковыми.

Они и есть одинаковые. Уже названы выше.
5 фев 09, 17:27    [6784892]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
softwarer
Нет. Я построил пример, в котором код успешно пройдёт локальное тестирование и априори уверен, что глобальное - дорого. Слишком дорого, чтобы применять его к каждому мелкому патчу.

Вы, конечно, извините, но построенный вами код не пройдет локальное тестирование.
Следовательно, все остальные доводы и предположения - можно игнорировать.
5 фев 09, 17:30    [6784907]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
Yo.!
Guest
locky

Вы, конечно, извините, но построенный вами код не пройдет локальное тестирование.
Следовательно, все остальные доводы и предположения - можно игнорировать.

и что ему может помешать пройти локальное тестирование в мсскл ?
5 фев 09, 17:40    [6784969]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД!  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
Простите, товарищи, за оффтоп. Но в стране(-ах) кризис. Вы уже вторую неделю болтаете на форуме - за что Вам только бабки платят компании, в которых Вы нипасильным трудом трудитесь?
5 фев 09, 17:41    [6784977]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД!  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
МСУ
Простите, товарищи, за оффтоп. Но в стране(-ах) кризис. Вы уже вторую неделю болтаете на форуме - за что Вам только бабки платят компании, в которых Вы нипасильным трудом трудитесь?


МСУ, ты чо ?
5 фев 09, 17:43    [6784983]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД!  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67534
Блог
locky
В некоторых случаях - да, в некоторых нет.
Сценарий - приводить? Когда FK сущействует сугубо логически/виртуально?

Я не очень понял, при чём тут виртуальность FK.

Вопрос в том, что условия не делятся "явно и однозначно" на "соединения" и "фильтр". Поэтому логика их разноса между join и where... неочевидна, назовём так. Соответственно, реальные запросы, использующие как то, так и другое, имхо сложно писать и сложно понимать. Скажем, если мы говорим об inner join, то любое условие, накладываемое на присоединяемую таблицу, мы можем трактовать и как "условие соединения - присоединяем только записи, отвечающие условию" и как "присоединили, а теперь накладываем фильтр", причём результаты будут эквивалентны; вопрос только в том, какая из трактовок нам неформально ближе в каждом случае.

Скажем, допустим, мы хотим присоединить к [ТОВАРНЫМ ПОЗИЦИЯМ] [ДОКУМЕНТЫ 22-го типа]. Вот здесь условие doc_type = 22 - входит в виртуальный FK? Имхо - вполне, так что вроде как пишем во FROM. Хотя и написанию его другим разработчиком в WHERE я не удивлюсь. Хорошо, а теперь если "22-й тип" у нас получается подзапросом, вытаскивающим информацию из третьего места? Тогда вроде уже никакой не FK и надо писать в WHERE....
5 фев 09, 17:43    [6784984]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД!  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
Gluk (Kazan)
МСУ, ты чо ?

А чё сразу я? :)
5 фев 09, 17:44    [6784985]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
Yo.!
locky

Вы, конечно, извините, но построенный вами код не пройдет локальное тестирование.
Следовательно, все остальные доводы и предположения - можно игнорировать.

и что ему может помешать пройти локальное тестирование в мсскл ?

Ну, давайте попробуем.....
Исходное состояние:
create procedure Level2
as begin
 exec Level3
end
go

create procedure Level3
as begin
 select id from #table
end
go

create procedure Level1
as begin
 create table #table(id int)
 exec Level2
end
go
тесты

exec Level1
go
exec Level2
go
go
exec Level3
go
Результат
id
-----------

(0 row(s) affected)

Msg 208, Level 16, State 0, Procedure Level3, Line 3
Invalid object name '#table'.

Msg 208, Level 16, State 0, Procedure Level3, Line 3
Invalid object name '#table'.

Патч
alter procedure Level2
as begin
 create table #table(name int)
 exec Level3
end
go
тесты
exec Level1
go
exec Level2
go
exec Level3
go
Результат:
Msg 207, Level 16, State 1, Procedure Level3, Line 3
Invalid column name 'id'.
Msg 207, Level 16, State 1, Procedure Level3, Line 3
Invalid column name 'id'.
Msg 208, Level 16, State 0, Procedure Level3, Line 3
Invalid object name '#table'.
Как видим, "ошибка прошла незамеченной" (С)
5 фев 09, 17:44    [6784990]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД!  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
МСУ
Простите, товарищи, за оффтоп. Но в стране(-ах) кризис. Вы уже вторую неделю болтаете на форуме - за что Вам только бабки платят компании, в которых Вы нипасильным трудом трудитесь?

Кризис - в стране.
На форуме - кризиса нет.
5 фев 09, 17:44    [6784991]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД!  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
locky
Кризис - в стране.
На форуме - кризиса нет.


Спасибо, теперь всё стало на свои места.

5 фев 09, 17:45    [6784997]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67534
Блог
locky
Вы, конечно, извините, но построенный вами код не пройдет локальное тестирование.

Почему это вдруг?
5 фев 09, 17:46    [6784999]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
softwarer
locky
Вы, конечно, извините, но построенный вами код не пройдет локальное тестирование.

Почему это вдруг?

см. выше.
5 фев 09, 17:47    [6785002]     Ответить | Цитировать Сообщить модератору
 Re: Выбор СУБД!  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
locky
МСУ
Простите, товарищи, за оффтоп. Но в стране(-ах) кризис. Вы уже вторую неделю болтаете на форуме - за что Вам только бабки платят компании, в которых Вы нипасильным трудом трудитесь?

Кризис - в стране.
На форуме - кризиса нет.


Кризис в головах
5 фев 09, 17:52    [6785035]     Ответить | Цитировать Сообщить модератору
 Re: тогда вопрос номер два!  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67534
Блог
locky
тесты
exec Level1
go
exec Level2
go
exec Level3
go

Как видим, "ошибка прошла незамеченной" (С)

Замечательно. Итак, чтобы поймать эту ошибку - Вы продемонстрировали нам полное регрессионное тестирование. Которое собираетесь выполнять постоянно, после каждого патча. И "просто выглядит" оно только до тех пор, пока у Вас три процедуры без единого ветвления.
5 фев 09, 17:52    [6785037]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 59 60 61 62 63 [64] 65 66 67 68 .. 75   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить