Могу ли я передать SQL-запрос на сервер sql, закодированный в шестнадцатеричном или десятичном виде? - PullRequest
1 голос
/ 19 марта 2011

У меня возникли некоторые проблемы с сопоставлением на сервере SQL, и мне интересно, могу ли я "передать" запрос SQL на сервер, закодированный каким-либо "универсальным" способом? То есть вместо записи:

select * from table; -- ASCII

Я хочу написать что-то вроде:

char(39)char(32)char(3222) -- DECIMAL VALUES

Есть ли какой-нибудь способ, что sql-сервер автоматически обнаружит десятичный или шестнадцатеричный язык и преобразует его на лету в ascii sql-запрос, а затем автоматически выполнит его?

1 Ответ

2 голосов
/ 19 марта 2011

Вы можете сделать это (, как видно из атак SQL-инъекций ).

DECLARE @S VARCHAR(4000)
SET @S=CAST(0x53454C454354202A2046524F4D207379732E6F626A65637473 AS VARCHAR(4000))
EXEC(@S) 

Я не могу предусмотреть ни одного сценария, где бы это потребовалось.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...