Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите с SQL


Страницы:   1 2 3 4

Вика ©   (2004-08-13 14:45:00) 

Помогите с написанием SQL для решения следующей задачи:

есть постоянная таблица карточек, еженедельно из другой проги с некоторую таблицу выгружатся карточки со полем статуса "USED". Эту самую табличку надо стравнить с постоянной таблицей карточек и поменять у соответствующих карточек статус "AVAILABLE" на "USED" и проставить в поле statuschange дату изменения статуса.


46_55_41_44   (2004-08-13 16:46:00) [21]


> Ega23 ©   (13.08.04 16:44) [40]

В Access нет T-SQL


Ega23   (2004-08-13 16:45:00) [22]

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:44:00) [23]

Слушай Ega23 ©  
Это все я знаю... не первый день в этом деле...
Если хочешь выложу сюда хрень размером 3000 строк...
Там работает всего несколько запросов!!!
Но чтобы увидеть все в нормальном нужном, документированном виде, в котором требует клиент... уверяю тебя пришлось немного попотеть... и это даже не 10% проги... так что нечего иронизировать на счет моего знания или не знания технологии клиент-сервер. И не всё, что требуется это цепочка сложных запросов... просто видимо ты никогда не писал бух. приложения...


Ega23   (2004-08-13 16:44:00) [24]

В MsAccess есть очень мощный sql builder! Заходим в Access открываем базу, переходим на закладку Query, делаем New Query. Далее добавляем таблицу в поля мышкой перетаскиваем звездочку. Все наш sql готов. Его можно как StoredProc запускать из под Delphi. Access весма неплох для начинающих.

Эта вещь View называется.

Я бы не сказал, что я начинающий. Билдер, конечно, штука хорошая, однако мне нужно описание именно ДИАЛЕКТА SQL. Со списком предоставляемых функций, переменных и т.п.

Например, в MS SQL есть такие вещи, как NoCount, @@IDENTITY, Cast/Convert. Мне нужно такое же, но для Access.


сергей1   (2004-08-13 16:42:00) [25]

еще так можно

update ConstTab set ConstTab.status = 'used' where ConstTab.p_key in
(select TempTab.p_key from TempTab where TempTab.status = 'used')


Ega23   (2004-08-13 16:40:00) [26]

Объяснение, что такое "клиент-сервер" грубое

Оно неправильное. БД и клиент(ы) могут находиться физически на одной машине.


Erik1   (2004-08-13 16:40:00) [27]

В MsAccess есть очень мощный sql builder! Заходим в Access открываем базу, переходим на закладку Query, делаем New Query. Далее добавляем таблицу в поля мышкой перетаскиваем звездочку. Все наш sql готов. Его можно как StoredProc запускать из под Delphi. Access весма неплох для начинающих.


Ega23   (2004-08-13 16:38:00) [28]

"клиент-сервер" это когда физически база находится на одном компе сервере, а все остальные подключаются к ней как клиенты...
MS SQL Server, Oracle, Interbase например это "клиент-сервер"ные СУБД...


Понятно...  Так вот, как правило, клиент - слабенькая дохленькая машина. Кассовый аппарат в магазине, к примеру. Или мобильный телефон. А сервер - очень мощная машина.
По-идее, всё что умеет делать клиент, это предоставить юзеру какой-то пользовательский интерфейс и формирование запросов к серверу. Сервер эти запросы вычисляет и возвращает некие наборы данных клиенту (для отображения в том самом интерфейсе). Вот и всё.


46_55_41_44   (2004-08-13 16:38:00) [29]

Объяснение, что такое "клиент-сервер" грубое... но думаю подойдет!


Квэнди   (2004-08-13 16:37:00) [30]

46_55_41_44 а чем же тогда было обоснованно ваше заявление?

"Нужно делать программно... все С SQL не сделаешь.. могу помочь, если хошь..."...


46_55_41_44   (2004-08-13 16:36:00) [31]

А на счет примера... ничего просто в голову не приходит


Квэнди   (2004-08-13 16:35:00) [32]

Ega23 ©

http://narod.yandex.ru/cgi-bin/yandsearch?user=delphiworld&text=access&where=2


46_55_41_44   (2004-08-13 16:34:00) [33]

таксс... извините ... не было меня тут...
"клиент-сервер" это когда физически база находится на одном компе сервере, а все остальные подключаются к ней как клиенты...
MS SQL Server, Oracle, Interbase например это "клиент-сервер"ные СУБД...


Ega23   (2004-08-13 16:32:00) [34]

help Access хотя я не помню есть ли там описание SQl..

Вот именно. Предположим, у меня есть скрипт на создание БД в Access (модель создал в Power Designer, там же сгенерил скрипт). Есть ли какая-нибудь внешняя утилитка, типа isql, которая этот скрипт может толкнуть?
Вообще что-нибудь про Access почитать, только не "Для того, чтобы создать связь между таблицами откройте Конструктор..."


Квэнди   (2004-08-13 16:25:00) [35]

Ega23 © так какого не знаю, может спросишь чтонить конкретное? может смогу помочь приходилось частенько сталкиваться.. хотя впринципе многие вопросы решаются с помощью help Access хотя я не помню есть ли там описание SQl..


Вика   (2004-08-13 16:25:00) [36]

Ну да все правильно, совсем уже зашпариласть с этими SQL'ми и Dlph'ями :)


Квэнди   (2004-08-13 16:23:00) [37]

Вика а разве етот набор не является той самой временной таблицей?
или записи могут пересекаться? т.е. может быть такое что в временной таблице у кого- то стоит USED, и в главной таблице у етого же человека тоже USED?


Ega23   (2004-08-13 16:21:00) [38]

Select * FROM TempTable where Id=Твоё_значение
:о)

Кстати, где описание диалекта SQL для Access можно найти?


Вика   (2004-08-13 16:19:00) [39]

2 Skyle ©  (13.08.04 15:26) [13]

А как возвращать из Update набор измененных записей для отчета, сори за тупой вопрос...


Квэнди   (2004-08-13 16:18:00) [40]

Ega23 ... ето сложно назвать примером по теме :) так как подразумевается пример с использование БД существующих форматов... а в частности разговор шел о SQL.. так что посмотрим на пример :))


Страницы:   1 2 3 4

Наверх

Титульная страница Поиск, карта сайта Написать письмо