Форум: "Базы";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];
ВнизПомогите с SQL Найти похожие ветки
← →
Ega23 © (2004-08-13 16:44) [40]В MsAccess есть очень мощный sql builder! Заходим в Access открываем базу, переходим на закладку Query, делаем New Query. Далее добавляем таблицу в поля мышкой перетаскиваем звездочку. Все наш sql готов. Его можно как StoredProc запускать из под Delphi. Access весма неплох для начинающих.
Эта вещь View называется.
Я бы не сказал, что я начинающий. Билдер, конечно, штука хорошая, однако мне нужно описание именно ДИАЛЕКТА SQL. Со списком предоставляемых функций, переменных и т.п.
Например, в MS SQL есть такие вещи, как NoCount, @@IDENTITY, Cast/Convert. Мне нужно такое же, но для Access.
← →
46_55_41_44 © (2004-08-13 16:44) [41]Слушай Ega23 ©
Это все я знаю... не первый день в этом деле...
Если хочешь выложу сюда хрень размером 3000 строк...
Там работает всего несколько запросов!!!
Но чтобы увидеть все в нормальном нужном, документированном виде, в котором требует клиент... уверяю тебя пришлось немного попотеть... и это даже не 10% проги... так что нечего иронизировать на счет моего знания или не знания технологии клиент-сервер. И не всё, что требуется это цепочка сложных запросов... просто видимо ты никогда не писал бух. приложения...
← →
Ega23 © (2004-08-13 16:45) [42]update ConstTab set ConstTab.status = "used" where ConstTab.p_key in
(select TempTab.p_key from TempTab where TempTab.status = "used")
На Access такое можно?
← →
46_55_41_44 © (2004-08-13 16:46) [43]
> Ega23 © (13.08.04 16:44) [40]
В Access нет T-SQL
← →
46_55_41_44 © (2004-08-13 16:47) [44]
> Ega23 © (13.08.04 16:45) [42]
можно
← →
Ega23 © (2004-08-13 16:48) [45]просто видимо ты никогда не писал бух. приложения...
Почему не писал? Писал и ещё как. Только я тебе так скажу: мне гораздо проще промежуточные вычисления запихнуть в ХП, а не тащить кучу данных на клиент и "колбасить" их там.
Представь, что вместо того, чтобы соединить тебя с аботентом, с сервера МТС пришёл пакет инструкций для самостоятельного подключения. :о)
← →
Ega23 © (2004-08-13 16:49) [46]В Access нет T-SQL
Я понимаю, что его там нет. Меня интересуют АНАЛОГИ (если таковые есть). Именно об этом я и хочу почитать.
← →
Квэнди © (2004-08-13 16:51) [47]46_55_41_44 еще один вопрос, а как же тогда OLE, COM ?.. ето не клиент сервер? :)
← →
46_55_41_44 © (2004-08-13 16:57) [48]А вот это уже совсем другое!!!
очень много всего оставляется на шею сервера...
Это понятно!!!
Но не все же согласись...
но... опять таки - это еще не говорит о том, что все остальное оставляется на шею юзера... Тогда Дельфяк зачем? Весь наш спор изначально начался из-за того, что мы видимо не так друг-друга поняли... хотя говорим в целом об одном и том же!!!
Честное слово охоты нет писать здесь, чем я щас занимаюсь... но уверяю тебя только одним каким-нибудь очень сложным запросом это не выполнить...
← →
46_55_41_44 © (2004-08-13 17:00) [49]
> Квэнди © (13.08.04 16:51) [47]
OLE - Object Linking and Embedding
← →
Квэнди © (2004-08-13 17:01) [50]46_55_41_44 а зачем одним?.. а как же процедуры и иже с ними?.. речь то идет не об решении задачей "одной строкой", а о решении задачи всеми средствами БД, а использование Делфи лишь помогает реализовать визуализацию и передачу данных...
← →
AndB © (2004-08-13 17:10) [51]46_55_41_44! извини, у меня с юмором напряги. Здесь
http://delphimaster.net/view/3-1092042786/ [11] > может ADOConnection - это какое-то зарезервированное слово!
и в этой ветке:
[41] > Это все я знаю... не первый день в этом деле... - это юмор?
← →
Вика (2004-08-17 13:48) [52]Спасибо за помощь с SQL,получился вот такой запрос:
UPDATE cards SET cards.status = " + #39 + "USED" + #39", cards.statuschange = :currDate
WHERE cards.id IN
(SELECT tmp_cards.id FROM tmp_cards WHERE tmp_cards.status = " + #39 + "USED" + #39" )
AND cards.status = " + #39 + "AVAILABLE" + #39
AND cards.statuschange IS NULL
который выполняется нормально, т.е. изменяет данные, но каждый раз выдается ошибка "List Index Out of Bounds (0)" - в чет тут может быть дело ?
Thanx...
← →
46_55_41_44 © (2004-08-17 14:41) [53]
> AndB © (13.08.04 17:10) [51]
Слушай не придирайся к словам я имел ввиду может она какую-то переменную объявилаод таким названием!!!!! шутник
← →
Skyle © (2004-08-17 14:50) [54]
> который выполняется нормально, т.е. изменяет данные, но
> каждый раз выдается ошибка "List Index Out of Bounds (0)"
> - в чет тут может быть дело ?
Код можно глянуть с указанием, где ошибка возникает.
← →
Ega23 © (2004-08-17 14:56) [55]List Index Out of Bounds (0)
Поди где-то стоитfor i:=0 to Что-то.Count
А надоЧто-то.Count-1
← →
Skyle © (2004-08-17 15:02) [56]
> [55] Ega23 © (17.08.04 14:56)
Ага.
Может быть также другая ситуация (но в душе та же)
Params[1].VAlue := bla-bla
Params[2].Value := tra-tra
и т.д
То есть не с нуля, а с 1.
← →
Вика (2004-08-17 15:32) [57]> Skyle ©
Да нет, параметр у меня там только один - текущая дата и она:
sql.Parameters.ParamByName("currDate").Value := FormatDateTime("dd.mm.yy",Date);
Ну да ладно, фиг с ним, у меня тут вопрос поважнее :))) Заранее извиняюсь если тупой (вопрос в смысле :)))
В предыдущем запросе я в основной таблице изменила статус активированных карт. Теперь мне надо узнать сколько карт этого подмножества карт (т.е. tmp_cards) относится к каким дилерам (есть таблица дилеров и в tmp_cards и в cards - соответственно поле номера дилера). Как это сделать ?
← →
Skyle © (2004-08-17 15:37) [58]SELECT DealerName, Count(ID)
FROM Tmp_Cards
WHERE Status = "USED"
GROUP BY DealerName
Оно?
Выдаст наименование дилера (поле DealerName) и количество записей (карт) для такого дилера в таблице tmp_cards, у которых статус "USED"
Я правильно вопрос понял?
← →
Skyle © (2004-08-17 15:40) [59]
> номера дилера
Ну, соответственно поменять DialerName на этот номер...
← →
Вика (2004-08-17 15:44) [60]> Skyle ©
Но имя-то дилера в таблице dillers...
← →
Вика (2004-08-17 16:55) [61]Skyle отзовитесь плиз, помогите домохозяйке ... :))))
← →
Ольга (2004-08-18 18:52) [62]SELECT b.DealerName, Count(a.ID)
FROM Tmp_Cards a, Dillers b
WHERE a.id_diller=b.id_diller AND a.Status = "USED"
GROUP BY b.DealerName
← →
ANB (2004-08-18 19:04) [63]
> Вика
Все очень клево, но уточни пожалуйста задачу :
1. Что должно происходить с картами, если она использовалась раньше и перестала (то есть во временной табличке ее нет) ?
2. Если у диллера нет карточки - он должен отображаться с нулем ?
Ответишь - напишу запросы.
Страницы: 1 2 вся ветка
Форум: "Базы";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];
Память: 0.57 MB
Время: 0.038 c