Why use SQL database? [закрыто]

Я не совсем уверен, что stackoverflow - это место для такого общего вопроса, но давайте попробуем.

Будучи подверженным необходимости где-то хранить данные приложения, я всегда использовал MySQL или sqlite, просто потому, что это всегда делается так. Поскольку кажется, что весь мир использует эти базы данных (больше всего программных продуктов, фреймворков и т. Д.), Начинающему разработчику, вроде меня, довольно сложно задуматься о том, является ли это хорошим решением или нет.

Хорошо, скажем, у нас есть некоторая объектно-ориентированная логика в нашем приложении, и объекты как-то связаны друг с другом. Нам необходимо сопоставить эту логику с логикой хранения, поэтому также требуются отношения между объектами базы данных. Это приводит нас к использованию реляционной базы данных, и я согласен с этим - проще говоря, строки нашей таблицы базы данных иногда должны иметь ссылки на строки других таблиц.Но зачем использовать язык SQL для взаимодействия с такой базой данных?

SQL-запрос - это текстовое сообщение. Я могу понять, что это здорово для понимания того, что он делает, но не глупо ли использовать текстовые имена таблиц и столбцов для части приложения, которую никто не видел после развертывания? Если бы вам пришлось писать хранилище данных с нуля, вы бы никогда не использовали такого рода решение. Лично я бы использовал некоторый байт-код «скомпилированный запрос базы данных», который будет один раз собран внутри клиентского приложения и передан в базу данных. И он наверняка назвал бы таблицы и двоеточия по номерам id, а не по ascii-строкам. В случае изменений в структуре таблицы эти байтовые запросы могут быть перекомпилированы в соответствии с новой схемой БД, сохраненной в XML или чем-то в этом роде.

В чем проблемы моей идеи? Есть ли причина для меня, чтобы не писать это сам и вместо этого использовать базу данных SQL?

РЕДАКТИРОВАТЬ Чтобы сделать мой вопрос более понятным. В большинстве ответов утверждается, что SQL, являясь текстовым запросом, помогает разработчикам лучше понимать сам запрос и легче его отлаживать. Лично я давно не видел людей, пишущих SQL-запросы вручную. Все, кого я знаю, включая меня, используют ORM. Эта ситуация, в которой мы создаем новый уровень абстракции для сокрытия SQL, заставляет задуматься, нужен нам SQL или нет. Я был бы очень признателен, если бы вы могли привести несколько примеров, в которых SQL используется без ORM, и почему.

EDIT2 SQL - это интерфейс между человеком и базой данных. Вопрос в томпочему мы должны использовать его для взаимодействия приложений и баз данных? Я все еще прошу примеры написания / отладки SQL людьми.

Ответы на вопрос(25)

Ваш ответ на вопрос