PDA

View Full Version : چگونگی بروز رسانی یک دیتابیس



ب- تات
دوشنبه 12 آذر 1386, 13:43 عصر
چگونه میتوان کلیه اجزای یک دیتابیس مانند
View
Sp
Trigger
Const
Table
Pk
Fk
کلیه اجزای جدول مانند نوع فیلد و توضیح فیلد و کلیه مشخصات دیگر را واکشی کرد تا همین اطلاعات در جای دیگر برای دیتابیس مشابه و بمنظور بروز رسانی استفاده شود؟

حمیدرضاصادقیان
دوشنبه 12 آذر 1386, 15:39 عصر
شما می توانید این اطلاعات را از جداول سیستمی مانند sysdatabases,sysobjects و... بدست اورید.همچنین میتونید از view information_schema استفاده کنید.که من خودم ترجیح میدم مستقیما از جداول سیستمی اینکارو انجام بدم زیرا استفاده از information_Schema خیلی سربار داره.من داخل یک script که استفاده کردم تقریبا 15 ثانیه طول میکشید تا اجرا بشه ولی با تبدیل اون به روشی که گفتم 1 ثانیه طول کشید.

Cave_Man
دوشنبه 12 آذر 1386, 15:42 عصر
یعنی با استفاده از جدوال سیستمی دقیقا میشه ایندکس گذاری رو انجام داد؟
یا جداول رو ایجاد کرد؟
مثلا بجای استفاده از دستورات SQL یک ردیف دو جدوال مرتبط ایجاد کرد و یک Table ایجاد نمود؟

ب- تات
دوشنبه 12 آذر 1386, 16:11 عصر
بسیار متشکر از پاسخ شما. اگر امکان داره نمونه کدهایی رو برای این کار راهنمائی فرمائید

حمیدرضاصادقیان
دوشنبه 12 آذر 1386, 22:05 عصر
نه دوست عزیز با جداول سیستمی نمیشه چیزی رو create کرد.من مقداری گنگ توضیح دادم ببخشید.ایشون پرسیدند چطور میشه این اطلاعات رو واکشی کرد من هم توضیح دادم از داخل جداول سیستمی.
به طور مثال من میخوام یک فیلد به جدولم اضافه کنم کد زیر رو می نویسم.


If not exists(select name from sysobjects where name='Radif) '
alter table Table1
add column [radif] int not null

یا شما میتونی از کل جداولت یک Script تهیه کنی و با استفاده از دستور osql اونو صدا بزنی تا تمامی تغییرات روی جداولت اعمال بشه.