Предлагаю обсудить перспективы языка SQL. Кому покажется странным, хочу пояснить: дело в том, что сейчас появляются технологии, которые "сами" генерят SQL, избавляя пользователя от такой необходимости (например, LINQ).
Лично мне оч нравится Structured Query Language, я его достаточно долго и подробно изучала.
Как вы считаете, есть ли будущее у SQL? Или же "продвинутое человечество" постепенно будет от него отходить, как практически отошло от Assembler'а?
16 мая 2009 в 10:03
языки программирования – нет. языки для построения запросов – вполне могут.
16 мая 2009 в 9:04
Ок, другой вопрос: считаешь ли ты, что и языки программирования приблизятся к естесственному языку?
Насколько мне известно, все без исключения попытки такое сделать провалились из-за того, что получалось громоздкое говно вместо мощного формального аппарата. Да и ни малейших тенденций в эту сторону тоже не наблюдается – в современных языках развивается формальный аппарат.
16 мая 2009 в 0:05
> Для того, чтобы база данных стала нереляционной, придётся придумать что-то лучше реляционной математики. Возможно ли это и не будет ли такая математика включать в себя реляционную?
нереляционные базы данных уже есть, но, в силу определенных обстоятельств, большой популярностью не пользуются.
> В любом случае будет существовать какой-то структурированный язык запросов для API и, возможно, неструктурированный для пользователя.
никто ведь не мешает выделить из естественного языка структурированное подмножество и использовать его для API, нестрого ограничивая разработчика этим подмножеством.
в целом – это вопросы к некоторому не столь уже отдаленному будущему. мы его увидим
15 мая 2009 в 23:02
Мои рассуждения ортогональны тому, реляционная база или нет. В любом случае будет существовать какой-то структурированный язык запросов для API и, возможно, неструктурированный для пользователя.
15 мая 2009 в 22:04
Для того, чтобы база данных стала нереляционной, придётся придумать что-то лучше реляционной математики. Возможно ли это и не будет ли такая математика включать в себя реляционную?
15 мая 2009 в 22:03
Жека, а если база данных будет нереляционной? куда засунуть нестандартизованные варианты SQL?
14 мая 2009 в 22:05
SQL – уже десятилетия держится и никуда он в ближайшее время не денется.
Всякие ORM еще долго не вытеснят SQL (точнее очень долго), так как они лишают программиста гибкости при решении задач.
Oracle PL/SQL – тоже неплохие позиции занимает и как язык программирования в том числе.
Так что все будет хорошо, не переживайте.
14 мая 2009 в 22:03
Программа-то может, вот только нахера? Зачем мне, как программисту, умеющему программировать, выкобениваться и стараться придумать запрос, который *точно* не будет воспринят неоднозначно, если я могу просто написать SQL, у которого есть более или менее формальная спецификация? Какой смысл в API, который не обязан работать?
14 мая 2009 в 21:04
программа *внутри себя* может собрать запрос и на естественном языке так, что он не будет допускать различных толкований. никто не мешает самой базе данных предоставлять доступ на естественном языке.
14 мая 2009 в 17:03
Я допускаю, что будут существовать системы, пользовательский интерфейс которых позволяет задавать запрос на естесственном языке. Та же, блин, Wolfram Alpha.
Но если программе *внутри себя* нужно обратиться к базе данных с конкретным запросом – тут ни о какой вероятности и речи быть не может.
14 мая 2009 в 17:01
неоднозначности в большинстве случаев устраняются оценкой вероятности того, что пользователь хотел сказал то или другое (как, например, распознавание речи с проверкой наличия предполагаемого слова в словаре). впрочем, до этого еще далеко.
ЗЫ: громоздкость естественного языка компенсируется невероятной гибкостью.
14 мая 2009 в 12:01
Я сомневаюсь, что естесственный язык когда-нибудь вытеснит SQL – у естесственного языка нет достаточных преимуществ – он слишком неоднозначен и трудно поддается разбору, и к тому же он в *сложных* случаях (когда SQL неудобен) *более* громоздок, чем SQL.
14 мая 2009 в 8:01
> Как вы считаете, есть ли будущее у SQL? Или же "продвинутое человечество" постепенно будет от него отходить, как практически отошло от Assembler'а?
все зависит от того, как быстро вы собираетесь от SQL избавляться.
в ближайшее время исчезновение ему не грозит. с другой стороны, SQL будет неизбежно вытеснен при использовании для выборки данных естественного языка.
14 мая 2009 в 3:01
ANSI SQL – жив и будет жить
Всякие "построители" – нафиг
"SQL" от 1С: Предприятие – лишнее тому потверждение
13 мая 2009 в 23:02
В той же 1С:Предприятие 8 язык запросов основан на SQL… живет пока…
13 мая 2009 в 23:02
SQL язык гибкий и позволяет выполнять очень сложные запросы и обрабатывать их. Да конечно сейчас есть всевозможные программы и программные дополнения позволяющие писать меньше sql кода, но который в конечном итоге все равно ими генерируется.
Ассемблер жив и всегда будет жить потому что позволяет упростить некоторые задачи или ускорить программу на уровне процессора.
Честно с LINQ мало знаком(по-моему он очень схож с sql), да и с .net в общем то тоже, но думаю что это очередной ход MS, на продвижение своего продукта, хотя конечно это может и вполне удобная и хорошая технология (не ругайте если это действительно так).
Конечно это мое мнение и я могу ошибаться и буду рад если вы мне укажите на ошибки…