Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 25 26 27 28 29 [30] 31 32 33 34 .. 72   вперед  Ctrl
 Re: Access и FoxPro. Сравнение мощей  [new]
Urri
Member

Откуда: Москва
Сообщений: 2693
H5N1
провел пару экспереметов на vfp9
...
вывод: нужно быть полным дауном, чтоб использовать такое в продакшене и судя по всему только дауны его и используют.

Похоже на правду: транзакции фокса так работают.
Но !!!
С выводом не согласен.
Потому что
1. надо эксперимент повторить в сети - это важно. Если рубить фокс с локальной машины, но файл-сервер оставлять продолжать работать - результаты могут быть совершенно иными.
2. сервер должен быть защищен от порубания всеми доступными средствами.
3. нефиг длинные транзакции делать. Это закон. Транзакции в фоксе должны быть короткие.

При этих условиях продакшн живет без сбоев годами.
27 фев 06, 00:18    [2392767]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
luser
Member [заблокирован]

Откуда: Пердыщево
Сообщений: 1246
Аргентина : Ямайка = 5:0
Все фоксовцы , деликатно и аргументированно доказывают свои утверждения , а вот вся другая шняга, просто пиз**т, типа "баба Катя самовар не поставила в угар". Ни реализации, ни научного смысла высказыаваний, ну вообще пустота. И это творцы ! Это те люди кторые создают системы , типа !
Хм, пот моему , что-то тут студентами наглыми запахло, аж смердит.
27 фев 06, 02:15    [2392829]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
хммм...
Guest
H5N1
провел пару экспереметов на vfp9
BEGIN TRANSACTION

	FOR i=1 TO 50
		INSERT INTO table1 VALUES (i, 'H5N1 H5N1 H5N1 H5N1 H5N1 H5N1 H5N1 H5N1')
	ENDFOR
	
	FOR i=1 TO 500000
		INSERT INTO table2 VALUES (i, 'H5N1 H5N1 H5N1 H5N1 H5N1 H5N1 H5N1 H5N1')
	ENDFOR
	= Messagebox('END TRANSACTION')

END TRANSACTION
убил фокс после меседжбокса секунд через 5. вообще я ожидал, что в одной табличке будут записи а в другой нет, окалось интересней, оба файла просто умерли :)
Table "name" has become corrupted. The table will need to be repaired before using again. (Error 2091)
больше мне понравился update, в табличке 500К записей
BEGIN TRANSACTION
	UPDATE table2 SET name = 'SHIT SHIT SHIT SHIT SHIT SHIT SHIT SHIT SHIT '
	= Messagebox('END TRANSACTION')

END TRANSACTION
убил фокс после меседжбокса через пару секунд . как и ожидалось 200К записей проапдейтилось, а остальные забыли :)

вывод: нужно быть полным дауном, чтоб использовать такое в продакшене и судя по всему только дауны его и используют.


???

Begins a transaction. Transactions are supported only for tables in a database. See CREATE DATABASE and ADD TABLE for information on how to create and add tables to a database.
27 фев 06, 04:42    [2392867]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
YuriWhite
Member

Откуда: Chelyabinsk
Сообщений: 449
2 Пьяный Лох

Круто! Вы зажигаете просто супер! Серьезно!
Большое человеческое спасибо.

2 All

Когда пытаются сравнивать движок оракле и маз , пусть даже в части транзакций...это просто супер для МАЗ - ведь скоко людей делают оракле и скоко маз да и про цену не забываем и про то, что МС на МАЗ забил. А ведь нет - страсти тока накаляются. Приятно за МАЗ.
27 фев 06, 09:25    [2393098]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
I_Am222
Guest
Urri

3. нефиг длинные транзакции делать. Это закон. Транзакции в фоксе должны быть короткие.

При этих условиях продакшн живет без сбоев годами.



