Расширение FAQ

Модератор: kdv

Ответить
Кузнецов Евгений
Сообщения: 144
Зарегистрирован: 16 фев 2006, 22:36

Расширение FAQ

Сообщение Кузнецов Евгений » 11 авг 2007, 21:59

Доброго времени суток!

To KDV

Как Вы считаете, может все-таки стоит включить в FAQ известную проблему с

Код: Выделить всё

update table1 set a=b, b=a
и отсутствие стабильности курсора, приводящее к неработоспособности

Код: Выделить всё

insert into table1
select * from table1  
и неожиданной работе

Код: Выделить всё

delete from table1
where id in (select first N id from table1)
?
Эти вопросы всплывают время от времени на "вражеских" сайтах вроде rsdn.ru, и даже отправить вопрошающих некуда.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 11 авг 2007, 22:45

добавлю. вопрос в том, как эти пункты назвать наиболее корректно, т.е. чтобы в faq их можно было найти. я понятно выразился?

кстати
delete from table1
where id in (select first N id from table1)
это описано в firebird release notes.

Кузнецов Евгений
Сообщения: 144
Зарегистрирован: 16 фев 2006, 22:36

Сообщение Кузнецов Евгений » 11 авг 2007, 22:55

kdv писал(а):добавлю. вопрос в том, как эти пункты назвать наиболее корректно, т.е. чтобы в faq их можно было найти. я понятно выразился?
Ссылка на первый у Вас в FAQ уже есть: "update set a=b, c=a меняет столбец a".
kdv писал(а): кстати
delete from table1
where id in (select first N id from table1)
это описано в firebird release notes.
Да, прозевал. Но все равно, думаю, изложить стоит.

Кузнецов Евгений
Сообщения: 144
Зарегистрирован: 16 фев 2006, 22:36

Сообщение Кузнецов Евгений » 11 авг 2007, 23:07

kdv писал(а):добавлю. вопрос в том, как эти пункты назвать наиболее корректно, т.е. чтобы в faq их можно было найти. я понятно выразился?
Приблизительные варианты для 2-го и 3-го:
"Запросы вида insert into table1
<выборка, формируемая с использованием table1>
могут приводить к падению процесса сервера (в зависимости от версии)"

"Запрос вида delete from table1
where <условие, использующее table1 >
может удалить все записи из table1"

Attid
Спец
Сообщения: 377
Зарегистрирован: 14 ноя 2006, 09:58

Сообщение Attid » 11 авг 2007, 23:30

[офф]
какие страшные запросы я бы не подумал использовать не один из них =/
у меня плохо с фантазией ?
[/офф]

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 12 авг 2007, 04:43

Евгений, ты слишком прямолинеен. я просил сформулировать суть вопросов, а не втыкать туда текст sql :)

Кузнецов Евгений
Сообщения: 144
Зарегистрирован: 16 фев 2006, 22:36

Сообщение Кузнецов Евгений » 12 авг 2007, 13:00

Доброго времени суток!
kdv писал(а):Евгений, ты слишком прямолинеен. я просил сформулировать суть вопросов, а не втыкать туда текст sql :)
Возможно. Но смотрите:
- "Запрос на вставку в определенных случаях может приводить к зависанию процесса сервера" или "Запрос на удаление может привести к удалению всех записей из таблицы, несмотря на условие" писать нельзя - FAQ не прочитают, но о том, что insert и delete в Interbase\Firebird не работают, растрезвонят.
Можно, конечно, написать в вопросе "В IB\FB\Yaffil отсутствует cursor stability", но тогда придется подробно описывать, что это такое. Хотя, наверное, это наилучший вариант - те, кто FAQ не читает, негатива для IB\FB не создадут, а сослаться на FAQ будет можно.
Attid писал(а):какие страшные запросы я бы не подумал использовать не один из них =/
у меня плохо с фантазией ?
Так развивайте ее :) - http://groups.google.com/group/ru-fireb ... 540139ef6a и далее по ссылкам

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 13 авг 2007, 10:00

Кузнецов Евгений писал(а):"В IB\FB\Yaffil отсутствует cursor stability"
Так тоже написать нельзя, потому что во-первых, не совсем соответствует истине, и во-вторых, создаёт негативное впечатление о сервере, что там ничего нет, т.е. приводит к тому, чего ты и хочешь избежать.

Кузнецов Евгений
Сообщения: 144
Зарегистрирован: 16 фев 2006, 22:36

