Я пытаюсь подключить базу данных Microsoft SQL Server в консольном приложении в Visual Studio 2019.
Я получаю сообщение об ошибке: SQL Server не существует или доступ запрещен.
Я подозревал, что у меня может быть неправильная строка подключения, поэтому я использовал функцию SQLDriverConnect с SQL_DRIVER_COMPLETE_REQUIRED, чтобы запросить окно, чтобы я мог вручную выбрать сервер, к которому я хочу подключиться.
SQLDriverConnect(SQLConnHandle, desktopHandle, (SQLCHAR*)"", SQL_NTS, OutConString, 1024, NULL, SQL_DRIVER_COMPLETE_REQUIRED)
Примечание: OutConnectionString - 5-й параметрInConnectionString - это 3-й параметр
. Благодаря этому я смог напечатать строку подключения, возвращенную OutConnectionString, а также получить доступ к базе данных и распечатать ее содержимое.
Но когда я попыталсяскопируйте OutConnectionString в InConnectionString, он все еще возвращается к той же ошибке.
SQLDriverConnect(SQLConnHandle, NULL, (SQLCHAR*)"DSN=JoelDB;UID=myID;PWD=myPW;WSID=JE-ACCOUNTS;DATABASE=myDB;Network=DBMSSOCN;Address=JE-ACCOUNTS\SQLEXPRESS,1433", SQL_NTS, OutConString, 1024, NULL, SQL_DRIVER_NOPROMPT)
Я уже пытался создать исключение для порта 1433 в брандмауэре Windows и других предложениях с этого сайта, но безрезультатно.
https://www.sqlserverlogexplorer.com/database-does-not-exist-access-denied/
Я знаю, что соединение exiТак как я смог сделать это с помощью параметра SQL_DRIVER_COMPLETE_REQUIRED, и я также могу вручную загрузить базу данных в Visual Studio через Инструменты> Подключиться к базе данных.
Я хочу вручную вставить строку подключения в код, так какнеудобно щелкать в появившемся окне, чтобы выбрать базу данных, которую я хочу, каждый раз, когда я запускаю / отлаживаю программу.