Вы можете протестировать следующие методы.
blockquote>
- a Проверьте строку подключения проекта.
- b Перейдите в сервисы и перезапустите экземпляр SQLServer.
- c Откройте «Диспетчер конфигурации SQLServer». На левой панели выберите «Конфигурация сети SQLServer» и расширьте его. Выберите «Протоколы для MSSQLServer». На правой панели dbl нажмите «TCP / IP». В «Протоколе» на вкладке «Включено» на «Да». На вкладке «IP-адреса» прокрутите вниз. В «IPAll» установите «TCP-порт» на 1433
- . d Откройте «Брандмауэр с расширенной безопасностью». В правой tab выберите «Inbound Rules»
. В средней вкладке найдите запись, в которой «локальный порт» равен 1433. Если вы не можете найти ее, попробуйте создать ее со следующими уровнями
- В меню «Пуск» выберите «Выполнить», введите «WF.msc» и нажмите «ОК»
- . В левой панели нажмите «Брандмауэр Windows с повышенной безопасностью»
- На правой панели щелкните правой кнопкой мыши «Входящие правила», а затем нажмите «Новое правило»
- . В диалоговом окне «Тип правила» выберите «Порт» и нажмите «Далее»
- В диалоговом окне «Протокол и порты» выберите «TCP» и выберите «Конкретные локальные порты», затем введите номер порта 1433, нажмите «Далее»
- . В диалоговом окне «Действие» выберите «Разрешить подключение», а затем нажмите «Далее»
- . В диалоговом окне «Профиль» проверьте домен , Private и Public, затем щелкните Next
- В диалоговом окне «Имя» введите «SQL 1433 Port» и описание описания для описания. Затем нажмите «Готово»
BLOCKQUOTE>
- . Затем на средней вкладке дважды щелкните найденный элемент (экземпляр) или созданный вами элемент «SQL 1433 Port».
- Выберите вкладку «Область» в открывшемся диалоговом окне (Свойства SQL Server)
- На локальном ПК Перейдите на google.com в свой браузер и выполните поиск «Мой IP».
- затем копия вашего «IP»
- . Перейдите на удаленный сервер и в диалоговом окне «Свойства SQL Server» на вкладке «Область» в «Удаленный IP-адрес» выберите параметр «Эти IP-адреса» и нажмите кнопку «Добавить»
- . В открывшемся диалоговом окне (IP-адрес) выберите «Этот IP-адрес или подсеть» и вставьте свой «IP», нажмите кнопку «ОК».
, который не отображается в вашем примере, но записывая это:
infilename = 'c:/mydir1/mydir2\mydir3\mydir4\123xyz.csv'
не является хорошей идеей, потому что некоторые из строчных (и нескольких прописных) букв интерпретируются как escape-последовательности, если следовать за antislash , Известными примерами являются \t
, \b
, есть другие. Например:
infilename = 'c:/mydir1/mydir2\thedir3\bigdir4\123xyz.csv'
дважды терпит неудачу, потому что 2 символа интерпретируются как «вкладка» и «обратное пространство».
Когда вы имеете дело с буквальным пути в стиле Windows (или регулярными выражениями), вы должны использовать префикс raw и, лучше, нормализовать свой путь, чтобы избавиться от косых черт.
infilename = os.path.normpath(r'c:/mydir1/mydir2\mydir3\mydir4\123xyz.csv')
Однако исходный префикс применяется только к литералам . Если появляется возвращаемая строка, при печати repr(string)
, как 'the\terrible\\dir'
, то символы табуляции уже помещены в строку, и вы ничего не можете сделать, кроме паршивой пост-обработки.
использовать r перед строкой для обработки ее как необработанной строки (т. е. никакого форматирования строки).
например
infilename = r'C:/blah/blah/blah.csv'
Подробнее здесь: https: / /docs.python.org/3.6/reference/lexical_analysis.html#string-and-bytes-literals
Вместо синтаксического анализа \
попробуйте разбор по \\
. Обычно вам нужно убежать на \
, поэтому символ \ на самом деле \\
.