Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / как сделать export из базы на сервере (MySql) в базу клиента (Access) / 25 сообщений из 28, страница 1 из 2
10.06.2004, 19:34
    #32557086
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
спасибо
...
Рейтинг: 0 / 0
11.06.2004, 10:42
    #32557609
Max Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
Запросом Sql. Или ты что-то другое хотел?
В принципе можно так, ну я поподробнее расскажу:
1. Открываешь Аксес.
2. Создаёшь там связанную через ODBC таблицу (связанную с SQL).
3. Пишешь нужные запросы с участием связанной (связанных) таблицы (таблиц). И запускаешь их под Аксесом.
...
Рейтинг: 0 / 0
11.06.2004, 11:35
    #32557769
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
мне нужно делать это програмно на клиенте,
т.е. у клиента есть кнопка "экспорт", по нажатию берется таблица
из базы на сервере (MySql) и ей делается экспорт в базу клиента (Access).
так можно сделать?
...
Рейтинг: 0 / 0
11.06.2004, 12:15
    #32557885
hDrummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
Наверное лучше это делать на сервере, а потом как-то передавать файл клиенту.
...
Рейтинг: 0 / 0
11.06.2004, 12:29
    #32557917
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
а ка сделать програмно на сервере?
(пишу на ASP не .Net)
...
Рейтинг: 0 / 0
11.06.2004, 12:47
    #32557979
hDrummer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
Так Мах Pro всё вроде расписал уже.

Имеем соединение на MySql - делаем выборку данных например в таблицу DataTable и пишем в файл БД Акцесса, подробнее только самому писать надо :)
...
Рейтинг: 0 / 0
11.06.2004, 13:12
    #32558053
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
да, понял.
буду пробовать.
...
Рейтинг: 0 / 0
12.06.2004, 13:28
    #32559256
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
hDrummerНаверное лучше это делать на сервере, а потом как-то передавать файл клиенту.
передавать файл клиенту какие есть возможности, кроме как послать по mail?
...
Рейтинг: 0 / 0
15.06.2004, 16:48
    #32562113
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
2hDrummer:
мне действительно интересно: передавать файл клиенту - какие есть варианты?
...
Рейтинг: 0 / 0
18.06.2004, 18:48
    #32568081
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
подскажите пожалуйста в чём разница между
accCon.ConnectionString = "D:\my.mdb" и
accCon.ConnectionString = Server.MapPath("my.mdb")
в первом случае соединение происходит с my.mdb на локальной машине,
а во втором - на сервере?
...
Рейтинг: 0 / 0
18.06.2004, 18:55
    #32568092
Max Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
стас12hDrummer:
мне действительно интересно: передавать файл клиенту - какие есть варианты?
переправь клиента на страницу:
http://server/file
...
Рейтинг: 0 / 0
18.06.2004, 19:03
    #32568106
Max Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
стас1подскажите пожалуйста в чём разница между
accCon.ConnectionString = "D:\my.mdb" и
accCon.ConnectionString = Server.MapPath("my.mdb")
в первом случае соединение происходит с my.mdb на локальной машине,
а во втором - на сервере?
Друг мой, где ты такие коннекшнстринг нашёл?
Или я что-то не понимаю?
Вот у меня такие, например:
1. Через ODBC:
zapConnectString = "PWD=" & dataPassword & ";DSN=MS Access Database;DefaultDir=" & dataPathDir & ";DriverId=25;DBQ=" & dataPath & ";MaxBufferSize=2048;FIL=MS Access;PageTimeout=5;UID=admin"
2. Через OLEDB:
zapConnectString = "Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Database Password=" & Chr(34) & dataPassword & Chr(34) & ";Data Source=" & Chr(34) & dataPath & Chr(34) & ";Mode=Share Deny None;Jet OLEDB:Engine Type=5;Provider=" & Chr(34) & "Microsoft.Jet.OLEDB.4.0" & Chr(34) & ";Jet OLEDB:System database=;Jet OLEDB:SFP=False;persist security info=False;Extended Properties=;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Create System Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;User ID=Admin;Jet OLEDB:Global Bulk Transactions=1"
...
Рейтинг: 0 / 0
18.06.2004, 19:17
    #32568126
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
факт, такой код работает:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Set accCon = Server.CreateObject("ADODB.connection")
accCon.Provider = "Microsoft.Jet.OLEDB.4.0"
accCon.ConnectionString = "D:\my.mdb"
accCon.Open	