согласен на все 999%
Именно поэтому я, при описании своего опыта заметил, что инсертить лимон записей, либо апдейтить поллинмона ни один из здравомыслящих программеров никогда не будет.
Если уж такое понадобится, то будет писаться некий административный модуль "Залифки до куя данных в мою БД"
ИМХО даже если на том конце будет Оракл, а некий студент захочет, чтобы по нажатию кнопаря на форме пошло лимон записей (так как оракл это промышленная бд, то лимон - это смешно, тут надо 25 лимонофф), редкий юзер дождется конца такого процесса ась?

Ясно, что это никоим образом не относится ни к ВФП, ни к ораклу.. это относится к умению программить...
Что могу ответить убившему фокс? На локальной машине дома и у меня транзакции не прошли, но ведь спор был о сетевой транзакции или уже нет?
27 фев 06, 09:40    [2393154]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
I_Am222
Guest
хммм...
H5N1
провел пару экспереметов на vfp9
BEGIN TRANSACTION

	FOR i=1 TO 50
		INSERT INTO table1 VALUES (i, 'H5N1 H5N1 H5N1 H5N1 H5N1 H5N1 H5N1 H5N1')
	ENDFOR
	
	FOR i=1 TO 500000
		INSERT INTO table2 VALUES (i, 'H5N1 H5N1 H5N1 H5N1 H5N1 H5N1 H5N1 H5N1')
	ENDFOR
	= Messagebox('END TRANSACTION')

END TRANSACTION
убил фокс после меседжбокса секунд через 5. вообще я ожидал, что в одной табличке будут записи а в другой нет, окалось интересней, оба файла просто умерли :)
Table "name" has become corrupted. The table will need to be repaired before using again. (Error 2091)
больше мне понравился update, в табличке 500К записей
BEGIN TRANSACTION
	UPDATE table2 SET name = 'SHIT SHIT SHIT SHIT SHIT SHIT SHIT SHIT SHIT '
	= Messagebox('END TRANSACTION')

END TRANSACTION
убил фокс после меседжбокса через пару секунд . как и ожидалось 200К записей проапдейтилось, а остальные забыли :)

вывод: нужно быть полным дауном, чтоб использовать такое в продакшене и судя по всему только дауны его и используют.


???

Begins a transaction. Transactions are supported only for tables in a database. See CREATE DATABASE and ADD TABLE for information on how to create and add tables to a database.


если не ошибаюсь в 9-ке транзакции и для свободных таблиц допустимы
Я не писал в своих опытах OPEN DATABASE.... ибо предполагал, что об этом все знают. Вы предположили, что некто не знает
весьма возможно... весьма
27 фев 06, 09:43    [2393163]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
H5N1
Guest
1. таблички были из dbc, но в 9ке это действительно неважно.
2. баклажан, я понимаю что это выше твоего понимания но вообще транзакция она атомарна не зависимо от длины, иначе это куйня какая-то а не транзакция. так вот в vfp это куйня какая-то и к транзакции никакого отношения не имеет. И не важно что за длина, да хоть из двух операторов, от этого vfp по другому писать в файл не станет и по сети по другому не станет. единственно, шансов вылезти куйне чуть меньше, только и всего.
короче, баклажан, убей себя наконец, такая несусветная глупость не должна жить.
27 фев 06, 09:55    [2393206]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
Sergey Ch
Member

Откуда: Благовещенск
Сообщений: 8894
H5N1
провел пару экспереметов на vfp9
BEGIN TRANSACTION

	FOR i=1 TO 50
		INSERT INTO table1 VALUES (i, 'H5N1 H5N1 H5N1 H5N1 H5N1 H5N1 H5N1 H5N1')
	ENDFOR
	
	FOR i=1 TO 500000
		INSERT INTO table2 VALUES (i, 'H5N1 H5N1 H5N1 H5N1 H5N1 H5N1 H5N1 H5N1')
	ENDFOR
	= Messagebox('END TRANSACTION')

END TRANSACTION
убил фокс после меседжбокса секунд через 5. вообще я ожидал, что в одной табличке будут записи а в другой нет, окалось интересней, оба файла просто умерли :)
Table "name" has become corrupted. The table will need to be repaired before using again. (Error 2091)
больше мне понравился update, в табличке 500К записей
BEGIN TRANSACTION
	UPDATE table2 SET name = 'SHIT SHIT SHIT SHIT SHIT SHIT SHIT SHIT SHIT '
	= Messagebox('END TRANSACTION')

