Отформатируйте любой набор результатов в JSON, используя ODBC - PullRequest
1 голос
/ 20 августа 2011

Я работаю над клиентским интерфейсом, который может подключаться к любой БД путем передачи нужного запроса в поле ввода и на стороне сервера (кодируется на C и с использованием sql.h), анализирует этот запрос и возвращает содержимое в формате JSON.Я могу сделать это легко, используя Select * из запроса имени таблицы, так как я могу получить количество строк, используя запрос count (*), и я использую это для цикла for, чтобы напечатать мой JSON в буфер.Как мне выполнить то же самое для любого другого запроса?

Я где-то читал, что может помочь построчное связывание, но какова логика анализа набора результатов в формате json?(при условии, что мне нужны данные в построчном формате. пример: {"Records" : [["col heading 1", "col heading 2", "col heading 3"], ["row content 1", "row content 2", "row content 3"]...]})

1 Ответ

2 голосов
/ 20 августа 2011

ODBC предлагает только способ (SQLRowCount) для определения количества затронутых строк для UPDATE / DELETE / INSERT операторов - см. http://msdn.microsoft.com/en-us/library/ms711835%28v=VS.85%29.aspx...

ЕСЛИ вы хотите найтииз числа строк SELECT вы либо выполняете запрос второй раз как SELECT COUNT(*) ИЛИ вы просто зацикливаетесь на наборе результатов и подсчитываете строки, которые ODBC доставляет ...

см. http://social.msdn.microsoft.com/Forums/en/vcgeneral/thread/6fe5403d-900c-4b07-9d00-1f42731b5602
и Как получить количество или количество строк в наборе результатов в PHP с использованием соединения ODBC?

ПРИМЕЧАНИЕ. Хотя во второй ссылке упоминается PHP, ответ не зависит от языка, поскольку причина такого поведения заключается в стандарте ODBC и используемом драйвере ODBC.

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