Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 12:49 06.07.25 
Компютри и Интернет
   >> Бази данни
*Кратък преглед

Тема mssql scripting orderнови  
Автор z_free (людоед)
Публикувано06.06.05 23:58



Здравейте, налага ми се да ползвам mssql и когато генерирам sql script от enterprise manager (примерно на 10 нови обекта, които ползват един друг) мога ли да им задам в какъв ред да ги скриптва? Щото то ги скриптва в произволен ред, и после този скрипт не работи, тъй като опитва да създаде обект, който зависи от още несъздаден такъв.

-------------
Special killer double trouble triple extra nicotine monster!


Тема Re: mssql scripting orderнови [re: z_free]  
Автор Miro ()
Публикувано07.06.05 07:59



Не може - трябва сам да си ги подредиш

--
Miroslav Penchev



Тема Re: mssql scripting orderнови [re: z_free]  
Автор fiffy ()
Публикувано07.06.05 16:16



Едно стандартно решение на проблема е да генерираш 2 скрипта: за първия казваш на ЕМ да генерира само КРЕАТЕ ТАБЛЕ статемент-и (без ФК, ...), на втория казваш да генерира всичко останало. Изпълняваш ги един след друг и всичко ще е ок...

Епа, това е моето хоби...



Тема Re: mssql scripting orderнови [re: fiffy]  
Автор Miro ()
Публикувано07.06.05 17:55



Идеята не работи за VIEW-тата, защото може да има зависимости между самите view-та - а те няма как да се подредят, защото се генерират наведнъж.

--
Miroslav Penchev



Тема Re: mssql scripting orderнови [re: Miro]  
АвторMaлa (Нерегистриран)
Публикувано10.06.05 14:35



като "Genrate SQL script" прозореца и там има един таб "Formatting" И тан чекни "Generate script for all dependent objects" . Обърни внимание и на таба "Options" в смисъл. че и там можеш да указваш дали да се включат FK и PK.



Тема Re: mssql scripting order [re: Maлa]  
Автор Miro ()
Публикувано11.06.05 13:03



Но тези опции не ти подреждат VIEW-тата в необходимия за правилното създаване ред. Ако VIEW1 използва VIEW2 то напълно е възможно в генерирания скрипт първо да се създава VIEW1 и чак след него VIEW2. При което такъв скрипт ще гръмне и няма да може да създаде VIEW-тата.

--
Miroslav Penchev



Тема Re: mssql scripting orderнови [re: z_free]  
Автор AzSumZmei (^_^)
Публикувано11.06.05 13:33



Не е много произволен, по азбучен ред ги нарежда. По принцип за последния пач пише че го оправя но е работи читаво само за малко на брой обекти.
Аз като create-вам база от скрипт така, го пускам 5-6 пъти. В result pane-а търся 'ivalid', ако го няма значи сичко е ОК, ако го има .... четеш грешката.



Тема Re: mssql scripting orderнови [re: AzSumZmei]  
Автор Miro ()
Публикувано11.06.05 14:10



Пък да ви кажа аз как си решавам проблема :

Всеки един обект (таблица, view, функция и т.н.) от базата си има собствен скрипт файл. Ако трябва нещо да се променя по обекта - променя се неговия скрипт файл и се стартира към базата, за да се отрази промяната.

Когато трябва да се направи чисто нова база използвам следния трик: Прави се include.sql в който има само директиви #include <име на файл.sql> за всеки един обект, които са подредени според техните взаимни връзки. Когато ми трябва пълен скрипт на базата - пускам този include.sql (всъщност са над 20-тина такива файлове с #include-и) през един мой parser (нищо сложно, даже може да се ползва препроцесора на MSVC) и получавам изходен файл, в който са include-нати всички скриптове в подходящия ред.

--
Miroslav Penchev




*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2025 Dir.bg Всички права запазени.