Параметры строки Datasnap, начинающиеся с нуля, обрезаются до нуля - PullRequest
2 голосов
/ 02 марта 2012

У меня есть процедура на моем сервере DataSnap, которая запускается запросом GET и получает единственный строковый параметр, но всякий раз, когда клиент отправляет строковое значение, состоящее из любого количества нулей, за которым следует любое количество чисел (например, 01, 002 0047 и т. Д.), Как-то обрезаются ведущие нули, и они мне тоже нужны.

Я отлаживал Delphi, стараясь выяснить, где это происходит, и происходит ли это на стороне сервера, но я ничего не встречал. Есть идеи?

Ответы [ 2 ]

0 голосов
/ 07 марта 2012

Проблема решена, запрос, который делал мой клиент, каким-то образом автоматически конвертировался в целое число всякий раз, когда он «выглядел» как целое число, поэтому теперь значение запрашивается между кавычками, так что оно преобразуется в строку, как это должен.

Я чувствую себя немного глупо, если сделаю из этого такую ​​большую вещь.

0 голосов
/ 02 марта 2012

Может быть, это заставляет REST перейти в режим обработки строк:

SELECT * FROM TABLE WHERE FIELD = '0'+'1'

Но я подозреваю, что одинарные кавычки должны быть двойными:

SELECT * FROM TABLE WHERE FIELD = "01"

... или кавычки не являются частью вашего оператора SQL:

'SELECT * FROM TABLE WHERE FIELD = ''01'''
...