Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2009.02.08;
Скачать: [xml.tar.bz2];

Вниз

SQL людям :о)   Найти похожие ветки 

 
ANTPro ©   (2008-12-05 16:49) [0]

Существуют ли визуальные средства для составления (простых) SQL запросов ориентированных на простых пользователей нашел пока только это ( http://www.activequerybuilder.com/ ), но компоненты ориентированны все же на опытного пользователя. Существует ли что-нибудь с более простым интерфейсом?


 
Ega23 ©   (2008-12-05 16:54) [1]

гм...
ИМХО, не бывает "простого пользователя", который может составлять SQL-запрос.

А так - Select * from table.  :)


 
ANTPro ©   (2008-12-05 16:55) [2]

> [1] Ega23 ©   (05.12.08 16:54)

Я тоже пока склоняюс к этому, но вдруг? :о)


 
Ega23 ©   (2008-12-05 17:02) [3]


> Я тоже пока склоняюс к этому, но вдруг? :о)


Вдруг, пардон, бывает только пук.
Просто нецелесообразно это. Продвинутый человек будет сам нормально запросы писать. Если это в рамках какой-то системы для тупых пользователей делать, то им не нужно Select * from Persons where PersName like("%ов") and ....
Им нужна формочка, где будет чекбокс и "имя как " ...


 
Anatoly Podgoretsky ©   (2008-12-05 17:04) [4]

> ANTPro  (05.12.2008 16:49:00)  [0]

Их просто гигантское количество штук.
А простой запрос, частный случай сложного.


 
Сергей М. ©   (2008-12-05 17:06) [5]


> ANTPro ©   (05.12.08 16:49)  


Виз.конструктор запросов от MS Access - куда уж проще


 
ANTPro ©   (2008-12-05 17:10) [6]

> [4] Anatoly Podgoretsky ©   (05.12.08 17:04)

И где можно посмотреть хотябы на один экземпляр из этого гиганского множества? Что-то пока не гуглиться простой интерфейс :(


 
ANTPro ©   (2008-12-05 17:12) [7]

> [5] Сергей М. ©   (05.12.08 17:06)

Возможно, но даже он является не простым. (да и в виде компонента для .NET его не достать :(  )


 
ANB   (2008-12-05 17:14) [8]


> И где можно посмотреть хотябы на один экземпляр из этого
> гиганского множества? Что-то пока не гуглиться простой интерфейс
> :(

Запросная система - штука сложная и дорогая. И, как правило, либо заточена под конкретную базу, либо примитивна и непонятна пользователям.


 
ANTPro ©   (2008-12-05 17:19) [9]

> [8] ANB   (05.12.08 17:14)

Нужна «Запросная система без привязки к конкретной БД примитивная понятная пользователям, пусть дорогая» о как :о)


 
stas ©   (2008-12-05 17:21) [10]

ANTPro ©   (05.12.08 16:49)
Для какой задачи?
Я ограничился тем что подключаю пользователям представление в Exсel, а они там уже занимаются - фильтруют, крутят как им надо.
Но этих пользователей я бы не назвал простыми.


 
Сергей М. ©   (2008-12-05 17:22) [11]


> без привязки к конкретной БД


А откуда будут браться имена и типы объектов (таблицы, запросы, ХП, вью, функции и т.д. и т.п.), участвующих в проектируемом запросе ?


 
ANTPro ©   (2008-12-05 17:34) [12]

> [11] Сергей М. ©   (05.12.08 17:22)

Имена будут браться из метаданных(никаких вью и хп, функций) только простые запросы.(Пока еще не понятно как будет проект «выглядеть в целом» вот и ищу отдельные компоненты о которых знаю мало)

> [10] stas ©   (05.12.08 17:21)
> Для какой задачи?
> Я ограничился тем что подключаю пользователям представление
> в Exсel, а они там уже занимаются — фильтруют, крутят как
> им надо.

Такой вариант не походит.


 
Ega23 ©   (2008-12-05 17:41) [13]


> Нужна «Запросная система без привязки к конкретной БД примитивная
> понятная пользователям, пусть дорогая» о как :о)


гм... Да фиг ты её такую найдёшь. И, откровенно говоря, коль она ещё и к конкретной СУБД не привязана - фигня будет полная.

Сама по себе задачка достаточно интересная, я бы с удовольствием взялся, если бы кто-то финансирование объявил. Но не объявят, ибо - бесперспективно.

К сожалению.


 
Jeer ©   (2008-12-05 17:41) [14]


> ANTPro ©   (05.12.08 17:19) [9]
>
> > [8] ANB   (05.12.08 17:14)
>
> Нужна «Запросная система без привязки к конкретной БД примитивная
> понятная пользователям, пусть дорогая» о как :о)


