|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Здравствуйте! В excel-ом файле на каждом листе "Лист1" и 'Лист2" есть по одной таблице с подключением с MDX-запросом. На "Лист3" нужно вставить таблицу с подключением с SQL-запросом к этим двум листам. Нужно сделать внешнее соединение из этих двух таблиц. Логичнее было сделать так: обойтись без первых двух листов и вставить на лист таблицу с подключением с непосредственным SQL-запросом на сервер. Но такой возможности нет. Делаю так. Данные - Из других источников- Из Microsoft Query. Но фишка в том, что синтаксис Microsoft Query не совсем такой как SQL. Более капризный. Запутался там как делать внешнее соединение Для данной задачи нужно подключаться через Microsoft Query или можно подключаться по другому (через другой провайдер)? ADO не вариант, там ограниченный SQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.05.2016, 14:41 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
В общем, сделал так В меню "Из других источников" - "С сервера SQL сервер" - выбираю любую базу данных, потом меняю свойства подключении и текст запроса. Вариант 1 В строке подключения ввел так Provider=Microsoft.ACE.OLEDB.12.0;Excel 12.0;Database=C:\Users\User\Desktop\СМ2.xlsm. Тип команды - SQL. Текст запроса Код: sql 1.
Выгрузились данные нормально. Захожу в свойства подключения и в строке подключения теперь другая запись Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source="";Mode=Share Deny None;Extended Properties="Excel 12.0;Database=C:\Users\User\Desktop\СМ2.xlsm";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Engine Type=35;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;Jet OLEDB:Support Complex Data=False Теперь вставляю такой текст простого запроса с объединением Код: sql 1. 2. 3. 4. 5. 6.
Пишет, что ошибка в From. Вроде все по синтаксису написал. Вариант 2 Если в строке подключения написать Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\User\Desktop\СМ2.xlsm;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"" .Тип команды - SQL. И текст запроса Код: sql 1.
Данные выгружаются нормально. Захожу в свойства подключения и в строке подключения теперь также другая запись как в первом варианте. Если вставить такой текст запроса Код: sql 1. 2. 3. 4. 5. 6.
Пишет также, что ошибка в From. Что не так делаю? Может надо что в строке подключения изменить? Какой вариант подключения лучше использовать? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2016, 09:00 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Доброе время суток Странно всё это. Попробуйте явно указать тип соединения INNER JOIN ferzmikkКакой вариант подключения лучше использовать?, а вот подключение лучше использовать ODBC . С OLEDB периодически возникают проблемы с блокировкой файла. При подключении запроса к самому себе, всё нормально, а вот с другими бывают проблемы. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2016, 21:12 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
anvg, вместо JOIN написал INNER JOIN - заработал. Потом FULL JOIN не работал. Использовал UNION - заработало. Похоже SQL к excel листам ограниченный. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2016, 07:20 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
anvgferzmikkКакой вариант подключения лучше использовать?, а вот подключение лучше использовать ODBC . Тут я не совсем понял. Код: xml 1. 2.
Это писать в строке подключения? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2016, 07:42 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Потом FULL JOIN не работаДля обращения к листам Excel используется движок Access, а он года с 97, в плане SQL, не развивается. Там есть только Left Join, Right Join, Inner Join Тут я не совсем понял. Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)}; DBQ=C:\MyExcel.xlsx; Это писать в строке подключения? Смотря как вы создавали подключение. В уже существующем, если не ошибаюсь, перейти с OleDb на ODBC не получится (не эксперементировал). А так да, по минимальному тексту подключения всё правильно ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2016, 09:13 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
anvgСмотря как вы создавали подключение. В уже существующем, если не ошибаюсь, перейти с OleDb на ODBC не получится (не эксперементировал). А так да, по минимальному тексту подключения всё правильно Получилось. Делал так: в меню "Из других источников" - "С сервера SQL сервер" - выбираю любую базу данных, потом меняю свойства подключении и текст запроса. Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=C:\Users\User\Desktop\СМ2.xlsm; Только потом excel изменил запись в подключении Provider=MSDASQL.1;Persist Security Info=True;Extended Properties="DBQ=C:\Users\User\Desktop\СМ2.xlsm;Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DriverId=1046;MaxBufferSize=2048;PageTimeout=5;" Тут фишка в том, что если этот файл будет открывать другой пользователь, то ему надо будет изменить строку подключения, а именно, изменить путь к файлу. Такая проблема только макросом решается, который в строке подключения меняет путь к файлу, или есть другие варианты решения? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2016, 13:06 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Обратил внимание. Если в свойствах подключении ставить тип команды "По умолчанию" или "SQL", то таблица формируется. А если ставить "Таблица", то выходит такое сообщение ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2016, 13:27 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Provider=MSDASQL.1;Увы, это слой с ODBC в OLEDB. Чтобы чистый ODBC получить делайте через MS Query, а потом точно также редактируете строку подключения. Такая проблема только макросом решается, который в строке подключения меняет путь к файлуУвы, да, макросом или "ручками". Можете, попробовать вариант с Power Query, там, используя, таблицу параметров, можно через функцию ЯЧЕЙКА("filename"; A1) в ней получить путь к файлу в котором выполняется запрос, а по нему сконструировать относительный путь к вашему файлу-источнику данных. "По умолчанию" или "SQL", то таблица формируется. А если ставить "Таблица", то выходит такое сообщение Естественно, вы же запрос помещаете. Оставьте только, например, [ИД1$], тогда будет и "Таблица" работать. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.05.2016, 17:35 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
anvgProvider=MSDASQL.1;Увы, это слой с ODBC в OLEDB. Чтобы чистый ODBC получить делайте через MS Query, а потом точно также редактируете строку подключения. DSN=Excel Files;DBQ=C:\Users\User\Desktop\СМ3.xlsm;DefaultDir=C:\Users\User\Desktop;DriverId=1046;MaxBufferSize=2048;PageTimeout=5; Тип команды - SQL, но тут неактивно поле, то есть нельзя изменить. Если в свойствах подключении нажать на "Изменить запрос", то вылезает такое сообщение. Как можно изменить запрос в конструкторе? Почему кнопка "параметры" не активна? Даже бывает не активна, когда подключаешься к кубу. Как еe сделать активной? Какую роль играет файл подключения? В интернете мало информации на тему Создание подключений к excel листам, где прописаны такие тонкие логические нюансы ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 07:39 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
ип команды - SQL, но тут неактивно поле, то есть нельзя изменить.При Odbc подключении другого и нет. А вам зачем? Я обычно для создания подключения пользуюсь такой заготовкой, а потом допиливаю подключение. Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Успехов. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.05.2016, 22:27 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
anvg, Обнаружил такую фишку. В запросе присутствует 2 параметра и записываем их как знаками "?". Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20.
Какой именно знак "?" соответствует для заданного параметра, определяется последовательность заданных параметров Set Параметр1 и Set Параметр2. Записывал в тексте параметры не как "?", а как "@Параметр1" и "@Параметр2". Но так почему то не работает. Как надо правильно записывать в тексте запроса разные параметры (без знаков вопросов)? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2016, 13:46 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Какой именно знак "?" соответствует для заданного параметра, определяется последовательность заданных параметров Set Параметр1 и Set Параметр2.По опыту использования по порядку следования. 1-ый параметр 1-ому ?, второй - второму. С другой стороны с глубокой вложенностью параметров не экспериментировал - есть ли приоритет параметра по положению в основном запросе ли или в подзапросе или главное порядковый номер ? в тексте SQL. Если установите то или другое, сообщите, пожалуйста. Именованных параметров в Access нет, увы. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2016, 16:09 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
anvgесть ли приоритет параметра по положению в основном запросе ли или в подзапросе или главное порядковый номер ? Это пример простого запроса, на самом деле будет сложным. Разные таблицы на разных листах, в запросе присутствуют подзапросы, несколько параметров. Со временем будут изменяться столбцы, добавляться еще таблицы. Хотелось бы сделать запрос мобильным, чтобы потом легко дорабатывать. Конечно здесь не такого удобного конструктора как в 1С - СКД. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2016, 19:01 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Реально ли с помощью программы SQL Server Management Studio подключиться к excel-листу? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2016, 11:58 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Подключиться не подключиться, а вот брать данные из закрытой книги вполне возможно. Using OPENROWSET to Read Excel Worksheets from SQL Server: Part 1 – How to Set Up the System , Импорт данных из Excel в SQL Server Успехов. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2016, 18:02 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Вот на двух первых листах присутствуют таблицы с подключением с MDX-запроса. На третьем листе делаю SQL-запрос к этим двум листам. Первые два листа обновляю, потом обновляю третий. После после обновления двух листов данные свежие. Потом обновляю третий лист, но данные берутся из двух листов, но которые были до обновления. Почему так происходит? Как исправить? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2016, 18:17 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Даже если менять SQL-запрос, то все равно обращается к данным до обновления ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2016, 18:23 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Как сделать корректное обновление? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2016, 12:15 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Может надо параметры подключения изменить? DBQ=C:\Users\User\Desktop\СМ3.xlsm;Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DriverId=1046;ExtendedAnsiSQL=1;MaxBufferSize=2048;PageTimeout=5;ReadOnly=1; ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2016, 15:34 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Обратил внимание на следующее. Если обновить таблицы на первых двух листах с подключением OLAP с помощью MDX-запросов, то данные обновляются корректно. Если обновить лист с SQL-запросом к этим двум листам, то отображаются данные с листов до обновления. Если обновить таблицы на первых двух листах и программно создать лист с SQL-запросом к этим двум листам, то такая же проблема. Если добавить новый лист с таблицей с подключением OLAP и также программно создать лист с SQL-запросом, то также все. Если создать новый файл с такими же таблицами, то данные свежие. Но если в этом новом файле опять обновить данные на первых двух листах, то опять такая же проблема. Почему так происходит? Как сделать так, чтобы данные можно корректно обновлять без создании новых файлов? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2016, 16:25 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
anvgДля обращения к листам Excel используется движок Access, а он года с 97, в плане SQL, не развивается. Там есть только Left Join, Right Join, Inner Join Может эту тему перенести в "Microsoft Access"? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2016, 07:30 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Доброе время суток Извиняюсь, давно не заглядывал. Могу предположить следующее. Не эксперементировал. При обновлении запрос обращается не к текущей открытой книге, а к её версии на диске. Естественно, что там изменений нет. Поэтому, скорее всего стоит написать макрос, который сначала обновляет mdx запросы, сохраняет книгу, а затем обновляет запрос к листам с результатами mdx запросов. Скорее всего в настройках подключения mdx запросов стоит включить синхронное обновление, иначе сохранение может прервать их обновление, либо каким- то образом отслеживать факт завершения обновления. По RefreshAll есть толпа обсуждений, но, правда, законченного решения проблемы нет. Всё же там можно будет, найти что-то полезное по поводу асинхронного обновления. Успехов ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2016, 09:55 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
anvgСкорее всего в настройках подключения mdx запросов стоит включить синхронное обновление, иначе сохранение может прервать их обновление Такая строка подключения Provider=MSOLAP.4;Integrated Security=SSPI;Persist Security Info=True;Initial Catalog=profit;Data Source=...;MDX Compatibility=1;Safety Options=2;MDX Missing Member Mode=Error Что тут нужно дописать? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2016, 11:43 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Да не здесь. Диалог "Свойства подключения", вкладка "Использование" сбросить галку "Фоновое обновление". Или если программно обновляете, то QueryTable.Refresh False ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2016, 13:02 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
anvgДа не здесь. Диалог "Свойства подключения", вкладка "Использование" сбросить галку "Фоновое обновление". Или если программно обновляете, то QueryTable.Refresh False Ура! Наконец то получилось. Надо было снять Фоновое обновление, обновить, сохранить и только потом обновить подключение с SQL-запросом к листам.) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2016, 14:02 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
ferzmikkanvgПотом FULL JOIN не работаДля обращения к листам Excel используется движок Access, а он года с 97, в плане SQL, не развивается. Там есть только Left Join, Right Join, Inner Join Пытаюсь использовать функцию ROW_NUMBER, не работает чего то. Может быть ограничение из за этого. Есть где нибудь список функции и возможностей , которые можно применять, а также которые не будут работать для обращении к excel листам, но предлагаются альтернативы ? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2016, 14:27 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
А когда ROW_NUMBER появился в SQL Server, если помните? а Access в смысле SQL не развивался с 97 :) Есть где нибудь список функции и возможностейКто бы его составил, раз сразу поиском не находится. По зарезервированным словам . По функциям можно посмотреть в самом Access, а можно и поискать давайте сделаю это за вас ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2016, 15:38 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
anvgКто бы его составил, раз сразу поиском не находится. По зарезервированным словам . По функциям можно посмотреть в самом Access, а можно и поискать давайте сделаю это за вас ;) Спасибо!) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2016, 21:29 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
anvgДля обращения к листам Excel используется движок Access, а он года с 97, в плане SQL, не развивается. Мне вот интересно узнать. Если это так, то на сегодняшний день наверняка есть другая наиболее оптимальная технология выгрузки данных. У меня ситуация такая. Безусловно, самый лучший вариант это выгружать данные из сервера с помощью SQL-запроса. Но не разрешают пользоваться. Есть OLAP. Если делать MDX-запросы, то запросы получаются очень большими и запутанными. А также MDX не соединяет таблицы как SQL, имеет другую логику. Поэтому делаю так: на каждый excel-лист выгружаю данные с OLAP и потом запускаю SQL-запрос с ограниченным функционалом к этим листам, соединяются таблицы как надо, расчеты разные и выводит результат на другой лист. Сам SQL-запрос очень большой. Я трачу много времени на экспериментирование, изучение тонкостей, написание запроса учетом ограничении функционала. Может для данной ситуации есть наиболее оптимальное решение? Учитывая такой логический нюанс, что разрабатываю инструмент, который формирует нужный отчет нажатием одной кнопки с помощью макросов, и запускать будут другие пользователи. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.06.2016, 10:26 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Еще учитывая такой момент, что SQL-запрос к листам сложный, там много полей, вложенности, соединений. Если вдруг заказчик скажет добавить еще несколько полей, то доработка будет сложной, запутанной и займет много времени на поиск ошибок и тестирование. Есть какая нибудь возможность или технология, которая позволяет облегчить эту процедуру? ... |
|||
:
Нравится:
Не нравится:
|
|||
04.06.2016, 12:35 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Вот с OLAP ничем помочь не могу. Даже не видел, кроме Power Pivot. Может через промежуточный SQL Express или MS SQLLocalDb? Написать там хранимую процедуру (можно и с параметрами) и её дёргать из Excel. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.06.2016, 16:17 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
У меня Microsoft Office 2007. Windows 7. Тип системы - 64. Сегодня установили Бизнес скайп. В пуске появилась папка "Средства Microsoft Office 2016". Пишет что не может загрузить драйвер. Потом восстановили. Как то странно работает. Теперь вылезает такая ошибка в экселевском файле при создании подключения к листу. Что делать? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.06.2016, 14:38 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Пытаюсь в запросе использовать временную таблицу. Пишу запрос с использованием INTO. Такая функция должна работать в Microsoft Access SQL. Код: sql 1. 2. 3. 4. 5. 6.
Запускаю. Выдает сообщение об ошибке. Здесь возможно использовать временные таблицы путем INTO или надо по другому делать? Если разрешить доступ к базе данных, в даннном случае к листу, то логически как временную таблицу можно поместить на лист, если там находятся исходные данные? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2016, 08:58 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Если написать такой запрос Код: sql 1. 2.
то выдает сообщение об ошибке. Похоже WITH для сохранения промежуточного результата запроса не поддерживается ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2016, 16:56 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
На моем локальном компьютере обновление происходит нормально. Но на другом компьютере - вылезает сообщение. Свободных гигабайтов на диске много. Возможно установлена квота (2 гигабайта). Где найти и увеличить эту квоту? И возможно ли определить размер необходимой квоты? Может быть есть смысл изменить строку подключения и указать максимальным размер базы? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2016, 11:37 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
ferzmikkСвободных гигабайтов на диске много. Возможно установлена квота (2 гигабайта). Где найти и увеличить эту квоту? И возможно ли определить размер необходимой квоты?Это ограничение ядра MS JET, посредством которого происходит работа с данными БД MS Access и/или MS Excel. Обойти его можно, храня разные таблицы в разных базах данных. Либо используя MS SQL Server - у него ограничение размера БД до 10 Тб. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2016, 11:56 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
GaryaОбойти его можно, храня разные таблицы в разных базах данных. Есть несколько листов, где на каждом листе одна таблица и запускается локальный SQL-запрос к этим листам и выводит результат на отдельный лист. Я правильно понимаю, что в данном случае, только разбить локальный SQL-запрос на два запроса с промежуточным результирующим листом? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.06.2016, 13:51 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
GaryaferzmikkСвободных гигабайтов на диске много. Возможно установлена квота (2 гигабайта). Где найти и увеличить эту квоту? И возможно ли определить размер необходимой квоты?Это ограничение ядра MS JET, посредством которого происходит работа с данными БД MS Access и/или MS Excel. Обойти его можно, храня разные таблицы в разных базах данных. Либо используя MS SQL Server - у него ограничение размера БД до 10 Тб. Если передать все расчеты на Access, то там тоже будет такое ограничение? Фишка в том, что данные выгружались по одному городу и такое ограничение вылезает. Но надо будем по всем городам. Access сможет как то обработать? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.09.2016, 12:47 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
ferzmikk, в спецификации о ссылке вроде четко сказано - ограничение размера БД именно Aсcess. если городов много, наткнетесь, не дай Бог, еще и на ограничения числа одновременных запросов, таблиц и т.п. Вам действительно нужен Access или просто ломает от мысли перевода уже сделанного на MS SQL или Oracle ? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2016, 02:11 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Bobgosferzmikk, Вам действительно нужен Access или просто ломает от мысли перевода уже сделанного на MS SQL или Oracle ? У нас есть OLAP, оттуда выгружаются разные таблицы и заталкиваются в каждый лист. Потом сложный SQL запускает. Приходится промежуточные таблицы вставлять в дополнительных листах (это случаи, когда подзапрос повторяется). Потом макросом добавлять дополнительные поля. Для такого случая excel не идеально подходит. MS SQL не продоставляют, так как будет влить на основные процессы, поэтому ищу возможные пути реализации. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2016, 12:32 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
Чтобы все города выгружать в Access я вижу такое решение: с помощью цикла выгружать по отдельному городу обрабатывать с помощью SQL. И выводит в конечную таблицу. Аналогично для остальных городов, и полученные строки добавляет в эту конечную таблицу. В итоге получится обработанная конечная таблица по всем городам. Понятно, что эту таблицу нельзя поместить в Excel целиком, тут либо по городам, либо без разбивки по SKU. Тут другой вопрос. Вот Access сможет ли выдержать такую конечную таблицу просто для хранения обработанных данных? ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2016, 11:21 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
ferzmikk, У Access ограничение на 2ГБ если помню верно (по количеству объектов/таблиц и пр. - 32К) , да и в Excel есть Power Pivot модель (VertiPaq DB на ColumnStore) с достаточно удобными дополнительными функциями, там-же можно успешно работать с диаграмами модели/базы и соединять ключами разные запросы (SQL и MDX) на миллионы строк ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2016, 15:16 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
кстати в твоём случае для работы на SQL достаточно минимальных прав хотя-бы на TempDB, главное чтобы там дрова нужные стояли (вроде ACE) и OpenQuery/OpenRowSet были разрешены.. тогда сможешь использовать обычный T-SQL в Temp пространстве для работы со всеми внешними запросами, ну и Join-ить как вздумается SQL с MDX результатами.. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2016, 15:23 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
vikkivкстати в твоём случае для работы на SQL достаточно минимальных прав хотя-бы на TempDB, главное чтобы там дрова нужные стояли (вроде ACE) и OpenQuery/OpenRowSet были разрешены.. тогда сможешь использовать обычный T-SQL в Temp пространстве для работы со всеми внешними запросами, ну и Join-ить как вздумается SQL с MDX результатами.. Там есть такая возможность настроить, чтобы запущенные нужные запросы на сервере не сильно тормозили основные главные процессы? Получается надо будет предоставить некоторым пользователям эти права, кто будет запускать такой запрос. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2016, 17:36 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
ferzmikk, 1) можно 2) зависит от конфигурации, есть как минимум например guest/public ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2016, 21:02 |
|
Подключение к excel-листам
|
|||
---|---|---|---|
#18+
vikkivкстати в твоём случае для работы на SQL достаточно минимальных прав хотя-бы на TempDB, главное чтобы там дрова нужные стояли (вроде ACE) и OpenQuery/OpenRowSet были разрешены.. тогда сможешь использовать обычный T-SQL в Temp пространстве для работы со всеми внешними запросами, ну и Join-ить как вздумается SQL с MDX результатами.. Тут вместо TempDB можно использовать Табличную переменную? Или у TempDB больше возможностей? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2016, 07:40 |
|
|
start [/forum/topic.php?all=1&fid=61&tid=2172918]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
110ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
68ms |
get tp. blocked users: |
1ms |
others: | 11ms |
total: | 236ms |
0 / 0 |