
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
20.10.2005, 17:23
|
|||
|---|---|---|---|
|
|||
(PERL) работа с БД, удаление таблиц |
|||
|
#18+
Интересует именно PERL, т.к. в PHP нижеописанного не произойдет. Нужно удалить список таблиц из БД. Но как только скрипт доходит до несуществующей таблицы цикл прерывается. Как увидите из содержания кода, я не знаком с PERL-ом вообще и не знаю как ошибки обрабатываются. как проигнорировать такую ошибку? или как проверить существование таблицы с именем $table_name Ниже код: while($result = $sth->fetchrow_hashref) { $table_name = $result->{'ip'}; my $res=$table_name=~s[(\.+)]<"_">ge; print "result=$res new ip=$ip\n"; $sql2 = "DROP TABLE `".$ip."`"; $sth2 = $dbh2->prepare($sql2); $sth2->execute(); } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.10.2005, 19:44
|
|||
|---|---|---|---|
(PERL) работа с БД, удаление таблиц |
|||
|
#18+
Vitaly_VGTИнтересует именно PERL, т.к. в PHP нижеописанного не произойдет. Нужно удалить список таблиц из БД. Но как только скрипт доходит до несуществующей таблицы цикл прерывается. Как увидите из содержания кода, я не знаком с PERL-ом вообще и не знаю как ошибки обрабатываются. как проигнорировать такую ошибку? perldoc -f eval или как проверить существование таблицы с именем $table_name я подозреваю что это от БД зависит... я вот в сибайсе в зависимости ОТ пользовал или Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
21.10.2005, 14:50
|
|||
|---|---|---|---|
(PERL) работа с БД, удаление таблиц |
|||
|
#18+
Vitaly_VGT как проигнорировать такую ошибку? или как проверить существование таблицы с именем $table_name 1) если вы используете mysql то разумнее вместо drop table tblname использовать drop table if exists tblname 2) когда вы открываете соединение с базой, вы можете передать ей параметр как именно отрабатывать неудачи. Это параметр RaiseError. Если он 1 - то программа сдохнет при ошибке в выполнении. Если он 0 - то сам дескать ковыряйся проверяй что там происходит. То есть практически - вам можете сделать: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=23&mobile=1&tid=1477399]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
146ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 476ms |

| 0 / 0 |
