Страница 1 из 1

Расширение 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, и даже отправить вопрошающих некуда.

Добавлено: 11 авг 2007, 22:45
kdv
добавлю. вопрос в том, как эти пункты назвать наиболее корректно, т.е. чтобы в faq их можно было найти. я понятно выразился?

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

Добавлено: 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.
Да, прозевал. Но все равно, думаю, изложить стоит.

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

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

Добавлено: 11 авг 2007, 23:30
Attid
[офф]
какие страшные запросы я бы не подумал использовать не один из них =/
у меня плохо с фантазией ?
[/офф]

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

Добавлено: 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 и далее по ссылкам

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

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

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

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

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

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

Добавлено: 13 авг 2007, 20:48
Кузнецов Евгений
To Merlin

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

Добавлено: 10 сен 2007, 15:58
kdv
не прошло и пол-года (и правда не прошло).
обновил www.ibase.ru/ibfaq.htm указанными пунктами (все три в конце).

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

Добавлено: 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 или позднее).

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

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

Добавлено: 10 сен 2007, 18:25
kdv
1. исправил на delall
2. исправил
update set a=b, b=a теряет значение a
про стандарт добавил

Добавлено: 10 сен 2007, 18:29
Кузнецов Евгений
To kdv

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

Добавлено: 10 сен 2007, 20:22
kdv
ы. дефект копи-пасте. исправил.