Глупость несусветная.

Делал, как-то, OLAP систему на основе реляционной СУБД ( причем тип СУБД к которой можно обращаться из одного и того же клиентского приложения, практически произвольный - Firebird, Oracle, MSSQL и пр)
Юзеры ставят всякие галочки на понятных им сущностях, вибирают нужное им сечение многомерного куба - вуаля, запрос автоматически готовится и выполняется )
Но чтобы к произвольной по архитектуре БД - бред, по мойму.


 
ANB   (2008-12-05 18:00) [15]


> Нужна «Запросная система без привязки к конкретной БД примитивная
> понятная пользователям, пусть дорогая» о как :о)

Запросная система к БД МВД (не очень сложная, но зато объемная БД на оракле) обошлась МВД в несколько миллионов баксов.

Координаты разработчиков дать ?


 
ANTPro ©   (2008-12-05 18:14) [16]

> [13] Ega23 ©   (05.12.08 17:41)

На реализацию очень мало времени, поэтому ищу готовое.
Пока многое еще неизвестно, может и финансирование будет :о) Так как работы в целом по проекту опять вагон :(


 
ANB   (2008-12-05 18:17) [17]


> Пока многое еще неизвестно, может и финансирование будет
> :о)

ICL, Казань. Я себе даже комиссию трясти не буду, можешь напрямую обратиться :)


 
ANTPro ©   (2008-12-05 18:22) [18]

> [17] ANB   (05.12.08 18:17)

Я не считаю что все настолько сложно (во многих местах можно упростить к примеру все поля только текстовые никаких вычислений в SQL и прочего (так для примера, точных упрощений пока незнаю) )


 
clickmaker ©   (2008-12-05 18:36) [19]

> Существует ли что-нибудь с более простым интерфейсом?


Table name: [     [v]]
Field name: [     [v]] Value: [Equal  [v]] [         ][         ][AND][Add condition]
Field name: [     [v]] Value: [Equal  [v]] [         ][         ][Add condition]
...
[Execute]


[     [v]] - это комбик, [         ] - поле ввода (их два, если between и одно при всех остальных)
кроме Equal может быть Like, Between, Less, More
при нажатии Add condition выбирается AND или OR с предыдущим
Если нужны еще хитрые скобки, будет чуть посложнее.
Пробегаем в цикле по всем контролам и составляем select.
Набор контролов для задания условия удобно сделать отдельным компонентом


 
ANB   (2008-12-05 18:40) [20]


> clickmaker ©   (05.12.08 18:36) [19]

Ну по одной табличке еще как то можно но IN уже не учтен.
Но даже по одной не все так просто, например
where
(N1 = 5 or N2 = 6) and (N4 = 8 or (N5 = 6 and N7 = 8))

Неискушенный юзер в таком запросе запутается. Даже мне понятнее со скобками.


 
clickmaker ©   (2008-12-05 18:51) [21]

> [20] ANB   (05.12.08 18:40)

ну понятно, что там должны быть все возможные операторы, в т.ч. Less or equal, more or equal
если нужны скобки, то по нажатию Add condition можно кроме and/or предлагать либо открыть скобку, либо закрыть последнюю открытую. Тогда набор условий внутри скобок более наглядно отображать с отступами.
Для нескольких таблиц, выбираем что-то типа
Join: [inner/outer/full] [Table name] on [MainFieldName] = [JoinedFieldName]