END TRANSACTION
убил фокс после меседжбокса через пару секунд . как и ожидалось 200К записей проапдейтилось, а остальные забыли :)

вывод: нужно быть полным дауном, чтоб использовать такое в продакшене и судя по всему только дауны его и используют.

Повторил данный пример.
Вы знаете, он работает правильно - как и положено работать транзациям...

Мне кажется, что как и было сказано выше - Вы использовали таблицы БЕЗ КОНТЕЙНЕРА БАЗЫ ДАННЫХ. В это случае команды
BEGIN TRANSACTION
END TRANSACTION
не работают, но и не выдают ошибки при их применении.

Пожалуйста, не вводите программистов, не связанных с FoxPro в ЗАБЛУЖДЕНИЕ - транзакции в FoxPro работают так как и должны работать - "Все или ничего"...

But anyway, Good luck!
27 фев 06, 10:35    [2393399]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
Sergey Ch
Member

Откуда: Благовещенск
Сообщений: 8894
H5N1
1. таблички были из dbc, но в 9ке это действительно неважно.
.

Вы снова не правы - это важно. Для того, чтобы сделать свободную таблицу транзакционной - надо приложить усилия, то есть написать соответствующий дополнительный команды. Как Вы знаете, политика Microsoft говорит о том, что если новая feature изменяет поведение программы, то она должна включаться дополнительной командой. Этим достигается совместимость с младшими версиями.

Кроме того транзакционная таблица (та которая описана как поддерживающая транзакции) уже не может быть открыта в более ранних версиях FoxPro в целях выполнения правил совершения транзакций...

Good luck!
27 фев 06, 10:41    [2393429]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
Sergey Ch
Member

Откуда: Благовещенск
Сообщений: 8894
H5N1
2. баклажан, я понимаю что это выше твоего понимания но вообще транзакция она атомарна не зависимо от длины, иначе это куйня какая-то а не транзакция. так вот в vfp это куйня какая-то и к транзакции никакого отношения не имеет. И не важно что за длина, да хоть из двух операторов, от этого vfp по другому писать в файл не станет и по сети по другому не станет. единственно, шансов вылезти куйне чуть меньше, только и всего.
... такая несусветная глупость не должна жить.

Да Вы правы, "такая несусветная глупость не должна жить." По этому я повтроил Ваш пример и Выше попытался объяснить, где у Вас ошибки...

Мой вывод: "Транзакции в FoxPro работают так как положено и не зависят от длины. Длина не может быть более 2GB, но это очень много для 99% реальных, правильно спроектированных приложений"...

P.S. Ничего личного, просто рассмотрение приведенного Вами примера.
27 фев 06, 10:46    [2393446]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
H5N1
Guest
2Sergey Ch

ага :) и тут прозойдет магия, прийдет добрая фея и из воздуха откатит транзакцию. бл* неужели вы все поголовно ?
хорошо в этом примере таблицы объеденины в dbc ?
CLOSE ALL
CLOSE DATABASES
OPEN DATABASE "d:\documents and settings\H5N1\my documents\visual foxpro projects\data1.dbc" SHARED
BEGIN TRANSACTION
	UPDATE table2 SET name = 'SHIT SHIT SHIT SHIT SHIT SHIT SHIT SHIT SHIT '
	= Messagebox('END TRANSACTION')

END TRANSACTION
27 фев 06, 10:59    [2393525]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
хммм...
Guest
Sergey Ch

...
Мне кажется, что как и было сказано выше - Вы использовали таблицы БЕЗ КОНТЕЙНЕРА БАЗЫ ДАННЫХ. В это случае команды
BEGIN TRANSACTION
END TRANSACTION
не работают, но и не выдают ошибки при их применении.
...