sql = " Insert into DB_Names (DB_ID, DB_Name) values (11, 'name1') "

accCon.Execute(sql)
видимо, бОльшая часть параметров по умолчанию воспринимается правильно.
...
Рейтинг: 0 / 0
18.06.2004, 19:19
    #32568129
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
работает- в смысле Insert происходит.
...
Рейтинг: 0 / 0
18.06.2004, 19:38
    #32568144
Max Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
Так ты на 6-м Бэйсике пишешь!
Ну и чего? Работает?
Поздравляю, молодец!
...
Рейтинг: 0 / 0
18.06.2004, 21:02
    #32568177
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
чего ты сразу?..пишу на VB. наверное 6-м, раз ты говоришь.
на чём ещё пишут?
я просто последние 6 лет писал на Java и Jsp, поэтому не очень в курсе.
...
Рейтинг: 0 / 0
18.06.2004, 21:12
    #32568181
Max Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
стас1чего ты сразу?..пишу на VB. наверное 6-м, раз ты говоришь.
на чём ещё пишут?
я просто последние 6 лет писал на Java и Jsp, поэтому не очень в курсе.

Просто у меня на vb6 другая коннекшнстринг. Вот например такая:
exeConnectString = "DSN=MS Access Database;DBQ=" & dataPath & ";DefaultDir=" & dataPathDir & ";DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;PWD=" & dataPassword & ";UID=" & dataUser & ";"
или такая:
zapConnectString = "Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Database Password=""0101"";Data Source=" & Chr(34) & dataPath & Chr(34) & ";Mode=Share Deny None;Jet OLEDB:Engine Type=5;Provider=" & Chr(34) & "Microsoft.Jet.OLEDB.4.0" & Chr(34) & ";Jet OLEDB:System database=;Jet OLEDB:SFP=False;persist security info=False;Extended Properties=;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Create System Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;User ID=Admin;Jet OLEDB:Global Bulk Transactions=1"

В отличие от твоей эти монстры-строки поддерживают пароль к БД Аксесс.
Обязательно запароль свою базу, а то хлопот не оберёшься.

Ты кстати зачем от Явы отошёл?
Если не секрет
...
Рейтинг: 0 / 0
18.06.2004, 22:23
    #32568219
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
там где я 6 лет работал, мои услуги оказались больше не нужны.
а сейчас делаю проект на ASP, так захотел заказчик.
...
Рейтинг: 0 / 0
19.06.2004, 12:15
    #32568368
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
ну вот.
а ситуация такова, что надо по нажатию кнопки на клиенте делать export
3-х таблиц из базы MySql на сервере в базу Access у клиента.
поэтому вопрос:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Set accCon = Server.CreateObject("ADODB.connection")
accCon.Provider = "Microsoft.Jet.OLEDB.4.0"
accCon.ConnectionString = "D:\my.mdb"
accCon.Open	

sql = " Insert into DB_Names (DB_ID, DB_Name) values (11, 'name1') "

accCon.Execute(sql)
делает Insert в базу D:\my.mdb,
я работаю локально, через localhost, поэтому не понимаю, эта база на сервере или на клиенте?
должен ли я делать это на сервере, и потом пересылать клиентам,
или могу делать Connection непосредственно с базой на клиенте?
...
Рейтинг: 0 / 0
21.06.2004, 11:08
    #32569166
Max Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
стас1ну вот.
а ситуация такова, что надо по нажатию кнопки на клиенте делать export
3-х таблиц из базы MySql на сервере в базу Access у клиента.
поэтому вопрос:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Set accCon = Server.CreateObject("ADODB.connection")
accCon.Provider = "Microsoft.Jet.OLEDB.4.0"
accCon.ConnectionString = "D:\my.mdb"
accCon.Open	

sql = " Insert into DB_Names (DB_ID, DB_Name) values (11, 'name1') "

