PDA

View Full Version : ساخت جدول در زمان اجرا(Sql server)



Tasnim
یک شنبه 01 اردیبهشت 1387, 18:56 عصر
سلام دوستان من یه برنامهنوشتم که بانک اون sql بعد حالا یه سری تغییرات توش اعمال کردم که لازم تعدادی جدول جدید به بانکم اضافه بشه و چند تا از جداول موجود هم بعضی از فیلداشون حذف بشه یا اینکه فیلد جدیدی با مقدار به اون اضافه کنم
میشه کمکم کنید چطور میتونم این کارو بکنم از طریق دلفی بدون اینکه نیاز باشه خودم یکی یکی تغییراتو اعمال کنم
خیلی ممنون

حمیدرضاصادقیان
یک شنبه 01 اردیبهشت 1387, 20:15 عصر
سلام .خوب دوست عزیز شما تمامی تغییرات رو در یک فایل sql بنویسید با پسوند Sql.
بعد در برنامه وقتی که میخواد اجرا بشه اون فایل رو با دستور osql اجرا کن.
برای جداول جدیدت روی جداولت راست کلیک کن بعد generate script رو بزن بعد یک فایل از ساختار جدولت میسازه . بعد محتویات داخل اون فایل رو داخل فایلی که ساختی کپی کن ، و از تمامی جداولت این کارو بکن. فیلدهای جدید هم با دستور Alter table میتونی به جدولت اضافه کنی.
حتی به جای این کار میتونی تمامی این دستورات رو داخل adoquery قرار بدی و موقع اجرای برنامه ات اونو execute کنی.

SYNDROME
یک شنبه 01 اردیبهشت 1387, 22:19 عصر
حتی به جای این کار میتونی تمامی این دستورات رو داخل adoquery قرار بدی و موقع اجرای برنامه ات اونو execute کنی.
فقط یک نکته :
دستورات فوق را در زمان اجرا برنامه اجرا نکنید و فقط در یک منو به عنوان Update ویا یک exe دیگران قرار دهید تا هر بار که برنامه اجرا می شود دستورات اجرا نشود.
موفق باشید

حمیدرضاصادقیان
یک شنبه 01 اردیبهشت 1387, 22:23 عصر
سلام.ممنون از راهنماییت.حرف syndrome عزیز درست هست .البته من که در اول برنامه قرار دادم با یک مقداری اونو چک کردم در داخل دیتابیس.یک فیلد برای بروز رسانی قرار دادم و هروقت که بروز میشه اونو کنترل میکنم.و هر وقت که نسخه جدید میدم و نیاز هست که script مورد نظر اجرا بشه در داخل برنامه یک شماره اونو اضافه میکنم.