Входная кодировка (язык Entity SQL)
В Entity SQL допускается использование символов Юникода в кодировке UTF-16.
Строковые литералы могут содержать любой символ UTF-16, заключенный в одинарные кавычки. Например, N'文字列リテラル'. При сравнении строковых литералов используются первоначальные значения UTF-16. Например, литерал N'ABC' становится разным при использовании в кодовых страницах для японской письменности и латиницы.
Комментарии могут содержать любой символ UTF-16.
Экранированные идентификаторы могут содержать любой символ UTF-16, заключенный в квадратные скобки. Например, [エスケープされた識別子]. При сравнении экранированных идентификаторов UTF-16 учитывается регистр. В языке Entity SQL версии символов, которые внешне кажутся одинаковыми, но определены на разных кодовых страницах, считаются различными символами. Например, [ABC] эквивалентно [abc] в случае, если соответствующие символы находятся на той же кодовой странице. Однако два одинаковых идентификатора с разных кодовых страниц не являются эквивалентными.
Пробельным символом считается любой пробельный символ UTF-16.
Символом обозначения конца строки является любой нормализованный символ обозначения конца строки UTF-16. Например, значения '\n' и '\r\n' рассматриваются как символы обозначения конца строки, а значение '\r' не является символом обозначения конца строки.
Ключевыми словами, выражениями и знаками пунктуации могут быть любые символы UTF-16, нормализация которых приводит к получению латиницы. Например, слово SELECT, представленное с помощью кодовой страницы для японской письменности, является допустимым ключевым словом.
Ключевыми словами, выражениями и знаками пунктуации могут быть только символы латиницы. SELECT в кодовой странице на японском языке не является ключевым словом. Для представления знаков +, -, *, /, =, (, ), , [, ] и любых других языковых конструкций, применяемых в этом документе без заключения в кавычки, могут служить только символы латиницы.
Простые идентификаторы могут быть представлены только с помощью символов латиницы. Это позволяет избежать возникновения неоднозначности при сравнении, поскольку сравниваются первоначальные значения. Например, идентификатор ABC становится разным, будучи представленным с помощью кодовых страниц для японской письменности и латиницы.