Главная страница


ru.cgi.perl

 
 - RU.CGI.PERL ------------------------------------------------------------------
 From : yurik shestakov                      2:5020/400     21 Dec 2000  22:10:06
 To : All
 Subject : Re: MySQL
 -------------------------------------------------------------------------------- 
 
 Serge Rodovnichenko <Serge.Rodovnichenko@f696.n5020.z2.fidonet.org> wrote:
 
  SR> Hello Serg!
 
  SR> Wednesday December 13 2000 08:12, Serg Wereskov wrote to All:
 
  >>> php. Потому что на нем сложно сваять достаточно нетривиальный проект,
  >>> в котором ты упрешься в то, что mySQL это  не настоящая база данных.
 
  SW>> В каком смысле ненастоящая? И что лучше ?
 
  SR> MySQL не умеет триггеров, stored procedures. Транзакции только-только в
  SR> последней версии научился (3.23.??). Зато быстрый и неприхотливый в смысле
  SR> железа.
 
 Задачка: угадать результат исполнения на 3.23.latest такого  кода, например:
 
 use DBI;
 my $dbh ;
 my $in_tx = 0;
 eval {
   $dbh = DBI->connect('dbi:mysql:database=test;hostname=127.0.0.1;port=3306')
   or die "Can't connect: ".$DBI::errstr;
 
   $dbh->do('SET AUTOCOMMIT=0');# <<< mysql specific
 
   $dbh->do('BEGIN WORK') or die "can't start TX: ".$DBI::errstr;
   $in_tx = 1;
   $dbh->do(q{ CREATE TABLE myTable ( id integer, str char(20) ) })
   or die "Can't create table: ".$DBI::errstr;
   $dbh->do('ROLLBACK')
   or die "Can't rollback: ".$DBI::errstr;
   $in_tx = 0;
   $dbh->do('SET AUTOCOMMIT=1'); # <<< mysql specific
   $dbh->do('INSERT INTO myTable (id,str) VALUES (1,"one")')
   or die "Can't insert: ".$DBI::errstr;
   
   print "Oops. Insert completed :-]\n";
   };
 if ($@) {
   print STDERR $@;
   $dbh->do('ROLLBACK') if $in_tx;
   }
 
 $dbh->disconnect if defined $dbh;
 
 exit 0;
 
 p.s. DBD::mysql не "кушает" $dbh->commit и $dbh->rollback
 p.p.s. Hа DBD::Informix  результат выполнения малость подправленного
 кода будет таким:
   DBD::Informix::db do failed: SQL: -206: The specified table (mytable) 
   is not in the database.
 -- 
 // yurik shestakov (aka shisha)
 --- ifmail v.2.15dev5
  * Origin: Unknown (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: MySQL   yurik shestakov   21 Dec 2000 22:10:06 
 Re: MySQL   vitus@ice.ru   22 Dec 2000 13:34:44 
 Re: MySQL   yurik shestakov   23 Dec 2000 18:36:31 
Архивное /ru.cgi.perl/91386176c074.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional