Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Access - SQL Server удаленный доступ
 
 автор: dmsrv803   (22.08.2012 в 11:48)   личное сообщение
 
 

Есть ПО на аксе, которое юзает скулевскую базу по локалке. Мне нужно это ПО поставить юзерам, которые не подсоединены к наше сети, т.е. коннект должен быть выполнен через инет. Для доступа к данным в по используется ADO. В идеале, хотелось бы ограничиться изменением строки подключения к базе. Возможно ли это и как должна в этом случае выглядеть строка подключения?

  Ответить  
 
 автор: snipe   (22.08.2012 в 12:02)   личное сообщение
 
 

Давка где-то потерялся
он может

  Ответить  
 
 автор: kot_k_k   (22.08.2012 в 12:25)   личное сообщение
 
 

http://www.sql.ru/forum/actualthread.aspx?tid=676780

это не поможет гиганту мысли

  Ответить  
 
 автор: dmsrv803   (22.08.2012 в 12:32)   личное сообщение
 
 

я конечно извиняюсь, но этот ресурс по соображениям безопасности для меня недоступен.
а никак нельзя перепостить?

  Ответить  
 
 автор: kot_k_k   (22.08.2012 в 12:34)   личное сообщение
 
 

Здравствуйте.
Подскажите, как привязать в Access таблицу с SQL, если он (SQL-сервер) находится в интернете?
Какой должна быть строка подключения?
2 июл 09, 13:01 [7367952] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Rivkin Dmitry
Member

Откуда: Israel
Сообщений: 4452
Создай в любом месте файл с расширением udl и запусти его. Выбери провайдера и заполни все необходимые для провайдера поля. Выполни тест подключения. Добейся подключения. Закрой файл и открой его на редактирование. Увидишь в нем твою строку подключения
2 июл 09, 13:39 [7368239] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Диам
Member

Откуда: Антикапча на VBA http://ag-vba.ucoz.ru
Сообщений: 847
Где указывать IP машины, на которой установлен сервак?

Rivkin Dmitry, вы сами так подключали таблицы к акцессу?
2 июл 09, 14:53 [7368748] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Rivkin Dmitry
Member

Откуда: Israel
Сообщений: 4452
Диам
Где указывать IP машины, на которой установлен сервак?

Rivkin Dmitry, вы сами так подключали таблицы к акцессу?

Конечно. Не только к Аксу - стринг универсальный. IP записывай вместо дата-соурс
2 июл 09, 15:03 [7368847] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Диам
Member

Откуда: Антикапча на VBA http://ag-vba.ucoz.ru
Сообщений: 847
вот я создаю связь с таблицей:
Set tdf = CurrentDb.CreateTableDef
tdf.Connect = "приведите тут, пожалуйста, свою строку подключения в качестве примера, если не трудно"
tdf.SourceTableName = "Plan_IC"
tdf.NAME = "_Prob"
tdfs.Append tdf
tdfs.Refresh
2 июл 09, 15:38 [7369203] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Rivkin Dmitry
Member

Откуда: Israel
Сообщений: 4452
Диам,
У тебя какой Акс? Если ты собираешься работать через DAO, то тебе дорога подключаться через ODBC. Я б ыл уверен, что тебе надо подключение ADO. Вот через ODBC я не пробовал подключаться через IP. Но если ты подключишься, то стринг подключения можно будет увидеть в проперти таблицы. Но сначала строишь DSN: Control Panel\Administrative Tools\Data Sources (ODBC)
User DSN -> Add -> SQL Server -> Name <любое имя> Description <любое имя> Server = IP -> подсоеденяешься к серверу, выбираешь БД, тестируешь подключение, сохраняешь
В Аксе -> File -> Get External Data -> Link Tables. Files of Type -> ODBC Databases -> выбираешь твой созданный DSN и любую таблицу из списка. Открываешь затем таблицу в дизайне (не обращая внисания на угрозы Акса) и в пропертях читаешь твой стринг подключения
2 июл 09, 16:28 [7369602] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Диам
Member

Откуда: Антикапча на VBA http://ag-vba.ucoz.ru
Сообщений: 847
У меня 2003. С последующим портированием на 2007. Использую DAO. Кстати, попутный вопрос - можно ли в Акс2003 присоединять таблицы через ADO, чтобы они были видны в списке всех таблиц?
2 июл 09, 20:53 [7370717] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Диам
Member

Откуда: Антикапча на VBA http://ag-vba.ucoz.ru
Сообщений: 847
Rivkin Dmitry,
приведите, пожалуйста, свою строку подключения в качестве примера, пусть даже для ADO
3 июл 09, 10:47 [7372042] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Диам
Member

Откуда: Антикапча на VBA http://ag-vba.ucoz.ru
Сообщений: 847
В Акцессе установил библиотеку msado27.tlb.
На соседнем компе поднял SQL SERVER 2005. Разрешил использование TCP/IP (порт 49152), Проверку подлиности разрешил Windows и SQL.
Пишу следующий код в аксесе:
Dim Con As New ADODB.Connection
Con.Open "Provider=SQLOLEDB.1;Password=123;Persist Security Info=True;User ID=user1;Data Source=tcp:192.168.69.12,49152"

Ругается: [DBNETLIB][Connection Open (Connect()).] SQL сервер не существует, или отстутствует доступ

Что неправильно?
3 июл 09, 14:59 [7373916] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Guest33
Member

Откуда:
Сообщений: 2008
Вот так, например, работает (для локалки):
Con.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=true;Data Source=192.168.0.157,1433;Network Library=DBMSSOCN;Initial Catalog=foliobase;"

Комбинация сведений из connectionstrings.com и метода Rivkin Dmitry
3 июл 09, 16:00 [7374448] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Guest33
Member

Откуда:
Сообщений: 2008
Или так
Con.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=false;User ID=sa;Data Source=192.168.0.157,1433;Network Library=DBMSSOCN;Initial Catalog=foliobase;"
3 июл 09, 16:05 [7374503] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Диам
Member

Откуда: Антикапча на VBA http://ag-vba.ucoz.ru
Сообщений: 847
Guest33,
лично у вас работает такой метод? У меня нет, хотя локальная машина пингуется и telnet показывает, что порт у данного IP открыт.
6 июл 09, 08:42 [7378916] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Guest33
Member

Откуда:
Сообщений: 2008
Если бы не работал, я бы данный код не приводил. А SQL сервер на ваш порт (порт 49152) настроен?
6 июл 09, 09:53 [7379086] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Диам
Member

Откуда: Антикапча на VBA http://ag-vba.ucoz.ru
Сообщений: 847
Спасибо, получилось через эту строку подключиться к серверу.
Подключился через ADO, и подключил таблицы с сервера через DAO.
Подключение делал в локальной сети, осталось попробовать связь через интернет.

Ссылка, которая помогла настроить SQL сервер - http://www.intuit.ru/department/database/optmssqlserv2005/5/
6 июл 09, 10:51 [7379340] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Диам
Member

Откуда: Антикапча на VBA http://ag-vba.ucoz.ru
Сообщений: 847
для истории и себя сохраню тут строки подключения:
для ADO
Con.Open "Provider=SQLOLEDB.1;Password=123;Persist Security Info=true;" _
&"User ID=user1;Data Source=192.168.64.122,1433;Network Library=DBMSSOCN;" _
&"Initial Catalog=ReportServerTempDB;"

для DAO
tdf.Connect = "ODBC;DRIVER=SQL Server;SERVER=192.168.64.122,1433;" _
&"UID=user1;Pwd=123;APP=Microsoft® Access;WSID=OIT-DIAM;DATABASE=ReportServerTempDB;"

вместо 192.168.64.122 можно ставить DNS, например ddd.dnsalias.com
22 сен 09, 10:58 [7690867] Ответить | Цитировать Сообщить модератору
Re: подключить SQL-таблицу через Internet
Ridddick
Member

Откуда:
Сообщений: 196
Народ, а можно как-то подключиться к базе, указав путь к файлу *.udl? Чтобы в VBA можно было пользоваться конструкцией типа:

Dim Conn_Str, Query as string
Con_Str = "C:\Connect.udl"
Query = "SELECT * FROM [Con_Str].Table"

  Ответить  
 
 автор: kot_k_k   (22.08.2012 в 12:35)   личное сообщение
15 Кб.
 
 

тоже только в более виде

  Ответить  
 
 автор: snipe   (22.08.2012 в 12:36)   личное сообщение
 
 

а че они не пишут что бд sql надо для доступа открыть
и ip надо тот что в инете видится

  Ответить  
 
 автор: kot_k_k   (22.08.2012 в 13:11)   личное сообщение
 
 

это ты у мну спрашиваешь

  Ответить  
 
 автор: dmsrv803   (22.08.2012 в 13:50)   личное сообщение
 
 

спасибо за инфу - буду юзать. но пока что-то не коннектится.

  Ответить  
 
 автор: osmor   (22.08.2012 в 17:03)   личное сообщение
 
 

ms sql server должен быть доступен той машине с которой вы собираетесь коннектиться.
Если машины находится за фаерволом нужно открыть порт по которым работает ms sql server (вопрос к админам)

ниже найдете нужную строку строка соединения зависит от версии sql server
http://www.connectionstrings.com/
обычно так

Provider=sqloledb;Data Source=АдресСервера;Initial Catalog=ИмяБазы;User Id=Login;Password=pass;

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList