Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
Возник вопрос, в каких базах данных кроме DB2 возможен DDL внутри транзакции? Для Oracle - понятно - всякий DDL вызовет коммит, который приведет к завершению транзакции. Sybase ASE - просто не позволяет DDL внутри транзакции. А как в остальных базах, ASA,MSSQL,POSTGRES и пр? для примера на DB2: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. и так при создании любого объекта - хранимых процедур, индексов, триггеров, врем. таблиц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 11:58 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
Для MS SQL: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. и результат: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 12:04 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
В ASA любая DDL обозначается, как AUTO COMMIT, поэтому на момент ее выполнения будет завершена текущая транзакция оператором COMMIT и после ее выполнения выполнен опять же COMMIT. В данном приведенном примере после ROLLBACK будет возвращен пустой набор данных с таблицы ddltest. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 12:12 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
в оракле если уж так нужно DDL выполняют в автономных транзакциях, т.е. выполнить не прерывая транзакции проблемы нет, проблема в бесмыслености - во первых очень дорого, а во вторых всех юзеров в очередь не поставишь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 12:27 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
Yo!в оракле если уж так нужно DDL выполняют в автономных транзакциях, т.е. выполнить не прерывая транзакции проблемы нет, проблема в бесмыслености - во первых очень дорого, а во вторых всех юзеров в очередь не поставишь. OK! Запомним, дома попробуем...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 12:28 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
Я честно говоря даже не представляю себе, зачем в рабочем порядке, да еще и внутри транзакции выполнять DDL. IMHO это должен делать проектировщик БД или администратор, которые представляют себе, зачем это делают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 12:30 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
просто прямо сейчас на глазах возникла ситуация в ASE, когда вызвали хранимку внутри транзакции, а она как на грех - создает временную таблицу - и полный отлуп. :(( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 12:32 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
Минуточку, времянки это совсем другое дело и в той же ASA создание локальной времянки никоим образом не влияет на транзакцию, блокировки в БД и прочее. Вроде как речь шла про DDL над постоянными, а не временными обьектами БД ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 13:01 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
Посмотри на mysql сайте feature comparisons вот тут , выдели какие интересно базы и там параметр rollback metadata ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 13:10 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
ХренПосмотри на mysql сайте feature comparisons вот тут , выдели какие интересно базы и там параметр rollback metadata Мда... вот посмотрят люди такие ссылки, и примут неверное решение... Инфа явно устаревшая. 2 ASCRUS Да, речь идет как о постоянных объектах, так и о временных. В DB2 абсолютно без разницы - можно в одной транзакции понасоздавать кучу объектов влить в них инфу а потом бухнуть коммит или роллбак или откатиться к savepoint и т.д. А с автономными транзакциями в Оракл поразбираюсь на выходных, возможен ли такой же вариант. Боюсь что не прокатит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 13:34 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
ASCRUSIMHO это должен делать проектировщик БД или администратор, которые представляют себе, зачем это делают. а если это именно проектировщик БД или администратор написал такой скрипт, на создание пары таблиц и изменении пары вью?! И этот скрипт должен выполняться по определенному графику и должен или выполниться целиком или никак? Вы не допускаете такой возможности? ЗЫ. Вот мне интересно, почему тут у некоторых участников, если их любимая СУБД не поддерживает какой-то фичи, то эта фича автоматически превращается в "бесполезную". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 13:37 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
2pkarklin такие администраторы/разрваботчики живут слишком мало и по понятным причинам не воспроизводят потомства, чтоб кто-то успевал озаботится такими проблемами :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 13:47 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
Yo!2pkarklin такие администраторы/разрваботчики живут слишком мало и по понятным причинам не воспроизводят потомства, чтоб кто-то успевал озаботится такими проблемами :) А поумнее что-нибудь и в тему топика слабо?! ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 13:53 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
pkarklin ASCRUSIMHO это должен делать проектировщик БД или администратор, которые представляют себе, зачем это делают. а если это именно проектировщик БД или администратор написал такой скрипт, на создание пары таблиц и изменении пары вью?! И этот скрипт должен выполняться по определенному графику и должен или выполниться целиком или никак? Вы не допускаете такой возможности? ЗЫ. Вот мне интересно, почему тут у некоторых участников, если их любимая СУБД не поддерживает какой-то фичи, то эта фича автоматически превращается в "бесполезную". Изменять структуру БД по расписанию графика или через клиентское приложение ? Ну, ну - Вам надо серьезно посмотреть в сторону ООСУБД, говорят там это прекрасно работает без проблем. А в остальном полностью присоединяюсь к высказываниям предыдущего сообщения "Yo!". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 14:06 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
ASCRUS pkarklin ASCRUSIMHO это должен делать проектировщик БД или администратор, которые представляют себе, зачем это делают. а если это именно проектировщик БД или администратор написал такой скрипт, на создание пары таблиц и изменении пары вью?! И этот скрипт должен выполняться по определенному графику и должен или выполниться целиком или никак? Вы не допускаете такой возможности? ЗЫ. Вот мне интересно, почему тут у некоторых участников, если их любимая СУБД не поддерживает какой-то фичи, то эта фича автоматически превращается в "бесполезную". Изменять структуру БД по расписанию графика или через клиентское приложение ? Ну, ну - Вам надо серьезно посмотреть в сторону ООСУБД, говорят там это прекрасно работает без проблем. А в остальном полностью присоединяюсь к высказываниям предыдущего сообщения "Yo!". Интересно слушать Ваши высказывания, однако. И как всегда - одни эмоции, а аргументации никакой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 14:13 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
>Интересно слушать Ваши высказывания, однако. И как всегда - одни эмоции, а аргументации никакой. вы действительно не понимаете ? тогда вам стоит задуматся о сохранности ваших яиц :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 14:23 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
pkarklinИнтересно слушать Ваши высказывания, однако. И как всегда - одни эмоции, а аргументации никакой. Интересно - и какую же аргументацию я должен Вам отписать ... пособие о том, что такое РСУБД и как правильно проектировать БД и почему нельзя использовать DDL по ходу работы боевой базы ? Вы правда так проектируете БД или просто прикалываетесь ? Может поделитесь опытом, в каких ситуациях может понадобиться динамическое создание и изменения таблиц, индексов, и представлений ? Я конечно понимаю, что полноценных EVENT-ов в MSSQL нет и динамический SQL нужно использовать осторожно и вдумчиво, но чтобы то, чего не хватает в MSSQL на DDL разруливать ... вот никак не въеду, надо править в консерватории что то наверное, осталось только выяснить в чьей :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 14:34 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
Yo!>Интересно слушать Ваши высказывания, однако. И как всегда - одни эмоции, а аргументации никакой. вы действительно не понимаете ? тогда вам стоит задуматся о сохранности ваших яиц :) Ну так объясните, мне тупому, не заботящемуся о сохранности своих яиц, каким образом выполнения инструкции DDL в транзакции может повлиять на систему. Не забывая, что права на эти инструкции принадлежат очень узкому кругу лиц (если в контексте сиквела, то это члены серверной роли sysadmin и члены ролей бд db_owner и ddl_admin) и простых смертных в эти роли не включают. Тоже самое касается и джобов, автоматизирующих административные задачи. И специально для ASCRUS. позвольте Вас спросить, Вы, как администратор Вашего сервера разве не из клиентского приложения инструкции DDL на сервер отправляете? Ведь утилиты, типа QA в SQL Server - это всего-навсего - клиентские приложения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 14:34 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
Граждане программисты! относитесь с уважение друг к другу! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 14:36 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
ASCRUSМожет поделитесь опытом, в каких ситуациях может понадобиться динамическое создание и изменения таблиц, индексов, и представлений ? Секционированные представления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 14:36 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
вообщето это вопрос на уровне детского сада. 1. оптимайзер промышленых субд опираются на статистику. 2. как вы представляете дропанье/создавание пусть и по расписанию таблиц с милионами запией ? в этот момент что происходит с юзерами их просят уйти ? 3. кто такое а главное как будет супортить ? 4. репликация. 5. кластер - mssql например не умеет ddl на ноды передавать. 6. в доках по ораклу четко написано что изменение схемы боего сервера имеет права вносить только админ в экстренном случае заполняя немеряное кол-во бумажек чтоб объяснить такое святотатство. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 14:51 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
pkarklin ASCRUSМожет поделитесь опытом, в каких ситуациях может понадобиться динамическое создание и изменения таблиц, индексов, и представлений ? Секционированные представления. Я знаю что такое секционированные представления. Мне интересует обоснование применения DDL внутри транзакций с возможностью отката, Вы же вроде это называете "фичей" ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 14:55 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
Yo!1. оптимайзер промышленых субд опираются на статистику. Вот спасибо, просвятили, а то я и не знал. Yo!]2. как вы представляете дропанье/создавание пусть и по расписанию таблиц с милионами запией ? в этот момент что происходит с юзерами их просят уйти ? А где вы прочитали, что я что-то собирался дропать таблицу с миллионом записей??? Что-то Вы сами начинаете Выдумывать ткие примеры использования DDL, которые действительно ни один нормальный админ не допустит. А мне надо просто создать табличку и малость альтернуть представление. Юзерам тут никто не мешает работать никоим образом. Yo!3. кто такое а главное как будет супортить ? Какое-такое?! И в чем тогда по Вашему занимается саппорт? И, простите, у Вас никогда не было ситуации, когда приходилось накатывать DDL скрипты на базу? Yo!4. репликация. 5. кластер - mssql например не умеет ddl на ноды передавать. Опять Вы пытаетесь создать ситуацию, в которой админом было бы принято другое решение! Как это коррелируется с моим примером про двет таблички? там про репликацию и кластер не говрилось! Yo!6. в доках по ораклу четко написано что изменение схемы боего сервера имеет права вносить только админ в экстренном случае заполняя немеряное кол-во бумажек чтоб объяснить такое святотатство. Понятно, что дворнику Пупкину этого не доверят. Но у меня как раз экстренный случай и бумажки я все подписал. Да и не надо переигрывать, на счет святотатства в плане изменения схемы боего сервера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 15:02 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
pkarklinА мне надо просто создать табличку и малость альтернуть представление. А зачем в транзакции? Да еще в транзакции, где всякий DML используется? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 15:04 |
|
||
|
DDL внутри транзакции
|
|||
|---|---|---|---|
|
#18+
Не хотел вмешиваться в вашу дискуссию, но обратила внимание фраза 6. в доках по ораклу четко написано что изменение схемы боего сервера имеет права вносить только админ в экстренном случае заполняя немеряное кол-во бумажек чтоб объяснить такое святотатство. Вообще-то любой пользователь, имеющий соответствующие привилегии (а они прописаны в часто предоставляемых ролях CONNECT, RESOURCE) может делать в СВОЕЙ схеме все что угодно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.02.2005, 15:07 |
|
||
|
|

start [/forum/topic.php?fid=35&msg=32901488&tid=1553948]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
106ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 190ms |
| total: | 396ms |

| 0 / 0 |
