Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Идентификаторы SQL Server с разделителями иногда содержат символы, не поддерживаемые в путях Windows PowerShell. Эти символы можно задавать путем кодирования их шестнадцатеричных значений.
Перед началом работы: Ограничения и ограничения
Обработка специальных символов: кодирование идентификатора, декодирование идентификатора
Перед началом
Символы, неподдерживаемые в именах путей Windows PowerShell, могут быть представлены или закодированы в виде символа "%", за которым следует шестнадцатеричное значение для битового шаблона, представляющего символ, например "**%**xx". Для обработки символов, неподдерживаемых в обозначениях путей Windows PowerShell, всегда можно использовать кодировку.
Командлет Encode-SqlName принимает в качестве входных данных идентификатор SQL Server. Он возвращает строку, в которой все символы, не поддерживаемые языком Windows PowerShell, закодированы в виде «%xx». Командлет Decode-SqlName принимает в качестве входных данных закодированный идентификатор SQL Server и возвращает исходный идентификатор.
Ограничения
Командлеты Encode-Sqlname
и Decode-Sqlname
обеспечивают только кодирование или декодирование символов, допустимых в идентификаторах SQL Server с разделителями, но не поддерживаемых в путях PowerShell. Символы, кодируемые командлетом Encode-SqlName и декодируемые командлетом Decode-SqlName, перечислены ниже.
Символ | \ | / | : | % | < | > | * | ? | [ | ] | | |
Шестнадцатеричная кодировка | %5C | %2F | %3A | 25% | %3C | %3E | %2A | %3F | %5B | %5D | %7C |
кодирование идентификатора
Кодирование идентификатора SQL Server в пути PowerShell
Используйте один из двух методов для кодирования идентификатора SQL Server:
Укажите шестнадцатеричный код для неподдерживаемого символа, используя синтаксис %XX, где XX — шестнадцатеричный код.
Передайте идентификатор в виде строки, заключенной в кавычки, в командлет
Encode-Sqlname
Примеры (кодирование)
В этом примере указана закодированная версия символа «:» (%3A):
Set-Location Table%3ATest
Можно также использовать Encode-SqlName для формирования имени, поддерживаемого Windows PowerShell:
Set-Location (Encode-SqlName "Table:Test")
декодирование идентификатора
Декодирование идентификатора SQL Server из пути PowerShell
Используйте командлет Decode-Sqlname
для замены шестнадцатеричных кодов символами, представленными этими кодами.
Примеры (декодирование)
В этом примере происходит возврат строки Table:Test:
Decode-SqlName "Table%3ATest"
См. также
Идентификаторы SQL Server в PowerShell
Поставщик SQL Server PowerShell
SQL Server PowerShell