Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 Создать запрос на импорт таблицы  [new]
BlackeAngel
Member

Откуда:
Сообщений: 395
Как создать запрос, чтобы скопировать таблицу из одной в базы в другую?
Select into что то не захотел этого делать? А через перебор recordset что то ломает меня терять производительность.
5 дек 17, 19:53    [21008636]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
BlackeAngel
Member

Откуда:
Сообщений: 395
Забыл дописать, что это надо на vba
5 дек 17, 20:03    [21008649]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
Панург
Member

Откуда: настоящему индейцу завсегда везде ништяк
Сообщений: 3329
BlackeAngel, TransferDatabase
5 дек 17, 20:19    [21008679]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
BlackeAngel
Member

Откуда:
Сообщений: 395
Панург,
Разрешен только запрос с сервера. Надо именно запрос сохранить в новую таблицу новой базы.
Запрос выглядит примерно так
Ask = "SELECT [Oboznach],[izm],[Count_page], COUNT(*) as КоличествоЗаписей " _
    & "FROM [db_pdm_ScanKD].[dbo].[pdm_vwScanKD] " _
    & "Where Not ([Oboznach] Like '%ТУ' or [Oboznach] Like '%ИМ' or [Oboznach] Like '%ДИ' or [Oboznach] Like '%РР' or [Oboznach] Like '%РИ' or [Oboznach] Like '%УД' or [Oboznach] Like '%ЛУ' or [Oboznach] Like '%ТБ' or [Oboznach] Like '%Э3' or [Oboznach] Like '%ПЭ3' or [Oboznach] Like '%Д7' or [Oboznach] Like '%К3' or [Oboznach] Like '%Д4' or [Oboznach] Like '%ДП' or [Oboznach] Like '%РИ' or [Oboznach] Like '%ПГ3' or [Oboznach] Like '%ПГ4' or [Oboznach] Like '%Г4' or [Oboznach] Like '%ПГ3' or [Oboznach] Like '%Э4' or [Oboznach] Like '%ТЭ4' or [Oboznach] Like '%ПИ' or [Oboznach] Like '%И2') " _
    & " GROUP BY [Oboznach],[izm],[Count_page]"

И вот этот запрос надрывно таблицу сохранить.
5 дек 17, 20:35    [21008710]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
BlackeAngel
Member

Откуда:
Сообщений: 395
И база в ado
5 дек 17, 20:37    [21008715]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 3849
Не понял два момента.
1. При чём тут запрос с сервера? Ведь мы говорим об Access?
2. При чём тут ADO? В Access базы бывают в формате MDB и ACCDB. А как к ним обращаться, при помощи DAO или ADO - это вопрос предпочтений.
6 дек 17, 12:09    [21010368]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
BlackeAngel
Member

Откуда:
Сообщений: 395
Joss,
1. Потому что надо из базы на сервере запросом поместить отобранную часть данных в базу на ПК в аксесс. Просто перебор recordset не рассматриваю, тк это очень долгий процесс...
2. ну я это и имел в виду...
6 дек 17, 12:14    [21010380]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
BlackeAngel
Member

Откуда:
Сообщений: 395
Не на сервере, а с сервера... Описочка...
6 дек 17, 12:17    [21010387]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 3849
BlackeAngel
Не на сервере, а с сервера... Описочка...
А какая в принципе разница?
6 дек 17, 12:25    [21010416]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
BlackeAngel
Member

Откуда:
Сообщений: 395
Joss,
Ну как минимум в том что все действия выполнится на локальном ПК, а не на сервере
6 дек 17, 12:26    [21010422]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 3849
BlackeAngel
Joss,
Ну как минимум в том что все действия выполнится на локальном ПК, а не на сервере
Опять же - какая разница? Только пути прописываешь другие. А Access всё равно.

А чем тебе предложение __Michelle не нравится

Tarasios
Сама загрузка таблицы из внешнего файла выполняется, как было сказано __Michelle командой

DoCmd.TransferDatabase acImport, "Microsoft Access", NameFiles, acTable, "ТаблицаВФайле", "ТаблицаВФайлеПришло", False.
6 дек 17, 12:37    [21010454]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
BlackeAngel
Member

Откуда:
Сообщений: 395
Joss,
К сожалению у меня нет жёстких путей к данным на сервере.
6 дек 17, 12:41    [21010469]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 3849
BlackeAngel
Joss,
К сожалению у меня нет жёстких путей к данным на сервере.
Задавай их динамически. Я не понял, символьную строку собрать не получается?
6 дек 17, 12:45    [21010486]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
BlackeAngel
Member