Сообщение Кузнецов Евгений » 13 авг 2007, 10:23

Доброго времени суток!
WildSery писал(а):Так тоже написать нельзя, потому что во-первых, не совсем соответствует истине, и во-вторых, создаёт негативное впечатление о сервере, что там ничего нет, т.е. приводит к тому, чего ты и хочешь избежать.
Все же одно дело, когда в сервере нет какого-то cursor stability, о котором большинство (в том числе и я) имеют достаточно поверхностное представление, и другое - объявлять о неработоспособности таких базовых вещей, как delete и insert.

Сейчас мы придем к тому, что, как этот пункт не назови, он создаст негативное впечатление о сервере, и поэтому в FAQ его включать нельзя :)

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 13 авг 2007, 10:25

Кузнецов Евгений писал(а):как этот пункт не назови
Как насчёт "особенности работы INSERT/UPDATE/DELETE с подзапросами в условии" ?

Кузнецов Евгений
Сообщения: 144
Зарегистрирован: 16 фев 2006, 22:36

Сообщение Кузнецов Евгений » 13 авг 2007, 20:03

Доброго времени суток!
WildSery писал(а):Как насчёт "особенности работы INSERT/UPDATE/DELETE с подзапросами в условии" ?
Поддерживаю, это гораздо лучше всего того, что предлагалось выше.

Merlin
Динозавр IB/FB
Сообщения: 1502
Зарегистрирован: 27 окт 2004, 11:44

Сообщение Merlin » 13 авг 2007, 20:43

Когда солнце светило ярче, портвейн был не только вкусным, но и полезным, а мои девушки были лет на 30 моложе... нда. Чё-та я расчувствовался. В общем, в озаглавливании публикаций, которые лепились не столько из тщеславия или стремления посеять разумное, доброе, вечное, сколько из необходимости выполнить план, принято было, во избежание как претенциозности, так и лишней отвественности за написанное, активно употреблять слово некоторые. Например, "Особенности работы некоторых операторов ..."

Кузнецов Евгений
Сообщения: 144
Зарегистрирован: 16 фев 2006, 22:36

Сообщение Кузнецов Евгений » 13 авг 2007, 20:48

To Merlin

Или "отдельные недостатки, имеющие место в советском прогрессивном сельском хозяйстве" :)

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 10 сен 2007, 15:58

не прошло и пол-года (и правда не прошло).
обновил www.ibase.ru/ibfaq.htm указанными пунктами (все три в конце).

Предложения по переформулировке ответов принимаются.

Кузнецов Евгений
Сообщения: 144
Зарегистрирован: 16 фев 2006, 22:36

Сообщение Кузнецов Евгений » 10 сен 2007, 17:50

Доброго времени суток!
kdv писал(а):обновил www.ibase.ru/ibfaq.htm указанными пунктами (все три в конце).
Спасибо!
kdv писал(а):Предложения по переформулировке ответов принимаются.
В оглавлении - "собенности работы"
Для http://www.ibase.ru/ibfaq.htm#delall нет соответствия в тексте.
Для "update set a=b, c=a меняет столбец a", возможно, стоит добавить, что это не соответствует стандарту, и будет исправлено в будущих версиях (как явствует из http://groups.google.com/group/ru-fireb ... 540139ef6a - впрочем, стоит уточнить, будет ли это правиться в 3.0 или позднее).

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 10 сен 2007, 17:58

Кузнецов Евгений писал(а):Для http://www.ibase.ru/ibfaq.htm#delall нет соответствия в тексте.
В тексте другой маркер, надо на "http://www.ibase.ru/ibfaq.htm#delfirst" исправить ссылку в заголовке (или наоборот :))

Кузнецов Евгений
Сообщения: 144
Зарегистрирован: 16 фев 2006, 22:36

Сообщение Кузнецов Евгений » 10 сен 2007, 18:10

Да, прозевал - "update set a=b, c=a меняет столбец a" несколько неточно. Думаю, стоит заменить на "update set a=b, b=a меняет только столбец a".

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 10 сен 2007, 18:25

1. исправил на delall
2. исправил
update set a=b, b=a теряет значение a
про стандарт добавил

Кузнецов Евгений
Сообщения: 144
Зарегистрирован: 16 фев 2006, 22:36

Сообщение Кузнецов Евгений » 10 сен 2007, 18:29

To kdv

"собенности" остались только, а в остальном вроде бы все в порядке.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 10 сен 2007, 20:22

ы. дефект копи-пасте. исправил.

Ответить