|  | 
| 
python и sqlite | |||
|---|---|---|---|
| #18+ Здравствуйте. Если в запросе на изменение данных (вставка, обновление записей) в базе использовать конструкцию Код: python 1. 2. 3. 4. 5. 6. 7. 8. то нужно ли в самих командах вставки и обновления использовать алгоритм “OR ROLLBACK”. То есть так Код: python 1. 2. При возникновении ошибки изменение не сохранится? Помогите пожалуйста. Спасибо. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 06.06.2018, 15:23 |  | ||
| 
python и sqlite | |||
|---|---|---|---|
| #18+ MaratD, думаю не нужно (транзакция должна быть атомарной) также можно сократить команды ROLLBACK и COMMIT до одного слова. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 07.06.2018, 20:21 |  | ||
| 
python и sqlite | |||
|---|---|---|---|
| #18+ MaratD, Зависит от того что тебе нужно. В первом примере (с ловлей исключения), у тебя может произойти исключение в любом месте, не обязательно внутри execute(), но и в любой питоньей команде между обращениями к базе. А в во втором примере откат будет происходить только при ошибке вставки/обновления. Но ошибки питоньего скрипта на базе не отразятся. Оба подхода вполне нормальны, но у них разные области. ... | |||
| : 
 Нравится:
     Не нравится:
     | |||
| 07.06.2018, 21:27 |  | ||
|  | 

| start [/forum/topic.php?desktop=1&fid=54&tid=2008450]: | 0ms | 
| get settings: | 11ms | 
| get forum list: | 19ms | 
| check forum access: | 3ms | 
| check topic access: | 3ms | 
| track hit: | 36ms | 
| get topic data: | 10ms | 
| get forum data: | 2ms | 
| get page messages: | 37ms | 
| get tp. blocked users: | 1ms | 
| others: | 229ms | 
| total: | 351ms | 

| 0 / 0 | 
