![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Имя таблицы как параметр запроса
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]
> у двух записи в таблице взаимно поменять значение уникального
> поля.
и? зачем тут ХП?