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

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

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

Регистрация: Jun 2002
Адрес: Москва
Сообщений: 20
По умолчанию MS ACCESS -> MySQL

Как перегнать данные из АКСЕССА в мускль???
CSV, XML, OBDC не предлагать - всё кроме последнего очень непроизводительно. Последнее неустраивает: мне надо одну базу аксеса разбить на две......
Возможно макрос или что-то подобное?
__________________
"Ну и запросы у Вас" - сказал база данных и повисла

Старый 10.06.2002, 20:30
Gandalf вне форума Посмотреть профиль Отправить личное сообщение для Gandalf Найти все сообщения от Gandalf
  № 2  
Gandalf

Регистрация: Jul 2000
Адрес: Kitchener/Canada
Сообщений: 114
Отправить сообщение для Gandalf с помощью ICQ
если разбить надо по какой-то определённой зависимости (например по значению одного из полей) то берёшь перл OBDC -> берёшь инфу из Accesa
Код:
$DSN = "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=$database;UID=;PWD=;";	#
$db = new Win32::ODBC($DSN);									#
	$db->Sql("SELECT * FROM $table WHERE model = '$model'");					# connectiong to database and looking for row $model
		if ($db->Error()){&ferr($db->Error()); exit 0;}						# ERROR check for the connection
		$db->FetchRow();									# selectiong row
		%data = $db->DataHash();								# writing whole thing to hash
		$brand=$data{'brand'};								# begin assign values

############################################################################
	$db->Close();
и пихай её в базу на серваке .......
или я что то не понял ?!
__________________
always confused

Старый 10.06.2002, 20:43
metton вне форума Посмотреть профиль Отправить личное сообщение для metton Посетить домашнюю страницу metton Найти все сообщения от metton
  № 3  
metton
"simple"
 
Аватар для metton

Регистрация: Feb 2002
Адрес: Россия, Москва
Сообщений: 1,155
Отправить сообщение для metton с помощью ICQ
2CrazyAlieN
на www.download.ru
есть прога для перегона из ACCESS в MySQL

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

Регистрация: Jun 2002
Адрес: Москва
Сообщений: 20
Gandalf
Типа а этот модуль в дистрибутиве перла поставляется?
Если нет то скажи как его поставить ...
__________________
"Ну и запросы у Вас" - сказал база данных и повисла

Старый 11.06.2002, 13:20
CrazyAlieN вне форума Посмотреть профиль Отправить личное сообщение для CrazyAlieN Найти все сообщения от CrazyAlieN
  № 5  
CrazyAlieN
 
Аватар для CrazyAlieN

Регистрация: Jun 2002
Адрес: Москва
Сообщений: 20
По умолчанию 2Gandalf

Распиши плиз для тугодумов поподробнее:
Есть файл blabla.mdb
В Файле три таблицы table1 table2 table3
Вот как мне выдирать эти данные.....

ЗЫ: а будет ли работать модуль WIN32::ODBC под линуском?
__________________
"Ну и запросы у Вас" - сказал база данных и повисла

Старый 11.06.2002, 15:55
CrazyAlieN вне форума Посмотреть профиль Отправить личное сообщение для CrazyAlieN Найти все сообщения от CrazyAlieN
  № 6  
CrazyAlieN
 
Аватар для CrazyAlieN

Регистрация: Jun 2002
Адрес: Москва
Сообщений: 20
Ну в общем эскпорт почти получился:
PHP код:
$database "db1.mdb";
$DSN "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=$database;UID=;PWD=;";
$db = new Win32::ODBC($DSN);
$sql "SELECT Books.* FROM Books Where CodOfBook>0";
$db->Sql($sql);
open(D,">text.txt");
while(
$db->FetchRow())
   {
   
undef %data;
   %
data $db->DataHash();
   
#присваивание переменных
   
++lines;
   }
print 
$lines
Результат вывода: 10492
При включении сортировки 10370
Хотя в базе их 50284
__________________
"Ну и запросы у Вас" - сказал база данных и повисла


Последний раз редактировалось CrazyAlieN; 11.06.2002 в 15:58.
Старый 11.06.2002, 19:14
Gandalf вне форума Посмотреть профиль Отправить личное сообщение для Gandalf Найти все сообщения от Gandalf
  № 7  
Gandalf

Регистрация: Jul 2000
Адрес: Kitchener/Canada
Сообщений: 114
Отправить сообщение для Gandalf с помощью ICQ
Типа а этот модуль в дистрибутиве перла поставляется?
Да

Код:
$database = "$fullpath/db.mdb";
use Win32::ODBC;	
$DSN = "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=$database;UID=;PWD=;";	#
$db = new Win32::ODBC($DSN);									#
	$db->Sql("SELECT * FROM $table ORDER BY count");						# connectiong to database
	if ($db->Error()){&ferr($db->Error()); exit 0;}							# ERROR check
	while ($db->FetchRow()) {								# selectiong each row in table $table
		my (%data) = $db->DataHash();						# Hash with all the values of curent row (field name is a name of the key and value is a value)
		$models[$i]="$data{'model'}";						# assign values
		$images[$i]="<img src=$URL/images/$table/$data{'pathway'}"."_s.jpg width=60 height=60 border='0'>";
		$brands[$i]="$data{'brand'}";						# 
		$type[$i]="$data{'front_d'}";						# end assign values
		$price55[$i]="$data{'price55'}";						# end assign values
		$i++;									# counter for arrays
	}											# 
	$db->Close();
__________________
always confused


Последний раз редактировалось Gandalf; 11.06.2002 в 19:17.
Старый 11.06.2002, 19:15
CrazyAlieN вне форума Посмотреть профиль Отправить личное сообщение для CrazyAlieN Найти все сообщения от CrazyAlieN
  № 8  
CrazyAlieN
 
Аватар для CrazyAlieN

Регистрация: Jun 2002
Адрес: Москва
Сообщений: 20
Цитата:
Оригинал написал(а) Gandalf
Типа а этот модуль в дистрибутиве перла поставляется?
Да

Код:
$database = "$fullpath/db.mdb";
use Win32::ODBC;	
$DSN = "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=$database;UID=;PWD=;";	#
$db = new Win32::ODBC($DSN);									#
Да в вобщем-то у меня всё заработало только криво: записи теряет
__________________
"Ну и запросы у Вас" - сказал база данных и повисла

Старый 11.06.2002, 19:18
Gandalf вне форума Посмотреть профиль Отправить личное сообщение для Gandalf Найти все сообщения от Gandalf
  № 9  
Gandalf

Регистрация: Jul 2000
Адрес: Kitchener/Canada
Сообщений: 114
Отправить сообщение для Gandalf с помощью ICQ
Цитата:
Оригинал написал(а) CrazyAlieN


Да в вобщем-то у меня всё заработало только криво: записи теряет
это я не ту кнопку нажал , вместо предпросмотр нажал пост
см.выше


записи теряет я использую код выше , не теряет ( у меня ) но у меня ДБ маленькая , совсем маленькая
__________________
always confused


Последний раз редактировалось Gandalf; 11.06.2002 в 19:23.
Старый 11.06.2002, 21:05
CrazyAlieN вне форума Посмотреть профиль Отправить личное сообщение для CrazyAlieN Найти все сообщения от CrazyAlieN
  № 10  
CrazyAlieN
 
Аватар для CrazyAlieN

Регистрация: Jun 2002
Адрес: Москва
Сообщений: 20
Может я что не понимаю
но какая у нас разница в коде?
вот мой код полностью:
PHP код:
$database "db1.mdb";
$DSN "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=$database;UID=;PWD=;";    #
$db = new Win32::ODBC($DSN);
while(
$i<5000000){
$total=0;
$i+=500;
$h=$i-500;
$sql "SELECT Books.* FROM Books where CodOfBook<$i and CodOfBook>=$h";
$db->Sql($sql);
while(
$db->FetchRow())
   {
   
undef %data;
   %
data $db->DataHash();
   
// всякая ботва
   
}

В общем изли изменять число 500 (есено в двух строках), то строчек теряется меньше но тормозить начинает страшно
В общем при числе 500 у меня теряется около 2500 записей (всего 50000 с копейками)
__________________
"Ну и запросы у Вас" - сказал база данных и повисла

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

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

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


 


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


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