powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / из access в mssql
24 сообщений из 24, страница 1 из 1
из access в mssql
    #36705299
MasterWEB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, возникла необходимость импортировать три таблички из базы Access в mssql с добавлением содержимого. Тоесть появляется новая база, кладу ее в папку с программой, программа выбирает эти 3 таблички и их переносит в уже существующую базу на mssql с этими тремя таблицами.

Как это реализовать? Нужно ли загружать в datagrid'ы эти 3 таблицы перед экспортом из аксесса? и как передать все загруженное из аксесса в mssql, есть универсальные методы может какие?
Спасибо
...
Рейтинг: 0 / 0
из access в mssql
    #36705320
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterWEBЗдравствуйте, возникла необходимость импортировать три таблички из базы Access в mssql с добавлением содержимого. Тоесть появляется новая база, кладу ее в папку с программой, программа выбирает эти 3 таблички и их переносит в уже существующую базу на mssql с этими тремя таблицами.

Как это реализовать? Нужно ли загружать в datagrid'ы эти 3 таблицы перед экспортом из аксесса? и как передать все загруженное из аксесса в mssql, есть универсальные методы может какие?
Спасибо

mssql сам по себе в принципе обладает достаточно развитыми функциями импорта-экспорта
посмотрите OPENROWSET - это самое простое, если, конечно, самому серверу доступен аксессовский файл.
...
Рейтинг: 0 / 0
из access в mssql
    #36705325
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
- DTS
- bcp
- обычный визард Import/Export в MSSMS
- что-то своё, используя ADO(OLE DB providers)
- на ХП на стороне сервера, используя линковку к mdb

выбирай
...
Рейтинг: 0 / 0
из access в mssql
    #36705329
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Будет примерно так:

Код: plaintext
INSERT INTO .... SELECT * FROM OPENROWSET(....)
...
Рейтинг: 0 / 0
из access в mssql
    #36705353
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на x64 системах не будет работать провайдер Microsoft Jet 4.0 OLE DB Provider
...
Рейтинг: 0 / 0
из access в mssql
    #36705499
MasterWEB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

Скажите, а как сделать проверку
делать такое то действие, пока не будет выбрана последняя запись в datagrid

хочу попробовать добавлять построчно для каждой таблицы отдельно

Код: plaintext
1.
2.
3.
4.
5.
Adodc1.Refresh
Adodc1.Recordset.AddNew 
Adodc1.Recordset("name_po") = Combo1.Text  
Adodc1.Recordset("version") = Text1.Text
Adodc1.Recordset("primechanie") = RichTextBox1.Text
Adodc1.Recordset.Update 

нужно чтобы добавились все записи подгруженные в datagrid
...
Рейтинг: 0 / 0
из access в mssql
    #36705510
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А зачем вам датагрид?
Сканируйте Adodc1.Recordset, если вам так хочется, и перекидывайте поля из одного рекордсета в другой.
...
Рейтинг: 0 / 0
из access в mssql
    #36705515
MasterWEB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

для наглядности )
...
Рейтинг: 0 / 0
из access в mssql
    #36705521
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Do Until RS1.EOF
  RS2.AddNew
  For i= 0  to RS1.Count- 1 
    RS2(i)=RS1(i)
  Next
  RS2.Update
  RS1.MoveNext
Loop
...
Рейтинг: 0 / 0
из access в mssql
    #36705528
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
юзайте UpdateBatch с рекордсетом adLockBatchOptimistic
...
Рейтинг: 0 / 0
из access в mssql
    #36705555
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ошибочка закралась
Shocker.Pro
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Do Until RS1.EOF
  RS2.AddNew
  For i= 0  to RS1.FieldsCount- 1 
    RS2(i)=RS1(i)
  Next
  RS2.Update
  RS1.MoveNext
Loop
...
Рейтинг: 0 / 0
из access в mssql
    #36705561
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да что ж такоеShocker.Proошибочка закралась
Shocker.Pro
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Do Until RS1.EOF
  RS2.AddNew
  For i= 0  to RS1.Fields.Count- 1 
    RS2(i)=RS1(i)
  Next
  RS2.Update
  RS1.MoveNext
Loop
...
Рейтинг: 0 / 0
из access в mssql
    #36705604