Но в простейшем варианте пишется это примерно за день, может даже за несколько часов.
Потом уже можно наворачивать


 
kaif ©   (2008-12-05 19:01) [22]

Вообще-то первоначально SQL так и задумывался.

Для людей.

Предполагалось, что любой работник, я уже не говорю о топ-менеджере с высшим образованием, сумеет заюзать SELECT, если он не идиот, конечно.
Возьмет перечислит таблицы, укажет условия в WHERE, а сервер соптимизирует запрос, а программист продумает индексы.

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

Может нет смысла заново проходить тот же путь?
Хотя чем черт не шутит...
Иногда юзеры проявляют удивительную изобретательность в Excel-е, например. Может действительно можно сделать что-то дружественное для юзера?


 
Johnmen ©   (2008-12-05 19:03) [23]


> ANTPro ©   (05.12.08 18:22) [18]
> Я не считаю что все настолько сложно

Ну так сделай, если не настолько сложно.
Если не можешь, то, право, не стОит молоть языком зазря... Если  же в сказки ещё веришь, то пожалуйста, верь и дальше. У нас свобода совести...
Но мы к твоей вере никакого отношения не имеем. Как и весь мир.


 
Petr V. Abramov ©   (2008-12-05 19:06) [24]


> kaif ©   (05.12.08 19:01) [22]


> Предполагалось, что любой работник, я уже не говорю о топ-
> менеджере с высшим образованием, сумеет заюзать SELECT,
> если он не идиот, конечно.

и, я предполагаю, в те времена простые юзеры простые запросы писали. Ты не забывай, что тогда в командной строке работали и скрипты простенькие писали.


 
kaif ©   (2008-12-05 19:06) [25]

Мне кажется, что юзер любит сразу видеть результат.
Если сделать так, что по мере конструирования запроса, система будет выдавать какие-то частичные результаты: сама ограничивая наборы по объему, вводя дополнительные условия за кадром и следя за тем чтобы юзер не устроил декартово произведение сдуру на большом наборе, предвосхищала бы примерно время, которое он получит в "рабочем" варианте, то что-то подобное могло бы оказаться полезным. И не только юзерам, но и нашему брату SQL-щику.


 
blackman ©   (2008-12-05 19:07) [26]

Вообще-то первоначально SQL так и задумывался. Для людей
Люди разные бывают.
Может действительно можно сделать что-то дружественное для юзера?
У ANTPro ©   (05.12.08 18:14) [16] Пока многое еще неизвестно, может и финансирование будет
А вы ему значит помочь хотите с финансированием? :)
Или на халяву ?


 
kaif ©   (2008-12-05 19:08) [27]

Petr V. Abramov ©   (05.12.08 19:06) [24]
и, я предполагаю, в те времена простые юзеры простые запросы писали.


Готов согласиться. А куда им еще было деться?


 
kaif ©   (2008-12-05 19:10) [28]