accCon.Execute(sql)
делает Insert в базу D:\my.mdb,
я работаю локально, через localhost, поэтому не понимаю, эта база на сервере или на клиенте?
должен ли я делать это на сервере, и потом пересылать клиентам,
или могу делать Connection непосредственно с базой на клиенте?
отвечаю по-порядку.
1. тебе надо было переходить не на vb6, а на vb.net или лучше на j#.net. Хотя если заказчик старомоден, то ничего не поделаешь - vb6 лучшее решение.
2. если бы ты делал на asp.net (cредствами vb.net или j#.net), то обновлялась бы база Аксеса на сервере. Но поскольку ты пишешь на vb6, то база Аксес обновляется на клиенте. Тебе это и надо как раз. На всякий случай всё же проверь. Но в теории так. Кстати, тут возникает неудобство, что связанную с sql сервером таблицу тебе придётся делать на каждом клиенте. Можно этого избежать. Для этого сделай два коннекшина. Первый с sql сервером, второй с Аксесом на клиенте. Далее делаешь запрос на выборку из sql сервера, сохраняешь результат в массиве (с помощью 1-го коннекшина), далее делаешь запрос на удаление всех записей из таблицы Аксеса на клиенте и кучу запросов на добавление строки в пустую таблицу из массива (с помощью второго коннекшина). К сожалению нет запроса на добавление сразу всей таблицы из массива, придётся построчно добавлять. Но поскольку этот фокус будет идти на клиенте, то очень быстро получится, можешь даже прогрессбар отобразить.
3. запрос ты привёл вроде правильный. Уточняю, что сперва надо удалить все строки из таблицы, потом запрос на добавление. Ну и не забудь, что сперва надо создать таблицу, которой у клиента нет. Для этого используй запрос на создание таблицы.

Есть ещё вариант - можешь сделать один MDB для всех, разместив его где-нибудь на серваке. Клиентам просто пропиши путь к этому файлу. Тогда у всех будет одинаково.
...
Рейтинг: 0 / 0
21.06.2004, 13:15
    #32569530
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
спасибо за подробный ответ.
1. конечно лучше было бы работать в .net, но так сложилось, что пришлось делать простой asp.
2. и 3. думаю так сделать:
каждый клиент держит у себя в одной и той же директории .mdb одинаковой структуры.
по нажатии кнопки на клиенте, делаю выборку из MySql, открываю connection с .mdb клиента, стираю всё из таблицы, и делаю в цикле insert.
так вроде должно всё хорошо быть.
...
Рейтинг: 0 / 0
21.06.2004, 13:21
    #32569544
Max Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
Если чего не получится - спрашивай.
...
Рейтинг: 0 / 0
18.07.2004, 14:19
    #32609572
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
возвращаюсь к теме.
я работал локально на localhost, такой код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Set accCon = Server.CreateObject("ADODB.connection")
accCon.Provider = "Microsoft.Jet.OLEDB.4.0"
accCon.ConnectionString = "D:\my.mdb"
accCon.Open	

sql = " Insert into DB_Names (DB_ID, DB_Name) values (11, 'name1') "

accCon.Execute(sql)
вставлял строчку в таблицу my.mdb, которая находится на моей машине.
сложил всё на сервер, теперь получаю ошибку:
Microsoft JET Database Engine error '80004005'

'D:\my.mdb' is not a valid path. Make sure that the path name is spelled correctly and that you are connected to the server on which the file resides.
значит, ищется D:\my.mdb на сервере, а мне надо на клиенте.
Как мне надо изменить ConnectionString ? спасибо.
...
Рейтинг: 0 / 0
19.07.2004, 20:32
    #32611479
Max Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
На сервере всё-таки обновляется, да?
Ну чтож, меняй коннекшнстринг:
accCon.ConnectionString = "\\Имя_Компьютера_Клиента\D\my.mdb"
Max Pro
...
Рейтинг: 0 / 0
19.07.2004, 21:26
    #32611510
стас1
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как сделать export из базы на сервере (MySql) в базу клиента (Access)
а что такое Имя_Компьютера_Клиента? IP ?
"\\111.111.111.111\D\my.mdb", так?
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / как сделать export из базы на сервере (MySql) в базу клиента (Access) / 25 сообщений из 28, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]