SQL to json converting

311
21 декабря 2016, 01:42

У меня есть table на котором есть большая информация, мне нужно написать SELECT * FROM table, так чтобы SELECT возвращал меня информацию на JSON формате, например SELECT column FROM table результат был такой "\u053f\u0565\u0576\u057f\u0580\u0578\u0576". Прошу не судит мена на Русский язык, я отлично не владею на русском

Answer 1

Для Oracle 11g можно сказать только одно: RTFM Jena Adapter for Oracle Database

Для MySQL - зависит от версии. Если это 5.7.8 или новее, то RTFM The JSON Data Type и JSON Functions. Ну а если нет - то либо внешние средства, либо тупо работать с JSON как с обычным TEXT.

Answer 2

Я бы воспользовался Python + Pandas + SQLAlchemy + адаптер (connector) для вашей БД.

Вот пример решения на Python для MySQL DB и Oracle DB (cx_Oracle):

import pandas as pd
from sqlalchemy import create_engine
# MySQL DB connection string
connection_string = 'mysql://user:password@server/dbname'
# Oracle DB connection string
import cx_Oracle
connection_string = create_engine('oracle+cx_oracle://user:password@tnsname')
# create SQL Alchemy connection object
engine = create_engine(connection_string)
# read rows from DB into Pandas DataFrame
sql_query = 'select * from my_table where <where clause>'
df = pd.read_sql(sql_query, engine)
# export/write DataFrame to JSON file
df.to_json(r'd:/temp/db_export.json', orient='records', force_ascii=False)

Документация для используемых функций/методов:

  • sqlalchemy.create_engine()
  • pd.read_sql()
  • DataFrame.to_json()
READ ALSO
Как достать переменные из URL?

Как достать переменные из URL?

Добрый деньПишу интернет магазин, по одному курсу, который нашел на просторах интернета

276
Как при помощи php внести в БД MySQL данные о времени из формы?

Как при помощи php внести в БД MySQL данные о времени из формы?

Суть такова: Есть форма на сайтеВ форме есть поля: время отхода ко сну время пробуждения Это поля формата hh:mm Нужно занести значение поляей...

284
Как достать беседы для чата

Как достать беседы для чата

у меня есть таблица

281