MasterWEB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,
Run-time error '-2147217887 (80040e21)'
Произошли ошибки во время выполнения многошаговой операции.
Проверьте значения всех состояний.

что делать )
...
Рейтинг: 0 / 0
из access в mssql
    #36705608
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterWEBShocker.Pro,
Run-time error '-2147217887 (80040e21)'
Произошли ошибки во время выполнения многошаговой операции.
Проверьте значения всех состояний.

что делать )
Если вы воспользовались советом Кости по поводу Batch, тои мой код надо менять.
...
Рейтинг: 0 / 0
из access в mssql
    #36705612
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterWEB,

вешаться

весь код импорта сюда выкладывайте и желательно скрипт таблиц на SQL-сервере.
...
Рейтинг: 0 / 0
из access в mssql
    #36705613
MasterWEB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.ProMasterWEBShocker.Pro,
Run-time error '-2147217887 (80040e21)'
Произошли ошибки во время выполнения многошаговой операции.
Проверьте значения всех состояний.

что делать )
Если вы воспользовались советом Кости по поводу Batch, тои мой код надо менять.
нет, пользовался вашим советом
первая табличка без ошибок заполнилась, а вот вторая - нет

Id uniqueidentifier
IN nvarchar
IsR bit
Name nvarchar
NameTP nvarchar
...
Рейтинг: 0 / 0
из access в mssql
    #36705625
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterWEBпервая табличка без ошибок заполнилась, а вот вторая - нет
А рекордсеты не забыли переоткрывать?
В общем - да, весь код гоните и скрипты таблиц.
...
Рейтинг: 0 / 0
из access в mssql
    #36705630
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterWEBShocker.ProMasterWEBShocker.Pro,
Run-time error '-2147217887 (80040e21)'
Произошли ошибки во время выполнения многошаговой операции.
Проверьте значения всех состояний.

что делать )
Если вы воспользовались советом Кости по поводу Batch, тои мой код надо менять.
нет, пользовался вашим советом
первая табличка без ошибок заполнилась, а вот вторая - нет

Id uniqueidentifier
IN nvarchar
IsR bit
Name nvarchar
NameTP nvarchar

с размерностью может проблемы? Id у вас как заполняется, через триггер на вставку или сами должны задавать?
...
Рейтинг: 0 / 0
из access в mssql
    #36705704
MasterWEB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нашел ошибку... для второй таблицы неверно указал ее название %)

но тут другая ошибка:
BOF или EOF имеет значение True, либо текущая запись удалена.
Для выполняемой операции требуется текущая запись.

хотя данные нормально импортировались в mssql
...
Рейтинг: 0 / 0
из access в mssql
    #36705725
AndrF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneна x64 системах не будет работать провайдер Microsoft Jet 4.0 OLE DB Provider

Дык это... Вроде работает все...
...
Рейтинг: 0 / 0
из access в mssql
    #36705733
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterWEBно тут другая ошибка:
BOF или EOF имеет значение True, либо текущая запись удалена.
Для выполняемой операции требуется текущая запись.
будем играть в угадай мелодию? (в каком ухе у меня жужжит (с))

код давайте с указанием строки, на которой ошибка.
...
Рейтинг: 0 / 0
из access в mssql
    #36705742
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AndrFKonst_Oneна x64 системах не будет работать провайдер Microsoft Jet 4.0 OLE DB Provider

Дык это... Вроде работает все...

я про SQL-сервер на 64-разрядной системе. провайдер Jet для 64 не выпускался. правда есть какие-то решения для access 2007, там другой провайдер.
...
Рейтинг: 0 / 0
из access в mssql
    #36705773
Фотография big-duke
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneна x64 системах не будет работать провайдер Microsoft Jet 4.0 OLE DB Provider
Для Access 2010 есть x64 Microsoft Access Database Engine 2010 Redistributable .
...
Рейтинг: 0 / 0
из access в mssql
    #36705847
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
big-dukeKonst_Oneна x64 системах не будет работать провайдер Microsoft Jet 4.0 OLE DB Provider
Для Access 2010 есть x64 Microsoft Access Database Engine 2010 Redistributable .

вот, точно
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / из access в mssql
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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