2 blackman ©   (05.12.08 19:07) [26

Я лишь обсуждаю саму идею. Стоит ли за это вообще браться, независимо от финансирования. Я не считаю, что за деньги стоит писать все что угодно. Хотя если ты молодой и только учишься...


 
Anatoly Podgoretsky ©   (2008-12-05 19:34) [29]

> ANTPro  (05.12.2008 18:14:16)  [16]

О да ты еще и спонсируешь предприятие.


 
Поросенок Винни-Пух ©   (2008-12-05 19:34) [30]

все уже украдено до нас. точнее до вас.
и без дурацких (а все они дурацкие) построителей запросов.

я встроил все эти пользовательские хотения в грид.
сам грид унаследован от ехлиба (в котором уже почти все есть)
мне не хватало только некторых фич, которые и были добавлены.


 
Anatoly Podgoretsky ©   (2008-12-05 19:37) [31]

> kaif  (05.12.2008 19:01:22)  [22]

ИБМ много чего не учла, например Билл Гейтса.
А продуктов запороло очень много.


 
Anatoly Podgoretsky ©   (2008-12-05 19:39) [32]

> Petr V. Abramov  (05.12.2008 19:06:24)  [24]

И ввод был из телетайпа, оттуда и символ точка с запятой, и вывод был на телетайп.


 
Anatoly Podgoretsky ©   (2008-12-05 19:42) [33]

> blackman  (05.12.2008 19:07:26)  [26]

Какое на халяву, только пилить Шура.


 
blackman ©   (2008-12-05 19:54) [34]

kaif ©   (05.12.08 19:10) [28]
Идея как я понял, заключается в том, что бы на халяву получить построитель запросов для тех кто этого делать не умеет.
Можно конечно и в Excel кидать или то, что Поросенок Винни-Пух предлагает. Наконец наплодить какую-то стандартную серию или даже построитель как в Access. Но все зависит от того кто будет пользователем.
Подавляющее большинство НЕ будет ничего строить, а будет звать программиста и с его помощью...
Я обычно прошу нарисовать все возможные отчеты которые юзер хотел бы получать. Это обязательное требование на начальном этапе.
Обобщаю написанное, меняю так что бы это действительно были отчеты.
Показываю и согласовываю. После того как все готово доделываем те, что были и дополняем новыми.
Обычно этого хватает. Если нет, то делаем вторую очередь, за дополнительные бабки и доп. время.
Расчитывать на умного юзера я уже давно перестал. Не бывает. А если и появляются, то лучше не заморачиваться с их сверхидеями.


 
Поросенок Винни-Пух ©   (2008-12-05 19:59) [35]

Я обычно прошу нарисовать все возможные отчеты которые юзер хотел бы получать. Это обязательное требование на начальном этапе.

Во! Правильно!
Сразу задать юзеру вопрос на который точно нет ответа
:)))


 
blackman ©   (2008-12-05 20:01) [36]

kaif ©   (05.12.08 19:10) [28]
Забыл добавить, что браться за бесплатные идеи можно только если ты хорошо обеспечен :)

Anatoly Podgoretsky ©   (05.12.08 19:42) [33]
Какая же там халява. Золото обещали. Обманули конечно. Но хотя бы обещали...


 
Anatoly Podgoretsky ©   (2008-12-05 20:04) [37]

> blackman  (05.12.2008 20:01:36)  [36]

В данном случае не обманут, не гирю же пилить, а эквивалент золота.


 
blackman ©   (2008-12-05 20:07) [38]

Поросенок Винни-Пух ©   (05.12.08 19:59) [35]
Сразу задать юзеру вопрос на который точно нет ответа
Ты не прав. Если юзер не знает, чего он хочет от системы, то и начинать не стоит.
Другой вопрос, что он часто как собака, все понимает, но сказать не может.
Но тут уж ты сам должен ему помочь. Объяснить, что можно и в каком виде. Примерчики привести. Уверяю тебя, что он нарисует. Пусть и бред в первой редакции, но опять скорректировать можно и добиться взимной радости от общей работы.
Надо также учесть, что в большинстве случаев все отчеты он уже делал раньше ручками. Можно покопаться в его бумажках. Посмотреть, что он делал и куда, кому...
Абсолютно новых задач давно уже нет.


 
blackman ©   (2008-12-05 20:27) [39]

Anatoly Podgoretsky ©   (05.12.08 20:04) [37]
Где же этот эквивалент? Может я самое важное пропустил? ;)


 
Anatoly Podgoretsky ©   (2008-12-05 20:42) [40]


> У ANTPro ©   (05.12.08 18:14) [16] Пока многое еще неизвестно,
>  может и финансирование будет
> А вы ему значит помочь хотите с финансированием? :)



Страницы: 1 2 вся ветка

Форум: "Прочее";
Текущий архив: 2009.02.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.56 MB
Время: 0.01 c
6-1198218343
LexXL
2007-12-21 09:25
2009.02.08
проверить наличие файла на ftp


15-1228950052
DDR2
2008-12-11 02:00
2009.02.08
Не работает память...


15-1228828248
1994
2008-12-09 16:10
2009.02.08
новые модули


15-1229030754
ekto
2008-12-12 00:25
2009.02.08
найти спрятанное


2-1229928616
Quart
2008-12-22 09:50
2009.02.08
Траблы с Таблой





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский