Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Программирование > PHP

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 14.11.2001, 18:04
BigIlya вне форума Посмотреть профиль Отправить личное сообщение для BigIlya Найти все сообщения от BigIlya
  № 1  
BigIlya

Регистрация: Oct 2001
Адрес: Рязань
Сообщений: 29
По умолчанию Транзакции...

А поддерживает ли MySQL транзакии? И как из под PHP ими воспользоваться?
__________________
Пейте пиво!

Старый 15.11.2001, 20:43
evgenz вне форума Посмотреть профиль Отправить личное сообщение для evgenz Посетить домашнюю страницу evgenz Найти все сообщения от evgenz
  № 2  
evgenz

Регистрация: Feb 2001
Адрес: Moscow
Сообщений: 223
Отправить сообщение для evgenz с помощью ICQ
У меня как то вставал такой вопрос!!!

MySQL вроде бы не поддерживает транзакций... но как сказал один мой знакомый, на вопрос: А не рухнет ли у меня база, от большого числа посетителей???

Если у тебя на сайте будет столько посещений что мускл рухнет... то ты будешь очень богатым человеком и у тебя будут другие проблемы

Старый 15.11.2001, 21:20
sts вне форума Посмотреть профиль Отправить личное сообщение для sts Найти все сообщения от sts
  № 3  
sts
алкаголик и придурок
 
Аватар для sts

Регистрация: May 2001
Адрес: город-герой лондон
Сообщений: 2,103
what is "транзакции"?

Старый 16.11.2001, 11:06
BigIlya вне форума Посмотреть профиль Отправить личное сообщение для BigIlya Найти все сообщения от BigIlya
  № 4  
BigIlya

Регистрация: Oct 2001
Адрес: Рязань
Сообщений: 29
По умолчанию Ну вы блин даете....

Парни, но вы даете. Они не знают, что такое транзакции, как же они живут то после этого ) Итак все во внимание: "Транзакцией называется совокупность операций с базой данных, которая либо выполняется вся полность, либо не выполняется совсем" ) А транзакции MySQL поддерживает...
__________________
Пейте пиво!

Старый 16.11.2001, 12:51
evgenz вне форума Посмотреть профиль Отправить личное сообщение для evgenz Посетить домашнюю страницу evgenz Найти все сообщения от evgenz
  № 5  
evgenz

Регистрация: Feb 2001
Адрес: Moscow
Сообщений: 223
Отправить сообщение для evgenz с помощью ICQ
По умолчанию Не согласен

Нет в MySQL транзакций, и вообще как это совокупность операций котороя - цитирую - не выполняеться совсем, все операции встают в очередь, и в конце концов выполняються...

Вот вам пример который я прочитал в каком то журнале, который подчеркиает плохую реализацию транзакции:

Покупаешь интернет карту и с двух компов одновременно активизируешь ее, в базу поступают данные активизации и следовательно данную карту надо удалить из базы, так вот вопрос успеет она удалить до того момента как второй комп прошлет запрос на активизацию... оказыветься фокус проходил у какого то провайдера

Старый 16.11.2001, 12:58
BRUTALIS вне форума Посмотреть профиль Отправить личное сообщение для BRUTALIS Найти все сообщения от BRUTALIS
  № 6  
BRUTALIS
 
Аватар для BRUTALIS

Регистрация: Mar 2001
Адрес: Zimbabwe, Gilead
Сообщений: 38
Отправить сообщение для BRUTALIS с помощью ICQ Отправить сообщение для BRUTALIS с помощью Yahoo
Странно... или я слишком долго не читал новостей или последний ответ неправильный, или mysql начал поддерживать транзакции (что было бы реально неплохо, должен заметить!!!)

Однако, насколько я знаю (и уверен в этом на 100%!) mysql не поддерживает транзакции! Равно как и тирггеры и хранимые процедуры! Зато взамен получили быстрый, многопоточный сервер БД. Если уж действительно необходимы транзакции - некоторые их фичи (не все!) можно и на mysql симулировать. rtfm.
__________________
<HB>

Старый 16.11.2001, 13:03
evgenz вне форума Посмотреть профиль Отправить личное сообщение для evgenz Посетить домашнюю страницу evgenz Найти все сообщения от evgenz
  № 7  
evgenz

Регистрация: Feb 2001
Адрес: Moscow
Сообщений: 223
Отправить сообщение для evgenz с помощью ICQ
По умолчанию to BRUTALIS

А я об чем...

Старый 16.11.2001, 13:04
BRUTALIS вне форума Посмотреть профиль Отправить личное сообщение для BRUTALIS Найти все сообщения от BRUTALIS
  № 8  
BRUTALIS
 
Аватар для BRUTALIS

Регистрация: Mar 2001
Адрес: Zimbabwe, Gilead
Сообщений: 38
Отправить сообщение для BRUTALIS с помощью ICQ Отправить сообщение для BRUTALIS с помощью Yahoo
subj:

в mysql команды sql выполняются одна за одной и если команда отправлена серверу, то её нельзя уже отменить.

а вот, например, в oracle (или sybase, да и не только в них) можно задать целый набор команд, но пока не будет отдана команда commit нифига не будет, т.е. все sql команды отсылаются серверу БД только после команды commit.
__________________
<HB>

Старый 16.11.2001, 13:11
BRUTALIS вне форума Посмотреть профиль Отправить личное сообщение для BRUTALIS Найти все сообщения от BRUTALIS
  № 9  
BRUTALIS
 
Аватар для BRUTALIS

Регистрация: Mar 2001
Адрес: Zimbabwe, Gilead
Сообщений: 38
Отправить сообщение для BRUTALIS с помощью ICQ Отправить сообщение для BRUTALIS с помощью Yahoo
По умолчанию re

2 evgenz:

извини, тут типа пока ответ писал, ты свой вариант ответа отослал, вот и получилась накладка (вот и пример транзакции, а точнее её отсутствия) %)))

мои ответы были направлены для BigIlya

%)
__________________
<HB>

Старый 16.11.2001, 15:51
BigIlya вне форума Посмотреть профиль Отправить личное сообщение для BigIlya Найти все сообщения от BigIlya
  № 10  
BigIlya

Регистрация: Oct 2001
Адрес: Рязань
Сообщений: 29
По умолчанию Ну хорошо...

Откроем пункт 7.31 документации по MySQL...Цитирую:
7.31 BEGIN/COMMIT/ROLLBACK Syntax
By default, MySQL runs in autocommit mode. This means that as soon as you execute an update, MySQL will store the update on disk.

If you are using BDB tables, you can put MySQL into non-autocommit mode with the following command:

SET AUTOCOMMIT=0

After this you must use COMMIT to store your changes to disk or ROLLBACK if you want to ignore the changes you have made since the beginning of your transaction.

If you want to switch from AUTOCOMMIT mode for one series of statements, you can use the BEGIN or BEGIN WORK statement:

BEGIN;
SELECT @A:=SUM(salary) FROM table1 WHERE type=1;
UPDATE table2 SET summmary=@A WHERE type=1;
COMMIT;

Note that if you are using non-transaction-safe tables, the changes will be stored at once, independent of the status of the autocommit mode.


К чему бы это они написали? Мне здесь только не понятно, что такое BDB таблицы? Если я не прав, то заранее извиняюсь.
А на счет очереди...так BRUDALIS абсолютно прав!
__________________
Пейте пиво!

Создать новую тему   Часовой пояс GMT +4, время: 04:16.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 04:16.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.