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

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

Имя таблицы как параметр запроса


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

StriderMan ©   (2006-08-02 20:19:00) 

Нужно написать хранимую процедуру, которая будет работать сразу для нескольких таблиц.

Можно ли как-то передать в запрос имя таблицы?


StriderMan   (2006-08-03 18:41:00) [41]


> Ega23 ©   (03.08.06 17:45) [37]

это поле называет КОД. Это код элемента в справочнике. Некий уникальный идентификатор, ПОНЯТНЫЙ и доступный пользователю.

вы с 1С знакомы?


Ega23   (2006-08-03 17:45:00) [42]


> я его и генерю при добавлении записи. но пользователь в
> праве его менять.


Непонятно. Честное слово, непонятно зачем такое поле нужно...


StriderMan   (2006-08-03 17:36:00) [43]


> Ega23 ©   (03.08.06 17:34) [35]
> Я к тому, что ты его сам генерить должен.

я его и генерю при добавлении записи. но пользователь в праве его менять.


Ega23   (2006-08-03 17:34:00) [44]

Я к тому, что ты его сам генерить должен.


StriderMan   (2006-08-03 17:31:00) [45]


> Ega23 ©   (03.08.06 17:29) [32]
> Если код может менять пользователь, то какое же это уникальное
> значение?

а почему бы и нет? уникальное в пределах таблицы. Если пользователь пытается ввести неуникальное, то корректно ругаемся.


StriderMan   (2006-08-03 17:30:00) [46]


> Dok   (03.08.06 17:17) [30]
> Johnmen ©   (03.08.06 17:28) [31]

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


Ega23   (2006-08-03 17:29:00) [47]

Если код может менять пользователь, то какое же это уникальное значение?


Johnmen   (2006-08-03 17:28:00) [48]

Точно что-то не то в консерватории...:)


Dok   (2006-08-03 17:17:00) [49]


> то есть табличка. в ней есть уникальное поле "код". и есть
> кпопочки +/- которыми код можно менять.

т.е. на каждый пук пользователя лезем в базу?


StriderMan   (2006-08-03 16:53:00) [50]


> зачем это все?


если знаете как это сделать проще, поделитесь, буду рад.


StriderMan   (2006-08-03 16:52:00) [51]

ну вот такая вот задача.

если конкретно,
то есть табличка. в ней есть уникальное поле "код". и есть кпопочки +/- которыми код можно менять.


Dok   (2006-08-03 16:34:00) [52]


> что такое ПК? ключевое поле? нет не ключевое.

Первичны Ключ


> от этого зависит логика.
> 1. узнаем, есть ли запись со значением поля, которое нам
> надо выставить в текущей записи.
> 2. Если нет - то просто меняем в текущей. Если есть - то
> меняем у найденной записи поле в некое свободное значение
> 3. меняем у текущей записи поле в нужное значение
> 4. меняем у записи, которую поменяли в пункте 2 значение
> поля в то, которое было у текущей до начала всей операции.
>

зачем это все?


StriderMan   (2006-08-03 16:23:00) [53]


> если это ПК, то играешся с огнем.

что такое ПК? ключевое поле? нет не ключевое.


> 4-й зачем?

я ж написал зачем:

> а 4 - SELECT чтобы определить что мы "наткнулись" на такую запись.

от этого зависит логика.
1. узнаем, есть ли запись со значением поля, которое нам надо выставить в текущей записи.
2. Если нет - то просто меняем в текущей. Если есть - то меняем у найденной записи поле в некое свободное значение
3. меняем у текущей записи поле в нужное значение
4. меняем у записи, которую поменяли в пункте 2 значение поля в то, которое было у текущей до начала всей операции.


Dok   (2006-08-03 16:17:00) [54]


> ничего странного. Инкрементное или декрементное изменение
> уникального поля в таблице. когда натыкаемся на уже существующую
> запись, нужно поменять местами значения уникального поля
> в двух записях.

если это ПК, то играешся с огнем.

> поле-то уникальное! поэтому приходится через промежуточное
> значение. итого 3. а 4 - SELECT чтобы определить что мы
> "наткнулись" на такую запись.

Согласен 3 запроса. 4-й зачем?


StriderMan   (2006-08-03 16:04:00) [55]


> Dok   (03.08.06 15:59) [22]

поле-то уникальное! поэтому приходится через промежуточное значение. итого 3. а 4 - SELECT чтобы определить что мы "наткнулись" на такую запись.


StriderMan   (2006-08-03 15:59:00) [56]


> Очень странная задача

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


Dok   (2006-08-03 15:59:00) [57]


> чтобы не кидать с клиента несколько запросов. а именно 4
> штуки

т.е. 4 запроса поменять значения у 2-х записей? 2 запроса. где четыре? И если это часто, то что-то в консерватории не так.


Sergey13   (2006-08-03 15:55:00) [58]

> [18] StriderMan ©   (03.08.06 15:50)

Очень странная задача. Если она постоянная (а иначе зачем ХП), то я бы задумался об основах.


StriderMan   (2006-08-03 15:55:00) [59]


> и? зачем тут ХП?

чтобы не кидать с клиента несколько запросов. а именно 4 штуки.


Dok   (2006-08-03 15:52:00) [60]


> у двух записи в таблице взаимно поменять значение уникального
> поля.

и? зачем тут ХП?


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

Наверх

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