Чтение данных из Базы MS SQL в 1С

1. G_104750002220409566418 21.09.22 11:45 Сейчас в теме
Здраствуйте. Я учу 1с и пытаюсь понять как именно взаимодействуют 1С и MS SQL.
Вопрос заключается в следующем: У меня есть база данных на MS SQl вот даные:

ИмяСервераSQL = "DESKTOP-B075V4Q\SQLSQUIRREL";
ПользовательSQL = "DESKTOP-B075V4Q\igorb";
ПарольSQL = "";
БазаДанныхSQL = "SuperHero";
ТаблицаSQL = "dbo.SuperHeroTable";

Конкретные вопросы:
1. Как мне прочитать таблицу dbo.SuperHeroTable базы данных SuperHero в 1с? Например вывести все содержимое таблицы. Или сохранить их в 1с.
2. Можно ли напрямую общаться (создавать запросы) с MS SQL, я спрашиваю потому что я где то читал, что это не предпочтительно.
3. Если не стоит создавать запросы напрямую, то как?

Перерыв интернет я не нашел толкогово описания. Вы бы мне очень помогли. Если у вас есть ссылки на данные темы. Было бы так же очень полезно. Заранее большое спасибо.
По теме из базы знаний
Найденные решения
3. SlavaKron 21.09.22 12:22 Сейчас в теме
(1) Как вариант через ADODB.Connection. Код будет примерно такой, возможно, со строкой подключения придется поиграться:
Соединение = Новый COMОбъект("ADODB.Connection");
Соединение.Open("Provider=SQLOLEDB;Server=DESKTOP-B075V4Q\SQLSQUIRREL;DataBase=SuperHero;User ID=DESKTOP-B075V4Q\igorb;Password=");
Выборка = Соединение.Execute("SEL ECT * FR OM SuperHeroTable");
Если Не Выборка.EOF Тогда
	Данные = Выборка.GetRows().Выгрузить();
КонецЕсли;
independ; G_104750002220409566418; ImHunter; +3 Ответить
2. RustamZz 21.09.22 11:48 Сейчас в теме
(1) Внешние источники данных
G_104750002220409566418; Prikum; +2 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. RustamZz 21.09.22 11:48 Сейчас в теме
(1) Внешние источники данных
G_104750002220409566418; Prikum; +2 Ответить
3. SlavaKron 21.09.22 12:22 Сейчас в теме
(1) Как вариант через ADODB.Connection. Код будет примерно такой, возможно, со строкой подключения придется поиграться:
Соединение = Новый COMОбъект("ADODB.Connection");
Соединение.Open("Provider=SQLOLEDB;Server=DESKTOP-B075V4Q\SQLSQUIRREL;DataBase=SuperHero;User ID=DESKTOP-B075V4Q\igorb;Password=");
Выборка = Соединение.Execute("SEL ECT * FR OM SuperHeroTable");
Если Не Выборка.EOF Тогда
	Данные = Выборка.GetRows().Выгрузить();
КонецЕсли;
independ; G_104750002220409566418; ImHunter; +3 Ответить
4. G_104750002220409566418 21.09.22 13:09 Сейчас в теме
(3) В интернете я нарыл такой вариант, но при попытке отладки, он выдает такое сообщение. В чем может быть ошибка?
&НаКлиенте
Процедура ВыполнитьОбработку()

    //Инициализация переменных
    ИмяСервераSQL = "DESKTOP-B075V4Q\SQLSQUIRREL";
    ПользовательSQL = "DESKTOP-B075V4Q\igorb";
	ПарольSQL = "";
    БазаДанныхSQL = "SuperHero";
    ТаблицаSQL = "dbo.SuperHeroTable";

	
    //Подключение к SQL-серверу
    Попытка
        Соединение  = Новый COMОбъект("ADODB.Connection");
        Команда     = Новый COMОбъект("ADODB.Command");
        Выборка     = Новый COMОбъект("ADODB.RecordSet");
        Соединение.ConnectionString =
            "driver={SQL Server};" +
            "server="+ИмяСервераSQL+";"+
            "uid="+ПользовательSQL+";"+
            "database="+БазаДанныхSQL+";";
        Соединение.ConnectionTimeout = 30;
        Соединение.CommandTimeout = 600;
        //Открытие соединение
        Соединение.Open();
        Команда.ActiveConnection = Соединение;
        Сообщить("Успешное подключение!");
    Исключение
        Сообщить(ОписаниеОшибки());
        Возврат;
    КонецПопытки;

КонецПроцедуры

ВыполнитьОбработку();
Показать
Прикрепленные файлы:
5. klom 21.09.22 13:17 Сейчас в теме
Соединение.ConnectionString =
"driver={SQL Server};" +
"server="+ИмяСервераSQL+";"+
"uid="+ПользовательSQL+";"+
"pwd="+ПарольSQL+";"+
"database="+БазаДанныхSQL+";";

Логин не проходит пропущен пароль пользователя SQL
G_104750002220409566418; +1 Ответить
6. user1203706 13 21.09.22 13:21 Сейчас в теме
(4) на sql возможно не включена авторизация windows\пароль не может быть пустым
7. G_104750002220409566418 21.09.22 13:34 Сейчас в теме
(6)При подключении у меня включена авторизация операционной системы. Это значит в строку пароля я должен вводить пароль пользователя?
Прикрепленные файлы:
8. user1203706 13 21.09.22 13:47 Сейчас в теме
9. sssss_aaaaa_2011 21.09.22 13:50 Сейчас в теме
(8)Ну и зачем вводить в заблуждение? Как раз наоборот, никаких логинов и паролей вводить не надо. Но надо добавить соответствующий параметр в строку коннекта.
Trusted_Connection=Yes
G_104750002220409566418; +1 Ответить
10. user1203706 13 21.09.22 14:51 Сейчас в теме
(9) может быть, у нас виндовая отключена, как правило на всех sql серверах
11. sssss_aaaaa_2011 02.12.22 10:49 Сейчас в теме
(10)Виндовая не может быть отключена. Отключена может быть только SQL-ная.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот