تور لحظه آخری
امروز : چهارشنبه ، 6 تیر 1403    احادیث و روایات:  امام علی (ع):دانش منافق در زبان او و دانش مؤمن در كردار اوست.
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

اتاق فرار

خرید ووچر پرفکت مانی

تریدینگ ویو

کاشت ابرو

لمینت دندان

ونداد کولر

صرافی ارکی چنج

صرافی rkchange

دانلود سریال سووشون

دانلود فیلم

ناب مووی

رسانه حرف تو - مقایسه و اشتراک تجربه خرید

سرور اختصاصی ایران

تور دبی

دزدگیر منزل

تشریفات روناک

اجاره سند در شیراز

قیمت فنس

armanekasbokar

armanetejarat

صندوق تضمین

پیچ و مهره

طراحی کاتالوگ فوری

دانلود کتاب صوتی

تعمیرات مک بوک

Future Innovate Tech

آموزشگاه آرایشگری مردانه شفیع رسالت

پی جو مشاغل برتر شیراز

تسمه تردمیل - روغن تردمیل

قیمت فرش

آموزش کیک پزی در تهران

لوله بازکنی تهران

خرید یخچال خارجی

ویترین طلا

کاشت پای مصنوعی

مورگیج

میز جلو مبلی

سود سوز آور

پراپ رابین سود

هتل 5 ستاره شیراز

آراد برندینگ

رنگ استخری

سایبان ماشین

قالیشویی در تهران

مبل استیل

بهترین وکیل تهران

مبلمان اداری

شرکت حسابداری

نظرسنجی انتخابات 1403

استعداد تحلیلی

کی شاپ

خرید دانه قهوه

دانلود رمان

وکیل کرج

آمپول بیوتین بپانتین

پرس برک

بهترین پکیج کنکور

خرید تیشرت مردانه

خرید نشادر

خرید یخچال خارجی

وکیل تبریز

اجاره سند

 






آمار وبسایت

 تعداد کل بازدیدها : 1802153845




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

سئوال در مورد تحویل Update برنامه به کاربر


واضح آرشیو وب فارسی:سایت ریسک: View Full Version : سئوال در مورد تحویل Update برنامه به کاربر M-B-M15-08-2008, 03:16 PMسلام زمانی که یک قسمت از نرم افزار به مشتری تحویل داده می شود و قسمت بعدی نرم افزار تکمیل شده و با قسمت اول ترکیب می شود و آماده تحویل به مشتری می شود (پروژه با C# و پایگاه داده با Sql) 1. چگونه باید ورژن جدید را جایکزین ورژن قبلی کرد؟ (آیا با کپی کردن فایل .Exe و سایر Dll ها و ابزار در مسیر قبلی مشکلی پیش نمی آید و نرم افزار جدید به خوبی کار می کند؟) 2. پایگاه داده برنامه را چگونه باید جایگزین کرد؟ (فرض کنید در دیتابیس جدید چند جدول نسبت به دیتابیس قبلی افزوده شده است و در دیتابیس قبلی که به کاربر تحویل داده شده است اطلاعات وارد شده است که این اطلاعات نباید از بین برود) _H2_15-08-2008, 04:49 PMسلام جواب لول: شما برنامه را نوشتید! بهتر باید برنامه تان چگونه عمل میکند، در کل نباید تفاوتی کند و باید به راحتی کار کند. جواب دوم: بهترین راه که خود من هم انجام میدهم، تهیه یک فایل sql از کلیه تغییرات است، یعنی با اجرای این sql در سرور تمام فیلدها و جداول مورد نظر تغییر کنند و امکانات مورد نیاز جدید ساخته شوند. M-B-M16-08-2008, 02:46 AMسلام منظورتون رو متوجه نشدم شما برنامه را نوشتید! "" بهتر باید برنامه تان چگونه عمل میکند، "" در کل نباید تفاوتی کند و باید به راحتی کار کند. در مورد این یکی هم لطفا بیشتر و به زبان ساده توضیح بدین تا بتونم پیاده کنم جواب دوم: بهترین راه که خود من هم انجام میدهم، تهیه یک فایل sql از کلیه تغییرات است، یعنی با اجرای این sql در سرور تمام فیلدها و جداول مورد نظر تغییر کنند و امکانات مورد نیاز جدید ساخته شوند. _H2_16-08-2008, 11:24 PMسلام منظورتون رو متوجه نشدمبیخیال! ...به زبان ساده توضیح بدین ... مثلاً به نیمچه اسکریپ زیر نگاه کنید، برای مواردی که تغییرات جدول زیاد است و ستون هایی باید حذف و ستون هایی اضافه شوند، روش زیر خوب است. یک نمونه ویرایش View و storedprocedure هم جای دادم. این نمونه فوق العاده ساده و کوتاه است ولی گمانم شاید قسمتهای از آن برای شما نیاز نشود. (گفتم کمی کامل تر باشد و حالات بیشتری را نشان دهد) این کد جزئیات جدول قبلی را حذف میکند و جدول جدیدی میسازد و دیتاها را کپی میکند و کل جدول قبلی را حذف میکند. شما میتوانید فقط از بخش ساخت جدول جدیدش استفاده کنید. نکته مهم تراکنشی بودن عملیات است، قانون همه یا هیچ، یا همه دستورات با موفقیت به پایان میرسند یا هیچ کدام انجام نمیشوند. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! M-B-M17-08-2008, 12:59 PMبیخیال! اشتباه تایپی بود یا ... _H2_17-08-2008, 05:08 PMسلام مجدد یک "بدانید" جا افتاده ...بهتر باید بدانید برنامه تان چگونه عمل میکند ... M-B-M16-09-2008, 01:46 AMسلام من متوجه نشدم که این دستورات را باید در کجا تایپ کنم؛ آیا همه باید در یکجا تایپ شود یا هر قسمت در یک فایل جدا؟ من یک جدول مثال می زنم شما اگر که لطف کنید و کد آن را بنویسید ممنون می شوم !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!!این تیدیل را چگونه انجام بدهم و اطلاعات جدول قبلی را چگونه در این جدول بریزم یک سئوال گوچک دیگر: من در حین تست نرم افزار اطلاعاتی را وارد می کنم زمانی که برنامه را تحویل می دهم چکار کنم که فیلدهایی که از نوع AutoNumber است از بین نرود (چون زمانی که یک بار یک رکورد که یک فیلد آن از نوع AutoNumber است ایجاد می شود؛ وقتی رکورد بعدی ایجاد می شود دیگر این عدد AutoNumber قابل استفاه نیست) _H2_17-09-2008, 01:08 AMسلام تیدیل را چگونه انجام بدهم و اطلاعات جدول قبلی را چگونه در این جدول بریزم اطلاعات مندرج شما برای دادن دستور SQL کافی نست. مثلاً: - CuId از نوع AutoNumber است؟ - کدام فیلدها قابلیت NULL دارند؟ - محدودیت های جدول (CONSTRAINT) شما چه هستند؟ (البته با توجه به اینکه بعید میدانم خودتان محدودیتی اضافه کده باشید و فیلدهایتان هم مثلاً Default داشته باشد، شاید هیچ محدودیتی نداشته باشید ولی اگر باشد ...) - مقادیر قدیمی و قبلی Gen چه بوده اند؟ M و W یا 1 و 0 ؟ چه کاراکتر قدیمی باید با 1 عددی جدید و یا صفر عددی جدید تعویض شود؟ در عوض این سوالتان کامل و مشخص و قابل جواب دادن است: من در حین تست نرم افزار اطلاعاتی را وارد می کنم زمانی که برنامه را تحویل می دهم چکار کنم که فیلدهایی که از نوع AutoNumber است از بین نرود (چون زمانی که یک بار یک رکورد که یک فیلد آن از نوع AutoNumber است ایجاد می شود؛ وقتی رکورد بعدی ایجاد می شود دیگر این عدد AutoNumber قابل استفاه نیست) دستور SQL زیر مشخص کننده حد بالای اعدادی است که استفاده شده اند و عدد بعدی مورد استفاده از جمع این عدد با مقدار افزایش (معمولاً یک) بدست می آید. !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! احتمالا شما به جای 123 از مقدار صفر استفاده خواهید کرد. موفق باشید. M-B-M17-09-2008, 04:21 PMسلام دوست عزیز اطلاعات جدول به شکل زیر است: ردیف سوم قابلیت Null بودن را نمایش می دهد . هیچگونه محدودیتی برای جدول اعمال نشده است . در فیلد Gen قبلا نیز مقدار 0و1 ذخیره می شده است (0 برای مرد و 1 برای زن، مانند جدول جدید) همچنین فیلد Rank در جدول قدیم وجود داشته که در جدول جدید حذف شده است؛ فیلد IdProblem در جدول قدیم وجود نداشته که در جدول جدید بوجود آمده است(دو فیلد Rank و Problem هیچ گونه ربطی به هم ندارند) !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! در مورد قسمت دوم: ببخشید من منظورم را نتوانستم درست بیان کنم. منظور من این است که چکارکنم که وقتی Id باید از 1000 شروع شود و من در حین تست برنامه اطلاعات وارد می کنم، چکار کنم که وقتی برنامه را به کاربر تحویل می دهم شماره ها دوباره از 1000 شروع شود؟ _H2_17-09-2008, 10:04 PMسلام 1) !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! databasename را با نام دیتابیس و tablename را با نام جدولتان Replace کنید. 2) آن هم یک دستور SQL است، مثل موارد فوق و یا دستور SELECT . دستور زیر را میتوانید از طریق یک شی Command و یا گزینه NewQuery در VS و SSMS اجرا کنید !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! M-B-M18-09-2008, 03:26 PMسلام دوست عزیز ممنون از راهنماییتون اما مهمترین قسمت سئوال من رو جواب ندادید! ببخشید که من سئوالات ابتدایی می پرسم! من متوجه نشدم که این دستورات را باید در کجا تایپ کنم و چگونه اجرا کنم؟ _H2_18-09-2008, 11:22 PMسلام من متوجه نشدم که این دستورات را باید در کجا تایپ کنم و چگونه اجرا کنم؟ دستور زیر را میتوانید از طریق یک شی Command و یا گزینه NewQuery در VS و SSMS اجرا کنید در دات نتی ترین حالت و بدون هیچ ابزاری کافیست یک System.Data.SqlClient.SqlCommand بسازید و دستورات فوق را به آن بدهید یک برنامه ساده بسازید با دو TextBox ، یکی برای ConnecTionString و یک بزرگتر و چند خطی برای SQL با یک دکمه اجرا... کدش هم خیلی خیلی ساده میشود !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! M-B-M19-09-2008, 12:00 AMفکر کنم شما در مورد قسمت دوم بحث صحبت می کنید اما منظور من قسمت اول بود! _H2_19-09-2008, 12:13 AMسلام عزیز دل بابا ! قسمت اول و دوم نداره! دستور SQL دستور SQL است! (بازم چشم بسته زیر آبی رفتم) میخواهید یک SELECT یا UTE ناقابل باشد یا یک DBCC یا یک مجموعه عظیم چند کیلوبایتی، هیچ فرقی ندارد. فکر کردید برای چی گفتم که از یک TextBox بزرگ چند خطی استفاده کنید؟؟؟؟؟ برای اینکه فقط یک خط ... DBCC CHECKIDENT را در ان تایپ کنید؟ T-SQL خودش برای خودش یک نیمچه زبان برنامه نویسی شده، یک SELECT و INSERT نیست که در یک ساعت یاد میدهند! تست کنید برادر، جواب نداد،همچنان در خدمت هستم. M-B-M19-09-2008, 02:29 AMسلام من دیتابیس را به SqlServer و Attach کردم و !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!!و دستور نوشته شده: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! و خطای داده شده: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! و متن کامل خطا: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! M-B-M19-09-2008, 02:29 AMسلام من دیتابیس را به SqlServer و Attach کردم و !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! و دستور نوشته شده: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! و خطای داده شده: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! و متن کامل خطا: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! _H2_19-09-2008, 12:17 PMسلام به نظر می رسد انشا ا... از sqlserver2005 استفاده میکنید؟ بلوک (WITH (HOLDLOCK TABLOCKX را حذف کنید و مجدداً تست کنید. M-B-M20-09-2008, 05:39 PMسلام فکر می کنم اشتباه تایپی داشتم، چون روی یک جدول دیگر جواب داد(همون کد اولی) ممنون M-B-M21-09-2008, 10:29 PMسلام ببخشید من اینقدر مزاحم شما می شم، یک سئوال داشتم من یک جدول دارم که اطلاعات آن از قبل مشخص می باشد (اطلاعات این جدول در هنگام Design برنامه توسط برنامه نویس وارد شده است) این جدول را چگونه به دیتابیس کاربر اضافه کنم؟ _H2_21-09-2008, 11:15 PMسلام من یک جدول دارم که اطلاعات آن از قبل مشخص می باشد (اطلاعات این جدول در هنگام Design برنامه توسط برنامه نویس وارد شده است) این جدول را چگونه به دیتابیس کاربر اضافه کنم؟ اتفقاً کار خوبی است، معمولاً برای نظیر کردن اعداد ایندکس شده خاص در سطح فیلدهای جداول مختلف دیتابیس که اعداشان یک معنی خاص دارد، بد نیست یک جدول ثابت اضافه کنیم. ولی خوب این جدول مگر با جداول دیگر تفاوتی دارد؟ مثل بقیه بسازیدش! اگر هم منظورتان آن است که پروژه را تحویل داده اید و حالا طبق آپدید جدید، باید جدولی اضافه شود، این هم مشکلی ندارد. کافیست از همان شبه اسکریپ بالا و بخش های CREATE TABLE و ALTER TABLE استفاده کنید، اگر خواستید حتی میتوانید مقادیر جدول را هم با یک سری دستور INSERT در همان اسکریپ اضافه کنید. البته بعد از ساخت جدول، برای INSERT کردن اطلاعات میتوانید از نسخه ذخیره شده اطلاعات در xml و لود در dataset و اعمال در دیتابیس استفاده کنید. همانطور که قبلاً هم اشاره ای کردم، شما به راحیت میتوانید با خود دات نت یک پروزه کوچک exe بسازید که مسئول آپگراید برنامه تان باشد، به طوری که با اجرای آن در رایانه هدف، این exe کوچک خودش تمام فایلهای جدید را کپی و یا replace کند و تغییرات لازم را هم در دیتابیس اعمال کند. در هر صورت همچنان سوالی داشتید بپرسید. M-B-M23-09-2008, 01:20 AMسلام من در ساخت Table مشکلی ندارم. مشکل من Insert حدود 2000 رکورد در آن است. این 2000 رکورد را چگونه Insert کنم؟ M-B-M23-09-2008, 02:16 AMسلام راستی اینو یادم رفت بگم! StoredProcedure ها رو چگونه ایجاد کنم یا تغییر بدم؟ مثلا در این این مثال ساده اینو !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!!چطور به این تبدیل کنم؟ !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!!لطفا طریقه ایجاد را نیز توضیح دهید یک سئوال کوچک دیگه هم اینکه Diagram رو چگونه تولید کنم یا تغییر بدم؟ (خیلی کوچک بود. نه؟) یکی دیگه هم همین الان یادم اومد: این دستورات را شما خودتان می نویسید یا از جایی بدست می آورید؟ (مثلا زمان ایجاد یا تغییر table یا StoredProcedure بصورت عملی (بدون استفاده از کد)راهی هست که کد تولید شده را مشاهده کرد) ببخشید من اینقدر سئوال می پرسم! M-B-M24-09-2008, 09:39 AMPlease Help Me! _H2_24-09-2008, 12:02 PMسلام من در ساخت Table مشکلی ندارم. مشکل من Insert حدود 2000 رکورد در آن است. این 2000 رکورد را چگونه Insert کنم؟ همانطور که گفتم راه XML مناسب است. برای اولین بار که دیتابیس را تحویل داده اید که کلاً مشکلی وجود ندارد. ولی برای آپدید های بعدی میتوانید از xml استفاده کنید، یک چیزی شبیه این...: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! حتی میتوانید xml را در خود برنامه exe آپدیت، یکپارچه کنید و با کمک Stream استفاده کنید و همچنان یک exe تکی را به مشتری تحویل دهید. راستی اینو یادم رفت بگم! StoredProcedure ها رو چگونه ایجاد کنم یا تغییر بدم؟ لطفا طریقه ایجاد را نیز توضیح دهید دستور TSQL مربوط به ساخت یک SP شبیه این است: !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! در حالیکه دستور تغییر spname که قبلاً وجود داشته، فقط به جای CREATE با ALTER شروع میشود. یک سئوال کوچک دیگه هم اینکه Diagram رو چگونه تولید کنم یا تغییر بدم؟ من شخصاً دستور TSQL ای برای تولید Diagram بلد نیستم، ولی این لزوماً به معنی وجود نداشتن دستور نیست. فقط میدانم که اطلاعاتش هم در جدول سیستمی sysdiagrams ذخیره میوشد. با خود SSMS میتوانید بسازید و ویرایش کنید. این دستورات را شما خودتان می نویسید یا از جایی بدست می آورید؟ چندان مشکل نیست که نتوان نوشت، مخصوصاً که در برخی موارد نیاز به یک سری ابتکارات است که از دست نرم افزار خودکار ساخته نیست، مثلاً اگر در مثال قبلی خودتان فیلد قدیمی Gen به جای 0 و 1 حاوی W و M بود و حالا میخواستید به جایش 0 و 1 عددی قرار دهید... برای این کار باید خودتان شخصاً کد بنویسید. پیچیده ترین تغییرات روی جداول است که حاوی دیتا هستند و باید دیتایشان حفظ شود، بقیه اشیای دیتابیس هیچ مشکلی ندارند و فرق ساخت و آپدیتشان در حد فرق CREATE و ALTER است. در ضمینه بقیه اشاء بجز جداول، به راحتی میتوانید از SSMS و با توجه به لغت CREATE و ALTER استفاده کنید . اما در مورد ویرایش جداول، قبلاً SSMS2005 کمک هایی میکرد ولی الآن که من SSMS2008 را دارم، نمیدانم برای چه نمیتوانم از این کمک ها استفاده کنم، یا من هنوز به 2008 عادت نکرده ام و بلد نیستم و یا این امکانات به دلایل نامشخصی حذف شده. Please Help Me میبخشید، فراموشن نکرده بودم، ولی یک کم وقت کم اورده بودم... سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 1181]

bt

اضافه شدن مطلب/حذف مطلب




-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن