Indatateckenuppsättning (entitets-SQL)
Entitets-SQL accepterar UNICODE-tecken som kodas i UTF-16.
Strängliteraler kan innehålla valfritt UTF-16-tecken som omges av enkla citattecken. Till exempel N'文字列リラル'. När strängliteraler jämförs används de ursprungliga UTF-16-värdena. Till exempel skiljer sig N'ABC från japanska och latinska kodsidor.
Kommentarer kan innehålla valfritt UTF-16-tecken.
Undantagna identifierare kan innehålla valfritt UTF-16-tecken inom hakparenteser. Till exempel [エスケープされた識別子]. Jämförelsen av UTF-16-undantagna identifierare är skiftlägesokänslig. Entitets-SQL behandlar versioner av bokstäver som ser likadana ut men som kommer från olika kodsidor som olika tecken. [ABC] motsvarar till exempel [abc] om motsvarande tecken kommer från samma kodsida. Men om samma två identifierare kommer från olika kodsidor är de inte likvärdiga.
Tomt utrymme är ett UTF-16 blankstegstecken.
En ny rad är ett normaliserat UTF-16 newline-tecken. Till exempel betraktas '\n' och '\r\n' som nyradstecken, men '\r' är inte ett nytt radtecken.
Nyckelord, uttryck och skiljetecken kan vara valfritt UTF-16-tecken som normaliseras till latinskt. Select på en japansk kodsida är till exempel ett giltigt nyckelord.
Nyckelord, uttryck och skiljetecken kan bara vara latinska tecken. SELECT
på en japansk kodsida är inte ett nyckelord. +, -, *, /, =, (, ), ', [, ] och andra språkkonstruktioner som inte anges här kan bara vara latinska tecken.
Enkla identifierare kan bara vara latinska tecken. Detta undviker tvetydighet under jämförelsen, eftersom ursprungliga värden jämförs. Till exempel skulle ABC vara annorlunda på japanska och latinska kodsidor.