Откуда:
Сообщений: 395
Joss,
Ага, вот эту портянку
ConnectionString = "Provider=SQLOLEDB.1;Password=1qaz@WSX;Persist Security Info=True;User ID=User_for_macros_PDM;Initial Catalog=db_pdm_ScanKD;Data Source=RTVS-SQL05" 'Строка подключения
Ask = "SELECT [Oboznach],[izm],[Count_page], COUNT(*) as КоличествоЗаписей " _
    & "FROM [db_pdm_ScanKD].[dbo].[pdm_vwScanKD] " _
    & "Where Not ([Oboznach] Like '%ТУ' or [Oboznach] Like '%ИМ' or [Oboznach] Like '%ДИ' or [Oboznach] Like '%РР' or [Oboznach] Like '%РИ' or [Oboznach] Like '%УД' or [Oboznach] Like '%ЛУ' or [Oboznach] Like '%ТБ' or [Oboznach] Like '%Э3' or [Oboznach] Like '%ПЭ3' or [Oboznach] Like '%Д7' or [Oboznach] Like '%К3' or [Oboznach] Like '%Д4' or [Oboznach] Like '%ДП' or [Oboznach] Like '%РИ' or [Oboznach] Like '%ПГ3' or [Oboznach] Like '%ПГ4' or [Oboznach] Like '%Г4' or [Oboznach] Like '%ПГ3' or [Oboznach] Like '%Э4' or [Oboznach] Like '%ТЭ4' or [Oboznach] Like '%ПИ' or [Oboznach] Like '%И2') " _
    & " GROUP BY [Oboznach],[izm],[Count_page]"

К примерно такому виду
sSQL = "SELECT [Обозначение] INTO list FROM [Excel 12.0;HDR=YES;IMEX=1;DATABASE=" & ActiveWorkbook.FullName & "].[" & ActiveSheet.Name & "$]"

Не знаю как привести. Чтоб одним запросом сразу вытаскивал и то что мне надо и в таблицу на ПК записывал.
6 дек 17, 12:49    [21010506]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
непоймучка
Guest
BlackeAngel
Joss,
Ага, вот эту портянку
ConnectionString = "Provider=SQLOLEDB.1;Password=1qaz@WSX;Persist Security Info=True;User ID=User_for_macros_PDM;Initial Catalog=db_pdm_ScanKD;Data Source=RTVS-SQL05" 'Строка подключения
Ask = "SELECT [Oboznach],[izm],[Count_page], COUNT(*) as КоличествоЗаписей " _
    & "FROM [db_pdm_ScanKD].[dbo].[pdm_vwScanKD] " _
    & "Where Not ([Oboznach] Like '%ТУ' or [Oboznach] Like '%ИМ' or [Oboznach] Like '%ДИ' or [Oboznach] Like '%РР' or [Oboznach] Like '%РИ' or [Oboznach] Like '%УД' or [Oboznach] Like '%ЛУ' or [Oboznach] Like '%ТБ' or [Oboznach] Like '%Э3' or [Oboznach] Like '%ПЭ3' or [Oboznach] Like '%Д7' or [Oboznach] Like '%К3' or [Oboznach] Like '%Д4' or [Oboznach] Like '%ДП' or [Oboznach] Like '%РИ' or [Oboznach] Like '%ПГ3' or [Oboznach] Like '%ПГ4' or [Oboznach] Like '%Г4' or [Oboznach] Like '%ПГ3' or [Oboznach] Like '%Э4' or [Oboznach] Like '%ТЭ4' or [Oboznach] Like '%ПИ' or [Oboznach] Like '%И2') " _
    & " GROUP BY [Oboznach],[izm],[Count_page]"

К примерно такому виду
sSQL = "SELECT [Обозначение] INTO list FROM [Excel 12.0;HDR=YES;IMEX=1;DATABASE=" & ActiveWorkbook.FullName & "].[" & ActiveSheet.Name & "$]"

Не знаю как привести. Чтоб одним запросом сразу вытаскивал и то что мне надо и в таблицу на ПК записывал.

например
'создаем сохраненный запрос к серверу
Dim qdef as DAO.QueryDef: Set qdef = CurrentDB.CreateQueryDef("Ask",Ask)
qdef.Connect = ConnectionString

'выполняем запрос на создание новой таблицы с записями, которые вернет созданный запрос
CurrentDB.Execute "SELECT * INTO НоваяТаблица From Ask"
6 дек 17, 13:26    [21010692]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
BlackeAngel
Member

Откуда:
Сообщений: 395
непоймучка,
Set conn = New ADODB.Connection
conn.ConnectionString = "Provider=SQLOLEDB.1;Password=1qaz@WSX;Persist Security Info=True;User ID=User_for_macros_PDM;Initial Catalog=db_pdm_ScanKD;Data Source=RTVS-SQL05" 'Строка подключения
    conn.Open
    Ask = "SELECT [Oboznach],[izm],[Count_page], COUNT(*) as КоличествоЗаписей " _
    & "FROM [db_pdm_ScanKD].[dbo].[pdm_vwScanKD] " _
    & "Where Not ([Oboznach] Like '%ТУ' or [Oboznach] Like '%ИМ' or [Oboznach] Like '%ДИ' or [Oboznach] Like '%РР' or [Oboznach] Like '%РИ' or [Oboznach] Like '%УД' or [Oboznach] Like '%ЛУ' or [Oboznach] Like '%ТБ' or [Oboznach] Like '%Э3' or [Oboznach] Like '%ПЭ3' or [Oboznach] Like '%Д7' or [Oboznach] Like '%К3' or [Oboznach] Like '%Д4' or [Oboznach] Like '%ДП' or [Oboznach] Like '%РИ' or [Oboznach] Like '%ПГ3' or [Oboznach] Like '%ПГ4' or [Oboznach] Like '%Г4' or [Oboznach] Like '%ПГ3' or [Oboznach] Like '%Э4' or [Oboznach] Like '%ТЭ4' or [Oboznach] Like '%ПИ' or [Oboznach] Like '%И2') " _
    '& " GROUP BY [Oboznach],[izm],[Count_page]"