Allows a free table or free cursor to support transactions.
MAKETRANSACTABLE([nWorkArea | cAlias])
27 фев 06, 11:11    [2393604]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
хммм...
Guest
А вообще спор довольно странный получается, чего вы хотите добиться вырубанием VFP/компьютера/сети в момент END TRANSACTION? Вы же просто вырубаете саму СУБД. Убейте скл сервер в момент транзакции и посмотрите что будет с БД, если конечно вам удастся поймать этот момент. Больше чем уверен, что ничего хорошего. Во всяком случае версионник должен, как минимум, породить мусор.

Ну никто вам не мешает создать триггеры/процедуры в контейнере, которые будут логгировать изменения в нужном вам виде и получите некоторое подобие лога транзакций - откатывайтесь потом при запуске убитой субд куда и как хотите.
27 фев 06, 11:38    [2393748]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
2 хммм

Выше уже объяснял, что НИЧЕГО ПЛОХОГО. При следующем старте, сервер вернет данные в адекватное состояние при помощи REDO и UNDO. Не надо валить с больной головы на здоровую.

В полноценных СУБД, транзакции это не только A, но еще и CID
27 фев 06, 12:12    [2393951]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
H5N1
Guest
любой нормальный sql сервер поддерживующий транзакции ни при каких условиях не допустит такой куйни. перечитайте тред.

на счет тригеров, это ничего не даст. ну записал клиент vfp в типа лог, ну записал update мусор в таблицы и сгинул. кто будет теперь определять что это был сбой ? а главное как ??

да, и тут уже говорилось, лог с транзакциями не особо то и связан, интербейз кллоны и без него умудряются транзакции супортить.
27 фев 06, 12:18    [2393991]     Ответить | Цитировать Сообщить модератору
 C++/Linux/FireBird  [new]
f_w_p
Member

Откуда:
Сообщений: 1603
хммм...
А вообще спор довольно странный получается, чего вы хотите добиться вырубанием VFP/компьютера/сети в момент END TRANSACTION? Вы же просто вырубаете саму СУБД. Убейте скл сервер в момент транзакции и посмотрите что будет с БД, если конечно вам удастся поймать этот момент. Больше чем уверен, что ничего хорошего. Во всяком случае версионник должен, как минимум, породить мусор.

А вы попробуйте.:-)

P.S. В году этак 1996-м был у меня проектик. СУБД IB4.2. ОС Windows NT Server 4.0, 32Мб памяти, диск 1.2Гб. 12 пользователей. Причем активных пользователей. И очень слабенькое электропитание. UPS "естественно" отсутствовал как класс. Сервер вырубался по несколько раз в день. И ни разу никакого сбоя не было.
27 фев 06, 12:39    [2394098]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
1024
Member

Откуда: Нижний Новгород
Сообщений: 14267

любой нормальный sql сервер поддерживующий транзакции ни при каких условиях
не допустит такой куйни. перечитайте тред.
-------------

без соплей пожалуйста. Любой сервер это MS SQL, Oracle, IBM DB2, Interbase +
клоны, MySQL, mSQL, PostgreSQL, Derby все разных версий. И куча других.

Где-то лучше, где-то хуже.

При наличии пустой головы (как у тебя) плохое решение можно сделать с
использованием любого инструмента.

Па-добраму канешна.


Posted via ActualForum NNTP Server 1.3

27 фев 06, 12:40    [2394102]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 32886

Привет, f_w_p!
Ты пишешь:

f_w_p
fp> P.S. В году этак 1996-м был у меня проектик. СУБД IB4.2.
fp> ОС Windows NT Server 4.0, 32Мб памяти, диск 1.2Гб. 12 пользователей.
fp> Причем активных пользователей. И очень слабенькое электропитание.
fp> UPS "естественно" отсутствовал как класс.
fp> Сервер вырубался по несколько раз в день.
fp> И ни разу никакого сбоя не было.
Никогда об этом не рассказывай в форуме по IB/FB...

--
With best regards, Мимопроходящий.

Posted via ActualForum NNTP Server 1.3

27 фев 06, 12:45    [2394136]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
Sergey Ch
Member

Откуда: Благовещенск
Сообщений: 8894
UPDATE data1!table2 SET name = 'SHIT SHIT SHIT SHIT SHIT SHIT SHIT SHIT SHIT '

