powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / интерестный вопрос на Brainbench
10 сообщений из 10, страница 1 из 1
интерестный вопрос на Brainbench
    #32070132
Zaxx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Оффтопик конечно, но всё же:

Sample code:
Insert vtable (a,b,c,d) values (1,2,3,4)
Update vtable set a=6,b=3 where c=3
Select * from vtable

Question: How many transactions are contained by the SQL sample code above?

Choices:
Two
Three
Four
Five
Six

Варианта ответа "ONE" в списке нет....
--
Какие есть мнения?
...
Рейтинг: 0 / 0
интерестный вопрос на Brainbench
    #32070158
ora600
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ни одной
...
Рейтинг: 0 / 0
интерестный вопрос на Brainbench
    #32070164
ora600
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хотя, наверное , это не оракл, раз такой чудный синтаксис инсерта. Значит МОЖЕТ подразумеваться автокоммит. И, типа , ты должен ответить TWO . О КАК !
...
Рейтинг: 0 / 0
интерестный вопрос на Brainbench
    #32070165
T34
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
T34
Гость
2
...
Рейтинг: 0 / 0
интерестный вопрос на Brainbench
    #32070215
Zaxx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 ora600

А чем собственно вам синтаксис инсерта не ораклиный?

--
В общем я и ответил 2, но только как "наименьшее зло" из перечисленных. Но вот почему 2, это вопрос...
...
Рейтинг: 0 / 0
интерестный вопрос на Brainbench
    #32070248
Фотография Lexis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
наверно одна транзакция на Insert
и вторая на Update
а на select не будет транзакции
...
Рейтинг: 0 / 0
интерестный вопрос на Brainbench
    #32070267
Фотография softy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Насколько я знаю фраза INTO обязательна для этого оператора. Поэтому если прикол вопроса именно в этом, то при выполнении первого оператора "Insert vtable (a,b,c,d) values (1,2,3,4) " - произойдёт ошибка "ORA-00925: отсутствует ключевое слово INTO" и на этом всё остановится. Поэтому ответ - ни одной транзакции.

Если исходить из того, что это просто опечатка и INTO есть, то будет ошибка "Update vtable set a=6,b=3 where c=3 ORA-00933: неверное завершение SQL-предложения", потому-что операторы не разделены символом ";".

Если же это тоже опечатка и символы ';' есть то для:
Код: plaintext
1.
2.
3.
Insert into vtable (a,b,c,d) values ( 1 , 2 , 3 , 4 );
Update vtable set a= 6 ,b= 3  where c= 3 ; 
Select * from vtable; 


количество транзакций зависит от установки autocommit, если = true, то 2 транзакции, если = false, то 1 транзакция.
...
Рейтинг: 0 / 0
интерестный вопрос на Brainbench
    #32070277
ora600
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Строго говоря, понятие транзакции вне контекста отдельно взятой программной системы трудно формализовать. А в терминах субд уж по крайней мере это телодвижения между и заканчивающиеся коммитами-роллбэками. А после insert-а я на месте оракла захотел бы into
...
Рейтинг: 0 / 0
интерестный вопрос на Brainbench
    #32070279
Фотография softy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"количество транзакций зависит от установки autocommit = false, то 1 транзакция."

Хочу скорректировать свои же слова. Опять же всё зависит от отсутствия команды COMMIT. Если её нет - то опять же ни одной транзакции.
...
Рейтинг: 0 / 0
интерестный вопрос на Brainbench
    #32070540
ora600
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я придумал - на апдейте vtable два триггера - по полям a и b (разные). И они - с autonomous_transaction !
Вот вам и две транзакции !
:-))))))))
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / интерестный вопрос на Brainbench
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]