Follow along with the video below to see how to install our site as a web app on your home screen.
Примечание: This feature may not be available in some browsers.
Спасибо, изначально делал по второму сценарию, когда доходит до 27%установки выдает эту ошибку, реально в архиве этого файла нет, попробую еще третий сценарий, но шансы на успех без этого файла думаю не велики.....
<?php
class Tecdoc {
var $db;
function __construct() {
$connection_str = "Driver={Transbase ODBC TECDOC CD 1_2014};Database=TECDOC_CD_1_2014@localhost";
$this->db = odbc_connect($connection_str,"tecdoc","tcd_error_0") or odbc_errormsg();
mysql_connect("localhost", "tecdoc", "1111");
mysql_select_db("tecdoc");
mysql_set_charset("utf8");
}
function export($table_name) {
echo "$table_name - processing... ";
flush();
$query = "SELECT * FROM " . $table_name;
$data = odbc_exec($this->db, $query);
odbc_longreadlen($data, 10485760);
while($row = odbc_fetch_array($data)) {
foreach($row as $key => $value) {
$keys[] = "`" . $key . "`";
$values[] = "'" . mysql_real_escape_string($value) . "'";
}
$mysql_query = "INSERT INTO `" . $table_name . "` (" . implode(",", $keys) . ") VALUES (" . implode(",", $values) . ")";
mysql_query($mysql_query);
//echo "$mysql_query<hr>";
set_time_limit(3600);
unset($keys);
unset($values);
unset($row);
}
echo "completed!<br>";
flush();
}
function exportGraphics($table_name) {
echo "$table_name - exporting... ";
flush();
$query = "SELECT * FROM " . $table_name;
@mkdir("images/" . $table_name);
$data = odbc_exec($this->db, $query);
odbc_longreadlen($data, 10485760);
while($row = odbc_fetch_array($data)) {
if($row['GRD_ID'] != "") {
$file_name_jp2 = "images/" . $table_name . "/" . $row['GRD_ID'] . ".jp2";
$file = fopen ($file_name_jp2, "w");
fputs($file, $row['GRD_GRAPHIC']);
fclose($file);
set_time_limit(3600);
unset($row);
}
}
echo "completed!<br>";
flush();
}
function exportAllGraphics() {
$result = odbc_tables($this->db);
while (odbc_fetch_row($result)) {
if(odbc_result($result, "TABLE_TYPE") == "TABLE") {
$name = odbc_result($result, "TABLE_NAME");
if (substr($name, 0, 12) == 'TOF_GRA_DATA')
if (!is_dir("images/" . $name))
$this->exportGraphics($name);
}
}
}
}
$tecdoc = new Tecdoc();
$tecdoc->export("TOF_MANUFACTURERS");
$tecdoc->export("TOF_MODELS");
$tecdoc->export("TOF_DES_TEXTS");
$tecdoc->export("TOF_COUNTRY_DESIGNATIONS");
$tecdoc->export("TOF_DESIGNATIONS");
$tecdoc->export("TOF_TYPES");
$tecdoc->export("TOF_ARTICLES");
$tecdoc->export("TOF_SUPPLIERS");
$tecdoc->export("TOF_ART_LOOKUP");
$tecdoc->export("TOF_SEARCH_TREE");
$tecdoc->export("TOF_LINK_GA_STR");
$tecdoc->export("TOF_BRANDS");
$tecdoc->exportAllGraphics();
?>
или тут:оригинальный ТекДок лежит тут: Для просмотра ссылки Войдиили Зарегистрируйся
ставится, разархивируется без проблем - проверено!
Всем привет. Может кому поможет такой вариант слива базы.
Перед тем, как нашел ошибку в дампе 2015 (уже ее залил на локалхост), много скриптов php перепробовал, каких то программуль... Нашел такие варианты, которые работали.
1. Слив базы я начинал программой RazorSQL. Нормально сливается.
- Можно каждую таблицу отдельно выгрузить или в одну.
- Создает DDL (sql запрос, на создание таблиц пустых со структурой TECDOC), кому удобно без данных создать структуру сначала. Единственное, надо сделать правки под mysql формата BINARY(...) на BITS(252) или наоборот, уже не помню.
Я не разбирался точно, но сливается почти в оригинале, с ключами и прочим.
Дальше уже править базу, самостоятельно (удалять CTM и так далее). Оптимизировать в общем.
2. Слив картинок и таблиц скриптом (php). У меня слив работал без проблем. Код можно и поправить под нужды и будет хорошо.
Я думаю таким макаром и пдф можно вытянуть. Но этим я уже не заморачивался.
Код:<?php class Tecdoc { var $db; function __construct() { $connection_str = "Driver={Transbase ODBC TECDOC CD 1_2014};Database=TECDOC_CD_1_2014@localhost"; $this->db = odbc_connect($connection_str,"tecdoc","tcd_error_0") or odbc_errormsg(); mysql_connect("localhost", "tecdoc", "1111"); mysql_select_db("tecdoc"); mysql_set_charset("utf8"); } function export($table_name) { echo "$table_name - processing... "; flush(); $query = "SELECT * FROM " . $table_name; $data = odbc_exec($this->db, $query); odbc_longreadlen($data, 10485760); while($row = odbc_fetch_array($data)) { foreach($row as $key => $value) { $keys[] = "`" . $key . "`"; $values[] = "'" . mysql_real_escape_string($value) . "'"; } $mysql_query = "INSERT INTO `" . $table_name . "` (" . implode(",", $keys) . ") VALUES (" . implode(",", $values) . ")"; mysql_query($mysql_query); //echo "$mysql_query<hr>"; set_time_limit(3600); unset($keys); unset($values); unset($row); } echo "completed!<br>"; flush(); } function exportGraphics($table_name) { echo "$table_name - exporting... "; flush(); $query = "SELECT * FROM " . $table_name; @mkdir("images/" . $table_name); $data = odbc_exec($this->db, $query); odbc_longreadlen($data, 10485760); while($row = odbc_fetch_array($data)) { if($row['GRD_ID'] != "") { $file_name_jp2 = "images/" . $table_name . "/" . $row['GRD_ID'] . ".jp2"; $file = fopen ($file_name_jp2, "w"); fputs($file, $row['GRD_GRAPHIC']); fclose($file); set_time_limit(3600); unset($row); } } echo "completed!<br>"; flush(); } function exportAllGraphics() { $result = odbc_tables($this->db); while (odbc_fetch_row($result)) { if(odbc_result($result, "TABLE_TYPE") == "TABLE") { $name = odbc_result($result, "TABLE_NAME"); if (substr($name, 0, 12) == 'TOF_GRA_DATA') if (!is_dir("images/" . $name)) $this->exportGraphics($name); } } } } $tecdoc = new Tecdoc(); $tecdoc->export("TOF_MANUFACTURERS"); $tecdoc->export("TOF_MODELS"); $tecdoc->export("TOF_DES_TEXTS"); $tecdoc->export("TOF_COUNTRY_DESIGNATIONS"); $tecdoc->export("TOF_DESIGNATIONS"); $tecdoc->export("TOF_TYPES"); $tecdoc->export("TOF_ARTICLES"); $tecdoc->export("TOF_SUPPLIERS"); $tecdoc->export("TOF_ART_LOOKUP"); $tecdoc->export("TOF_SEARCH_TREE"); $tecdoc->export("TOF_LINK_GA_STR"); $tecdoc->export("TOF_BRANDS"); $tecdoc->exportAllGraphics(); ?>
В общем так... Кто сам хочет сливать и оптимизировать.
Здравствуйте,
выгружал tecdoc как описано на этом сайте, т.е. через Access:
Для просмотра ссылки Войдиили Зарегистрируйся
Не подскажете, сколько ГБ весит у Вас TOF_ART_LOOKUP после выгрузки в Mysql и сколько времени выгружали?
И еще по картинкам: их тоже надо выгружать (если да, то какая таблица) или они лежат в папку Tecdoc (в папках искал не нашел)
И еще по базе: обрабатывали Вы ее после выгрузки через RazorSQL или через Mysql Workbench? (я новичок в этих делах)