conn.Execute "SELECT * INTO НоваяТаблица From Ask"
    conn.Closes

Что не так?
6 дек 17, 13:40    [21010761]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
BlackeAngel
Member

Откуда:
Сообщений: 395
'база на ПК
dbConnectStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ActiveWorkbook.FullName & ".mdb" & ";"
Set cnt = New ADODB.Connection
cnt.Open dbConnectStr

Set conn = New ADODB.Connection
conn.ConnectionString = "Provider=SQLOLEDB.1;Password=1qaz@WSX;Persist Security Info=True;User ID=User_for_macros_PDM;Initial Catalog=db_pdm_ScanKD;Data Source=RTVS-SQL05" 'Строка подключения
    conn.Open
    Ask = "SELECT [Oboznach],[izm],[Count_page], COUNT(*) as КоличествоЗаписей " _
    & "FROM [db_pdm_ScanKD].[dbo].[pdm_vwScanKD] " _
    & "Where Not ([Oboznach] Like '%ТУ' or [Oboznach] Like '%ИМ' or [Oboznach] Like '%ДИ' or [Oboznach] Like '%РР' or [Oboznach] Like '%РИ' or [Oboznach] Like '%УД' or [Oboznach] Like '%ЛУ' or [Oboznach] Like '%ТБ' or [Oboznach] Like '%Э3' or [Oboznach] Like '%ПЭ3' or [Oboznach] Like '%Д7' or [Oboznach] Like '%К3' or [Oboznach] Like '%Д4' or [Oboznach] Like '%ДП' or [Oboznach] Like '%РИ' or [Oboznach] Like '%ПГ3' or [Oboznach] Like '%ПГ4' or [Oboznach] Like '%Г4' or [Oboznach] Like '%ПГ3' or [Oboznach] Like '%Э4' or [Oboznach] Like '%ТЭ4' or [Oboznach] Like '%ПИ' or [Oboznach] Like '%И2') " _
    '& " GROUP BY [Oboznach],[izm],[Count_page]"
cnt.Execute "SELECT * INTO НоваяТаблица From Ask"
 conn.Closes
cnt.Closes

Что не так?
6 дек 17, 13:45    [21010787]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
Панург
Member

Откуда: настоящему индейцу завсегда везде ништяк
Сообщений: 3329
BlackeAngel
'база на ПК...

Что не так?
Да всё! Сравни своё и, например, 21010692
Или напиши, хотя бы
...
cnt.Execute "SELECT * INTO [НоваяТаблица] From (" & Ask & ") Ask"
...
6 дек 17, 15:39    [21011443]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
Панург
Member

Откуда: настоящему индейцу завсегда везде ништяк
Сообщений: 3329
Joss
А чем тебе предложение __Michelle не нравится
А что _Michelle предложила?
6 дек 17, 15:44    [21011490]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
BlackeAngel
Member

Откуда:
Сообщений: 395
Панург,
Синтаксическая ошибка FROM
Опять что то не то..
6 дек 17, 15:46    [21011506]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
Joss
Member

Откуда: г. Минск
Сообщений: 3849
Панург
Joss
А чем тебе предложение __Michelle не нравится
А что _Michelle предложила?
А там в сообщении ниже Tarasios цитировал __Mishelle

Чёрный Ангел, а где, хоть одним словом ты упоминал, что вытаскиваешь таблицы из MS SQL Server? Или мы гадать должны? Provider=SQLOLEDB.1 насколько я помню, это вроде подключение к MS SQL Server?
6 дек 17, 15:56    [21011567]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
BlackeAngel
Member

Откуда:
Сообщений: 395
Joss, ну как бы я ни разу писал слово "сервер", думал понятно будет... Простите, что недостаточно информативно...
6 дек 17, 16:00    [21011597]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
Панург
Member

Откуда: настоящему индейцу завсегда везде ништяк
Сообщений: 3329
BlackeAngel
Панург,
Синтаксическая ошибка FROM
Опять что то не то..
Ну прилинкуй таблицу с помощью DAO или ADO и выполни запрос.
6 дек 17, 16:38    [21011792]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
Панург
Member

Откуда: настоящему индейцу завсегда везде ништяк
Сообщений: 3329
Joss, осталось спросить где пост Tarasios
Не проще в данном случае сослаться на Help Access? Тем более откровений в цитате нет.
6 дек 17, 16:40    [21011796]     Ответить | Цитировать Сообщить модератору
 Re: Создать запрос на импорт таблицы  [new]
Панург
Member

Откуда: настоящему индейцу завсегда везде ништяк
Сообщений: 3329
BlackeAngel, то, что ты написал, только курсором пробежать.
6 дек 17, 16:41    [21011806]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / Microsoft Access Ответить