А вот так Вы пробовали? Тогда точно, таблица будет из базы данных...

Указанный Выше пример тоже работает у меня правильно...
27 фев 06, 12:49    [2394171]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
хммм...
Guest
Gluk (Kazan)
2 хммм

Выше уже объяснял, что НИЧЕГО ПЛОХОГО. При следующем старте, сервер вернет данные в адекватное состояние при помощи REDO и UNDO. Не надо валить с больной головы на здоровую.

В полноценных СУБД, транзакции это не только A, но еще и CID


я и не валю с больной головы на здоровую, не нужно передергивать.

Я прекрасно знаю, что у клонов иб нет лога транзакций, я сам работаю с фб. И у него бывают проблемы, и у него бывают разрушения БД, и у него бывают невосстановимые бэкапы. Если вы пишете приложение на вфп с использованием бд вфп, то на вас и лежит этот груз - отслеживание аварий и прочего, как вы это реализуете - ваше дело.
Кажется нигде не звучало, что вфп - сервер БД, или я не прав?
27 фев 06, 12:59    [2394231]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
f_w_p
Member

Откуда:
Сообщений: 1603
Мимопроходящий
f_w_p
fp> P.S. В году этак 1996-м был у меня проектик. СУБД IB4.2.
fp> ОС Windows NT Server 4.0, 32Мб памяти, диск 1.2Гб. 12 пользователей.
fp> Причем активных пользователей. И очень слабенькое электропитание.
fp> UPS "естественно" отсутствовал как класс.
fp> Сервер вырубался по несколько раз в день.
fp> И ни разу никакого сбоя не было.
Никогда об этом не рассказывай в форуме по IB/FB...

Почему?
27 фев 06, 13:05    [2394261]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
I_Am222
Guest
Фу, надоело уже пробовать и пробовать..
попробовал намного больше раз чем "некто" сбой не получил, но даже если бы и получил - никогда меня не переубедите, что пара миллионов записей за одну транзакцию - это есть правильно
Может где-то и надо столько вгонять.. но никак не задача это для одного юзера.....

Попробовал гриппозный пример - как было так и есть.. то есть таблицы целы и невредимы, данные не проапдейтились.. и что теперь?
спорить дальше?

Глупости все это.....
27 фев 06, 14:09    [2394619]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
I_Am222
Guest
и.. другими словами, если в транзакции принимают участие 3-5-10 таблиц, и в них одновременно модифицируется небольшое количество данных... 10-500 не миллион, то уронить бд в таком случае вряд ли удастся... вывод?
В ВФП транзакции делают то, что доложны делать....

Осталось попробовать так уронить оракл , да что-то мне лень.. ему ж придется наверное 10 000 000 000 данных модифицировать... и ждать до вечера
27 фев 06, 14:17    [2394657]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
H5N1
Guest
Sergey Ch
UPDATE data1!table2 SET name = 'SHIT SHIT SHIT SHIT SHIT SHIT SHIT SHIT SHIT '

А вот так Вы пробовали? Тогда точно, таблица будет из базы данных...


и так порпробывал, фея не объявилась ... видно она появляется только у компов повернутых в сторону Меки :)

Sergey Ch
Указанный Выше пример тоже работает у меня правильно...


ну тогда берем компьютер под мышку и вперед к доктору, искать фею :) а потом к другому проверять зрение и радиус кривизны рук. хотя я практически уверен что вы из тех же баклажанов, что сбой моделируют до оператора end transaction ;)
27 фев 06, 20:24    [2396455]     Ответить | Цитировать Сообщить модератору
 Re: Access и FoxPro. Сравнение мощей  [new]
1024
Member

Откуда: Нижний Новгород
Сообщений: 14267

плохому танцору мешают сами знаете что. Плохому кодеру тоже что-нибудь
должно мешать


Posted via ActualForum NNTP Server 1.3

28 фев 06, 09:46    [2397444]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 25 26 27 28 29 [30] 31 32 33 34 .. 72   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить