Андрей
Высший разум
(483662)
2 года назад
В Python мы описываем последовательность действий, которые должна совершить программы - это называется "императивное программирование".
В SQL мы задаём вопрос, а СУБД сама ищет на него ответ - это называется "декларативное программирование".
В Python-коде мы формируем текст запроса и отправляем его серверу СУБД. СУБД выполняет запрос и возвращает ответ в виде матрицы (двумерного массива) данных. Не знаю, как в Python, но, обычно, запрос может быть как синхронным, так и асинхронным - по желанию разработчика.
Но учитывая, что асинхронным должен быть весь обработчик HTTP-запроса, делать асинхронный SQL-запрос внутри асинхронного обработчика особого смысла нет. Это если мы говорим о web-разработке.
А дальше ты просто присваиваешь полученную матрицу (либо целиком, либо построчно) переменным Python и работаешь с ней, как с обычными данными.
Обэмэ
Мудрец
(17121)
2 года назад
Ну, если напрямую работаешь с SQL, то именно так. А если работаешь с базой в питоне, то можешь переменной присвоить SQL-запрос и пихать куда тебе его надо. Но, на практике, так не делается... Скорее всего :D
Да и зачем что-то создавать и использовать потом?)
дишка миркаУченик (249)
2 года назад
Не я просто в пример хотел привести поскольку не понимал . Тут просто при выборе чего либо или какой то информации не нужно ее никуда присваивать для дальнейшего использования , что для меня после питона стало как то в новинку
kaiu
Высший разум
(120238)
2 года назад
А HTML тоже языком кличут и можем мы в нем «создать что бы использовать это потом ?»
Является, прежде всего, информационно-логическим языком, предназначенным для описания, изменения и извлечения данных, хранимых в реляционных базах данных. В общем случае SQL (без ряда современных расширений) считается языком программирования неполным по Тьюрингу, но вместе с тем стандарт языка спецификацией SQL/PSM предусматривает возможность его процедурных расширений.
Изначально SQL был основным способом работы пользователя с базой данных и позволял выполнять следующий набор операций:
создание в базе данных новой таблицы;
добавление в таблицу новых записей;
изменение записей;
удаление записей;
выборка записей из одной или нескольких таблиц (в соответствии с заданным условием);
изменение структур таблиц.
дишка миркаУченик (249)
2 года назад
Спасибо . Просто я не понимал саму концепцию того что все что мы сейчас пишем это как переход по файлам в проводнике . После питона как то немного в новинку такое увидеть
Mikech
Мастер
(1609)
2 года назад
SQL это язык запросов (как язык программирования) в СУБД (сервера баз данных). Это отдельные сервисы/программы (mysql, postgres, oracle и тд)
Они хранят и манипулируют табличными данными, через запросы ( также как ты с браузера шлешь запросы http серверам в интеренете)
Все язык программирования (питон, php, java итд и тп) шлют запросы (sql) к эти серверам (асинхронно) и читают ответы (и данные).
Так вот в питоне к примеру мы можем присваивать данные к переменным и использовать их потом , или делать примерно тоже самое с функциями которые создаем . А вот в SQL мы ну насколько я понял просто выводим критерии по которым должны выводиться данные из базы ? То есть асинхронности как таковой тут нет ? Мы не можем что то создать что бы использовать это потом ?
Прошу прощения если вопрос поставлен не корректно , мне сложно сформулировать свои мысли , я просто понимаю что мне сложно понять синтаксис SQL запросов