| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MS SQL Server > использование вьешек |
| Автор: Satana 20.7.2005, 15:48 |
| люди ну выручите с вьюшками в MSSQL 2000. Короче задача такая нужно с помощью вьюшек вставлять данные в реальные таблицы. А как ет делать чото не представляю. Если можно то кинте в меня хотябы общим примером как это все можно сделать, с остальным думаю что разберусь сам. |
| Автор: kobra 20.7.2005, 16:27 | ||
с редактируемими дело обстаит просто. пишеш insert into . . . и работает. с нередактируемими дела обстаят сложнее (из названия ясно не редактируются). лично я, для вставки/редактирования/удаления всегда создаю хранимые процедуры. чего и вам советую. |
| Автор: Vit 20.7.2005, 18:01 |
| Для редактирования нередактируемых используют триггеры "INSTEAD OF" |
| Автор: Satana 21.7.2005, 07:16 | ||||
да там фишка такая что есть прога которая должна заливать данные, а поля и таблицы совсем не такие какие есть у меня, мой шеф говорит что можно забацать это с помощью вьюшек, хотя мне бы наверное было проще создать такие же таблицы как в оригинальной проге и триггерами раскидывать в нужные мне таблицы. |
| Автор: leniviy 2.9.2005, 16:17 |
| Проблемы с инстэдоф триггерами на вьюхах: 1) У Вас будут проблемы с identity. Вы должны будете явно указывать значение identity поля, н-р -1, иначе он ругнется, что Null'ы запрещены 2) Если вы решите проблему 1, разрешив Null'ы, н-р ... as select id = cast( id as int ) + 0 , ... у Вас появится другая: не будет работать индекс при выборке из вьюхи. 3) У Вас будут проблемы с Default constraint ( на вьюху его не повесишь ) 4) И напоследок самое убойное: Вы не сможете использовать вьюху в запросах типа update [<имя вьюхи>] set ... from [<имя вьюхи>] и delete [<имя вьюхи>] from [<имя вьюхи>] Это все не баги . Это байдезайн |