صفحه 1 از 4 123 ... آخرآخر
نمایش نتایج 1 تا 40 از 154

نام تاپیک: Stored Procedure Generator

  1. #1
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست

    Stored Procedure Generator

    سلام.

    در SQL Server Enterprise Manager 2000 ابزاری وجود داشت که به کمک آن می شد به سختی Stored Procedure ها را بطور نیمه خودکار ایجاد کرد و از نوشتن آنها بصورت دستی خلاص شد. اون ابزار خیلی خوب نبود، اما بقول قدیمی ها کوزه شکسته ای بود که گاهی وقتا ازش آب می خوردیم.

    فقدان اون ابزار در SQL Server Management Studio 2005 باعث شد دنبال یک ابزار آماده بگردم، و راه دست ترین چیزی که یافتم این بود: EZStoredProc

    ابزار فوق هم تمام کارهایی که من میخواستم رو انجام نمی داد، و از نسخه آزمایشی اش استفاده میکردم، اونقدرها هم برام نمی ارزید که قیمت 45 دلاری اش رو پرداخت کنم و بخرمش.

    این روزها کمی وقت آزاد بیشتری دارم و میتونم بیشتر برای بازی با کد وقت بگذارم، بنابراین تصمیم گرفتم خودم یکی مثل اون، البته با قابلیت های مد نظرم رو بنویسم. نتیجه اش هم چیزی شده که تصویرش رو در زیر می بینید:



    اگر شما هم دوست دارید از یک ابزار آماده برای تولید Stored Procedure هاتون استفاده کنید می تونید از این برنامه استفاده کنید. چیز ساده ای است، اگر پیشنهادی برای بهتر شدنش دارید در خدمت هستم.

    کار کردن با این ابزار خیلی ساده است، اسم سرور رو وارد میکنید، دکمه Connect رو کلیک می کنید، دیتابیس، و سپس جدول مورد نظر رو انتخاب میکنید و کلید Generate ... رو کلیک میکنید.
    برای ایجاد Stored Procedure ها کافیه اسکریپت SQL ایجاد شده رو در SQL Management Studio در یک Query جدید Copy/Paste کنید و اجرایش کنید.

    بعدا که این برنامه کاملتر بشه سورس اش رو هم جهت مقاصد آموزشی ارائه خواهم داد.

    موفق باشید.
    فایل های ضمیمه فایل های ضمیمه
    پروژه های Open Source:


  2. 285 کاربر از مهدی کرامتی به خاطر این مطلب مفید تشکر کرده اند:

    1382_1382, 3246879av_3sg, 81579001, adonis, ali1662000, aliha499, alimirzaee_2155, alinwp, aliowaysee, alirzn, ali_ahr7, ali_asg, als_1360, Aminch.pc, aminicompeng, aminva2006, amin_1404, Amir Taghavi, amir20611, AmirAmiri, amirmk, amironline, ar.mahdian, araz_pashazadeh, awwex2007, ayda.eslami, azaditafakor, a_roshanfekr2, b.paseban, babak2000, bad_boy_2007, bardia goharbin, barnamehnevice, behiunforgiven, behnam-s, behradarya, behrooz, beh_develop, binyaft, Black_Hammer, Cave_Man, chaghoyekond, chasbonakam, codere_past, corona, danibland, dantecj2010, dark-man, darkwish, delasaee, Delphi Skyline, delphi5, delphi_programmer_2010, dildoo, Dr.Bronx, duji6967, eastprogrammer, efarzad, Ehsan Zand, ehsaniran59, ehsan_296, elardekani, electron_m, elmagol, engmmrj, esi_0o0, farashah_jalal, farnooshhp, farsoft, farzad_vb62, farzinf, felfely, FirstLine, galaxy1985, ghameshloe, ghasemi414, gh_k_1980, golhay2, golshiri, grand_ceasare, haddad, hadi-z, hadizolfi, hadi_rezai_hr, ham3d1988, hamed_611, hamid-nic, Hamid.Kad, hamid.shekasteh, hamidreza_baniebrahimi, Hamid_PaK, hasanain, hasti.s, Hesamzadeh, hjran abdpor, hlikehamed, hmahdavi921, hobab-theme, hosein.jozi, hoses83, hosseinrasouli, hossein_h62, hossein_sh2008, h_moradian, h_r_sh, IR-Developer, ir_programmer, Jahangard, jalalx, jamshid2002, jas1387, jaza_sa, karajoob, kazem.omara, khataei, khorsandreza, kzparsa, m110_110, mahack, Mahdi-563, MAHDIhp_devsq, Mahmood_M, MahmoudiNik, majidgbox, majidmir, majidrajab, malit, mamizadeh, mariaviolla, masmlink, Mbt925, mdsh1400, mdssoft, me1364, mehdi-r2, mehdimdp, mehdi_kamari, mehrang, mehran_kashefi, meliika, merlin_vista, meysampaknahad, microprolog-p96s, miiiti, milad222, minooFarjad, minoooooo, mitra_mir, mmd2009, mmramezani2101, mm_sedighi, Modernidea, Modifier, mohammad javad pishvaei, mohammadreza_1382, MohammadSoft, mohammad_kazem, mohsen-sh, mohsen1771, mohsen507, mohsen_1687, MOJTABAATEFEH, mosaferzaman, moslem.hady, mostafa8266, mostafa_sgh, mrb1748, MRmoon, mrt2081, mr_moghimkhani, mr_mtc, m_h_katebi, nasimsaba, Nasim_m, nasirrayan, nasser_p, nava_2012, Navid7h, nemidonam, NewFoxStudent, new_programer_79, niaz66, nice boy, niknam_mh, nilda_15, Nima NT, NNIIHHOO87, notlikeothers, nunegandom, object, omely35, omid1240, oracle, paysokhan, persian_bigboy, pooyan3000, powerboy2988, pranses_smt, qanewaisi, r.ghost, Radikal1001, rahele_sa, rahmanabadi, rana-writes, razavi_university, reuonis, reza.bn2005, reza1371, reza2012, reza344, reza6384, rwxrwx, R_Rajaee_Rad, s.mostafa.rahmani, sadra1234, saeedehl2000, saeid69, sama_milani, SANBOR, sara.karimi, sarasara, sardari, sari-1369, sarieta, sas523, sd_121, Securebit, seeco1234, seniamail, sepehr_sepehr, seven_7_sky, shadi khanum, shadow666, shervin837, simple, siona barnamenevis, SM_Azarani, someCoder, sorena2000, soroush_vs, sos2663, spicirmkh, stabesh, stahad1, StepUp360, sunfarshid, Sweety, na3er-faraji, s_salavati2002, tc1000, TEIMOOR, ultimator, فرهاد کریمی, محسن شامحمدی, یک دوست, ژیار رحیمی, کوارتز صورتی, پاسکال 1, پرواز, vahid dot net, vahidkarimane, vahidvs, vbhamed, vcldeveloper, vesal, vlc_vb, xvision, xxxxxxxxxx, yadgar42, YASHIL9, zayens, zoltrix, ZonLine, _abiriamir, اوبالیت به بو, ایمان اختیاری, ب- تات, بهنام بهمنی, بانوآفتاب, حسین خانی, داش پدرام, سمانه علوی فر, سعید حمیدیانفر, شاپرک, علی متقی پور

  3. #2
    کاربر جدید
    تاریخ عضویت
    فروردین 1386
    پست
    12
    تشکر کردن
    41
    3 بار تشکر شده در یک پست
    جناب delphiassistant واقعا عالیه
    دستتون درد نکنه

  4. 3 کاربر از pranses_smt به خاطر این مطلب مفید تشکر کرده اند:


  5. #3
    کاربر دائمی آواتار hamed_bostan
    تاریخ عضویت
    فروردین 1384
    پست
    1,136
    تشکر کردن
    215
    93 بار تشکر شده در 65 پست
    من قبلا خودم این برنامه رو چون بهش نیاز داشتم نوشتم و بر اساس متد های خودم تو کد نویسی توابع vb.net اونها رو هم که استورد پروسیجر رو call میکرد نوشتم و خیلی هم حال داد . نقایصی هم داشت که دستی تو اسکریپت حل میشد و لی ثسمت استورد پرئسیجرش به کاملی برنامه بالا نبود .

    ممنون

  6. کاربرانی که به خاطر مطلب مفید hamed_bostan از وی تشکر کرده‌اند:


  7. #4
    کاربر دائمی آواتار hdv212
    تاریخ عضویت
    آبان 1384
    محل زندگی
    قم
    پست
    1,727
    تشکر کردن
    29
    1,309 بار تشکر شده در 394 پست
    DelphiAssistant عزیز، ممنون از این حرکت قشنگت.
    من برنامه تو اجرا کردم و به محض اینکه به سرور کانکت شدم این پیغام رو میده و فقط دیتابیس ها رو نشون میده (هیچ زیر مجموعه ای براشون درست نکرده):



    در ضمن اگه کاراکترهای فیلد پسورد به صورت * باشه، خیلی بهتره.
    موفق باشید.

  8. 2 کاربر از hdv212 به خاطر این مطلب مفید تشکر کرده اند:


  9. #5
    کاربر دائمی
    تاریخ عضویت
    تیر 1384
    پست
    588
    تشکر کردن
    16
    219 بار تشکر شده در 148 پست
    با تشکر.
    - جناب کرامتی از چه برنامه‌ای برای pack‌ کردن برنامه استفاده کرده‌اید؟

    چند پیشنهاد:
    - از یک ترد برای لیست کردن دیتابیس‌ها استفاده کنید تا برنامه هنگام اتصال به سرور در ابتدای کار هنگ نکنه.
    - یک دکمه کوچک ذخیره در فایل مفید‌تر خواهد بود (بجای کپی در حافظه).
    - اگر هر جدول را در یک tab‌ جداگانه باز کند زیباتر و کاربردی‌تر خواهد شد.
    - اضافه کردن یک منوی جهنده با کلیک راست روی جدول انتخابی همانند دکمه بالایی برای تولید رویه ذخیره شده معمول‌تر و آشناتر است.
    - بحث syntax highlighting رو هم می‌تونید اضافه کنید :)

  10. 2 کاربر از anubis_ir به خاطر این مطلب مفید تشکر کرده اند:


  11. #6
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    به محض اینکه به سرور کانکت شدم این پیغام رو میده و فقط دیتابیس ها رو نشون میده (هیچ زیر مجموعه ای براشون درست نکرده)
    احتمالا کاربر sa دسترسی کافی برای مشاهده view فوق نداره. برای تست این موضوع این دستور رو تو Management Studio تون اجرا کنید ببینید چی جواب میده:
    Select * from AdventureWorks.sys.tables


    @ anubis_ir:
    از لطف شما متشکرم.

    بنده از نرم افزار Xheo CodeVeil برای Protect کردن استفاده کردم.

    پیشنهادات شما را نیز مد نظر قرار خواهم داد.
    پروژه های Open Source:


  12. 7 کاربر از مهدی کرامتی به خاطر این مطلب مفید تشکر کرده اند:


  13. #7
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    مهر 1386
    محل زندگی
    Cave
    پست
    556
    تشکر کردن
    269
    75 بار تشکر شده در 66 پست
    آقای کرامتی عزیز این App Win32 نیست؟ ظاهرا دات نت هست درسته؟خواهشا به Win32 تبدیل کنید

  14. #8
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    خیر، مبتنی بر WinForms.Net است و برای اجرا به .Net Framework 2.0 نیاز دارد.

    بعدا که کاملتر شد شاید یک Native Image هم ازش منتشر نمودیم.
    پروژه های Open Source:


  15. 4 کاربر از مهدی کرامتی به خاطر این مطلب مفید تشکر کرده اند:


  16. #9
    کاربر دائمی آواتار پرواز
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    شیراز
    پست
    320
    تشکر کردن
    106
    44 بار تشکر شده در 28 پست
    جناب کرامتی دستتون درد نکنه. کار قشنگیه.

    فقط یه مشکل کوچولو:
    وقتی که sp مربوط به Update رو میسازه، تو شرط Where وقتی که عبارتی بعد از کلمه And قرار میگیره، بین اون عبارت و کلمه And فاصله وجود نداره: andFieldName

  17. #10
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    اصلاح شد.

    نسخه 1.0.1 ضمیمه شده است.
    فایل های ضمیمه فایل های ضمیمه
    پروژه های Open Source:



  18. #11
    کاربر دائمی آواتار hdv212
    تاریخ عضویت
    آبان 1384
    محل زندگی
    قم
    پست
    1,727
    تشکر کردن
    29
    1,309 بار تشکر شده در 394 پست
    احتمالا کاربر sa دسترسی کافی برای مشاهده view فوق نداره. برای تست این موضوع این دستور رو تو Management Studio تون اجرا کنید ببینید چی جواب میده:
    آقای کرامتی عزیز ممنون از لطفتون، مگه میشه sysAdmin دسترس به آبجکتی نداشته باشه ، خیر، توی دیتابیس جواب میده، احتمالا دلیل این خطا به خاطر اینه که من چندتا Instance روی سیستم نصب دارم، ولی آخه به اونا چه ربطی داره ؟
    منظورم Instance های دیگه س.

    در ضمن اگه امکان اتصال به Instanceهای نصب شده روی سیستم رو هم داشته باشه، عالیه، هرچند من هنوز موفق نشدم با موفقیت اجراش کنم.ولی ایده ی فوق العاده خوبیه، ما سراپا ایده ایم!

    بعدا که کاملتر شد شاید یک Native Image هم ازش منتشر نمودیم.
    چطوری منتشر میکنی ؟ به ما هم یاد بده استاد ؟ من هر جا خوندم ندیدم Narive Image برنامه های دات نت را Distribute کنن(یعنی میگفتن نمیشه)

  19. #12
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    مهر 1386
    محل زندگی
    Cave
    پست
    556
    تشکر کردن
    269
    75 بار تشکر شده در 66 پست
    من هر جا خوندم ندیدم Narive Image برنامه های دات نت را Distribute کنن(یعنی میگفتن نمیشه)
    امیدوارم که بشه چون خیلی دوست دارم از این برنامه استفاده کنم در غیر این صورت متاسفم که از استفاده از این برنامه محروم میشم!!

  20. #13
    کاربر دائمی آواتار hdv212
    تاریخ عضویت
    آبان 1384
    محل زندگی
    قم
    پست
    1,727
    تشکر کردن
    29
    1,309 بار تشکر شده در 394 پست
    امیدوارم که بشه چون خیلی دوست دارم از این برنامه استفاده کنم در غیر این صورت متاسفم که از استفاده از این برنامه محروم میشم!!
    البته این کمبود، دلیل داره، زمانی که Clr میخواد برنامه ی کامپایل شده به MsIL رو به NativeCode تبدیل کنه، کاملا هوشمندانه این کار رو انجام میده، یعنی با توجه به نوع پردازشگر و Performance سیستم، این کار رو انجام میده تا بیشترین کارایی رو داشته باشه، به خاطر همین، انتشار NativeCode برنامه های دات نت (تازه اگه بشه)، عملی غیر معقولانه س، چون Performance سیستمهای مختلف با هم فرق میکنه و شاید با کارایی سیستمی که اون NativeCode رو ساخته نباشه.
    منبع : Wrox Pro Csharp 2005

  21. #14
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    آقای کرامتی عزیز ممنون از لطفتون، مگه میشه sysAdmin دسترس به آبجکتی نداشته باشه ، خیر، توی دیتابیس جواب میده، احتمالا دلیل این خطا به خاطر اینه که من چندتا Instance روی سیستم نصب دارم، ولی آخه به اونا چه ربطی داره ؟
    منظورم Instance های دیگه س.
    فکر نمی کنم به Instance ربطی داشته باشه، چون Instance مورد نظر رو از روی Connection String که از تنظیمات وارد شده توسط شما تعیین میشه تشخیص میده.

    در ضمن اگه امکان اتصال به Instanceهای نصب شده روی سیستم رو هم داشته باشه، عالیه، هرچند من هنوز موفق نشدم با موفقیت اجراش کنم.ولی ایده ی فوق العاده خوبیه، ما سراپا ایده ایم!
    شما تو این نسخه هم میبایست بتوانید این کار را انجام دهید. در بخش Server Name نام سرور رو اینجوری وارد کنید ببینید جواب میده یا نه:
    ServerName\InstanceName
    پروژه های Open Source:


  22. #15
    کاربر دائمی آواتار hdv212
    تاریخ عضویت
    آبان 1384
    محل زندگی
    قم
    پست
    1,727
    تشکر کردن
    29
    1,309 بار تشکر شده در 394 پست
    شما تو این نسخه هم میبایست بتوانید این کار را انجام دهید. در بخش Server Name نام سرور رو اینجوری وارد کنید ببینید جواب میده یا نه
    ممنون از پاسخ خوبتون، منظورم این بود که بتونه Instance ها رو هم تشخیص بده.

  23. کاربرانی که به خاطر مطلب مفید hdv212 از وی تشکر کرده‌اند:


  24. #16
    کاربر دائمی آواتار mahdi_farhani
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    فولادشهر - اصفهان
    سن
    29
    پست
    1,227
    تشکر کردن
    61
    733 بار تشکر شده در 273 پست
    با تشکر از اقای کرامتی
    هنگام Connect کردن به من این ارور رو میده
    invalid object name sys.databases

  25. کاربرانی که به خاطر مطلب مفید mahdi_farhani از وی تشکر کرده‌اند:


  26. #17
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    نقل قول نوشته شده توسط mahdei_farhani مشاهده تاپیک
    با تشکر از اقای کرامتی
    هنگام Connect کردن به من این ارور رو میده
    invalid object name sys.databases
    آیا نام سرور را وارد می کنید؟
    پروژه های Open Source:


  27. #18
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    نسخه 1.4 با تغییرات زیر آماده شد:
    1. افزوده شدن یک Code Editor با قابلیت های Syntax Hilighting و Code Folding
    2. افزوده شدن امکان درج نام نویسنده SP در قسمت توضیحات بالای هر اسکریپت
    3. تشخیص و استفاده از شناسه MAX بعنوان طول رشته در فیلدهای char و ...





    فایل های ضمیمه فایل های ضمیمه
    پروژه های Open Source:


  28. 6 کاربر از مهدی کرامتی به خاطر این مطلب مفید تشکر کرده اند:


  29. #19
    VIP آواتار Behrouz_Rad
    تاریخ عضویت
    آذر 1383
    پست
    9,053
    تشکر کردن
    991
    6,197 بار تشکر شده در 1,979 پست
    نقل قول نوشته شده توسط hdv212
    ممنون از پاسخ خوبتون، منظورم این بود که بتونه Instance ها رو هم تشخیص بده.
    برای لیست کردن Instance ها میشه از SQL-DMO به شکل ذیل استفاده کرد:

    Dim oNames As SQLDMO.NameList
    Dim oSQLApp As New SQLDMO.Application
    oNames = oSQLApp.ListAvailableSQLServers()
    For i As Int32 = 1 To oNames.Count
    MessageBox.Show(oNames.Item(i))
    Next

    اگر چیزی برگشت داده نشد یعنی localhost

    موفق باشید.

  30. #20
    VIP آواتار Behrouz_Rad
    تاریخ عضویت
    آذر 1383
    پست
    9,053
    تشکر کردن
    991
    6,197 بار تشکر شده در 1,979 پست
    نقل قول نوشته شده توسط mahdie_farhani
    با تشکر از اقای کرامتی
    هنگام Connect کردن به من این ارور رو میده

    invalid object name sys.databases
    شما از SQL Server 2000 استفاده می کنید.
    در SQL Server 2000، نام دیتابیس ها در جدول sysdatabases نگهداری میشه اما در SQL Server 2005، نام دیتابیس ها در جدول sys.databases ذخیره میشه.
    جناب کرامتی با یک ساختار Try-Catch میشه این مشکل رو حل کرد و یا برای آگاهی از نسخه ی SQL Server، میشه از متغیر سیستمی Version@@ استفاده کرد.

    موفق باشید.
    آخرین ویرایش به وسیله Behrouz_Rad : سه شنبه 27 آذر 1386 در 15:11 بعد از ظهر

  31. #21
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    در SQL Server 2000، نام دیتابیس ها در جدول sysdatabases نگهداری میشه اما در SQL Server 2005، نام دیتابیس ها در جدول sys.databases ذخیره میشه.
    با تشکر از اشاره ای که کردید، این مورد اضافه شد.

    برای آگاهی از نسخه ی SQL Server، میشه از متغیر سیستمی Version@@ استفاده کرد
    من از این روش استفاده کردم:
    SELECT SERVERPROPERTY('ProductVersion') as ServerVersion


    نسخه 1.0.6 با تغییرات زیر آماده دریافت است (ضمیمه همراه پست را ببینید):
    1. سازگار شدن با SQL Server 2000
    2. بهینه شدن کدهای SQL استفاده شده برای تشخیص ستون های Identity و Primary Key

    از SQLDMO (برای بدست آوردن لیست Instance های در دسترس) استفاده نخواهم کرد، چون:
    1. همیشه درست کار نمی کنه.
    2. ممکنه رو سیستم کاربر نصب نباشه.
    3. افزودن Reference به Com Object مربوطه سربار برنامه رو بالا میبره.

    قابل توجه mahdei_farhani و hdv212:
    لطفا بررسی کنید ببینید هنوز اون مشکلات رو دارید یا نه.
    فایل های ضمیمه فایل های ضمیمه
    پروژه های Open Source:


  32. 8 کاربر از مهدی کرامتی به خاطر این مطلب مفید تشکر کرده اند:


  33. #22
    کاربر دائمی آواتار mahdi_farhani
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    فولادشهر - اصفهان
    سن
    29
    پست
    1,227
    تشکر کردن
    61
    733 بار تشکر شده در 273 پست
    دستتون درد نکنه ، جواب داد
    به نظر من اگر بشه همزمان چند Table را با هم انتخاب کرد خیلی بهتره .
    در ضمن بازم هم همون مشکل Relation ها که گفتم وجود داره ، Select شما هم به صورت ساده نوشته شده . من می خواهم Join ها و شرط Join هم بدست بیاد .
    اگر یه امکان دیگه هم بزارید خوب میشه ، به جای اینکه اول همه sp ها کلمه sp رو بزاره متغییر باشه ، یا حتی فرمت نامگذاری SP ها را بگیره ،
    اینهایی که گفتم من تو برنامم دارم .

  34. #23
    کاربر دائمی
    تاریخ عضویت
    تیر 1384
    پست
    588
    تشکر کردن
    16
    219 بار تشکر شده در 148 پست
    جناب اسیستنت،
    Don't use the prefix "sp_" in the stored procedure name if you need to create a stored procedure to run in a database other than the master database.
    http://www.mssqlcity.com/Tips/stored...timization.htm

  35. کاربرانی که به خاطر مطلب مفید anubis_ir از وی تشکر کرده‌اند:


  36. #24
    کاربر دائمی آواتار beh_develop
    تاریخ عضویت
    آذر 1386
    سن
    33
    پست
    111
    تشکر کردن
    20
    66 بار تشکر شده در 46 پست
    آقای اسیستانت دستتون درد نکنه، واقعا عالیه ، فقط برای من این پیغام خطا رو داد :

    Invalid column name 'NAME'.
    Invalid column name 'Name'.


    سروری که اسمشو وارد کردن نسبت به حروف بزرگ و کوچک حساسه ، ولی وقتی نام سروری که به حروف حساس نبود و وارد کردم کاملا کار کرد.
    ممنون میشم این ایرادشم رفع کنین.

  37. #25
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    منظورتون رو خوب متوجه نشدم، چطور میشه یه سرور نسبت به حروف بزرگ و کوچک حساس باشه و دیگری نباشه؟

    آیا تنظیمات خاصی رو سرور باعث این قضیه میشه؟
    پروژه های Open Source:


  38. کاربرانی که به خاطر مطلب مفید مهدی کرامتی از وی تشکر کرده‌اند:


  39. #26
    کاربر دائمی آواتار beh_develop
    تاریخ عضویت
    آذر 1386
    سن
    33
    پست
    111
    تشکر کردن
    20
    66 بار تشکر شده در 46 پست
    مثلا اگه Table با نام Students داشته باشین و سرور نسبت به حروف حساس باشه دستور Select * From students یا Select * from STUDENTS اجرا نمیشه، میگه چنین جدول وجود نداره.

    من احتمال میدم SQL Server شما نسبت به حروف حساس نیست، اگه بود حتما error می داد

    آقای اسیستانت وقتی SQL Server 2000 رو روی ویندوز Server نصب می شه اگه به صورت Default نصب شه ، نسبت به بزرگ کوچیکی حرف ها حساس نمیشه، ولی وقته حالت Default انتخاب نکنیم و می تونیم خودمون انتخاب کنبم که سرور Case Sensitive باشه یا نه

  40. کاربرانی که به خاطر مطلب مفید beh_develop از وی تشکر کرده‌اند:


  41. #27
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    میدونم که میشه چنین تنظیمی انجام داد، اما در کدام قسمت و چه گزینه ای؟

    لطفا مراحل تنظیم یک سرور بصورت فوق را بنویسید.
    پروژه های Open Source:


  42. کاربرانی که به خاطر مطلب مفید مهدی کرامتی از وی تشکر کرده‌اند:


  43. #28
    کاربر دائمی آواتار beh_develop
    تاریخ عضویت
    آذر 1386
    سن
    33
    پست
    111
    تشکر کردن
    20
    66 بار تشکر شده در 46 پست
    سعی می کنم تا 3 ساعت جواب سوالتون و بدم ، آخه ویندوز سرور رو سیستم ندارم ، الان دارم نصب می کنم...

  44. #29
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    نسخه 1.0.7 با این تغییرات آماده شد:
    • افزوده شدن امکان تغییر پیشوند Stored Procedure ها به دلخواه شما. اگر می خواهید هیچ پیشوندی برای SP استفاده نکنید کافی است مقدار Prefix را حذف کنید.
    • ادغام کتابخانه Draco.Controls در پروژه با استفاده از سورس های موجود. اگر از قبل فایل Draco.Controls.CodeEditor.dll در کنار این پروژه قرار دارد می توانید با خیال راحت آن را حذف کنید. این ادغام باعث بزرگ شدن سایز اسمبلی خروجی پروژه شده است، اما سرعت اجرا سریع تر شده است.
    فایل های ضمیمه فایل های ضمیمه
    پروژه های Open Source:


  45. 4 کاربر از مهدی کرامتی به خاطر این مطلب مفید تشکر کرده اند:


  46. #30
    کاربر دائمی آواتار beh_develop
    تاریخ عضویت
    آذر 1386
    سن
    33
    پست
    111
    تشکر کردن
    20
    66 بار تشکر شده در 46 پست
    دوباره سلام، من SQL Server 2000 رو نصب کردم و اون قسمتی که می گفتم رو ازش عکس گرفتم. می تونین ببینین. اگه گزینه اول یا دوم انتخاب بشه ، نسبت به بزرگی و کوچیکی حروف SQL Server حساس می شه.

    sql-2000.jpg

  47. 4 کاربر از beh_develop به خاطر این مطلب مفید تشکر کرده اند:


  48. #31
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    من الان SQL Server 2000 و 2005 رو نصب شده دارم، بعد از نصب کجا می تونم این تغییر رو اعمال کنم؟
    پروژه های Open Source:


  49. #32
    کاربر دائمی آواتار beh_develop
    تاریخ عضویت
    آذر 1386
    سن
    33
    پست
    111
    تشکر کردن
    20
    66 بار تشکر شده در 46 پست
    آقای اسیستانت، تا اونجایی من می دونم فقط هنگام نصب میشه این تنظیمات و انجام داد و بعدش دیگه نمیشه کاری کرد.

    من فکر کنم اشکال کار زیاد به سرور ربط نداره، میشه لطف کنین بگین که تو کد برنامتون این دستور( یا دستورات دیگرو) از لحاظ بزرگ کوچیکی چطور نوشتین؟


    Select name from master.dbo.sysdatabase


    یا اگه می تونین یه Instance دیگه ای از SQL 2000 رو سیستمتون نصب کنین(با تنظیماتی که تو عکس تو پست قبلی نشون دادم)، برنامتونو رو اون سرور تست کنین.

  50. #33
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    این دستوری است که من برای بدست آوردن لیست دیتابیس ها در SQL Server 2000 استفاده میکنم:
    SELECT dbid AS ID, NULL AS ParentID, NAME AS Text FROM [master].[dbo].[sysdatabases] ORDER BY [Name]
    پروژه های Open Source:


  51. #34
    کاربر دائمی آواتار beh_develop
    تاریخ عضویت
    آذر 1386
    سن
    33
    پست
    111
    تشکر کردن
    20
    66 بار تشکر شده در 46 پست
    با سلامی دوباره:

    آقای اسیستانت پیغا خطاهایی که برنامه شما رو سروری که من تست کردم اینا بودن :

    Invalid column name 'NAME'.
    Invalid column name 'Name'.


    در داخل Query که نوشتین اگه دقت کنین فیلد name رو به ای ترتیب نوشتین :

    select * from sysdatabases
    SELECT dbid AS ID, NULL AS ParentID, NAME AS Text FROM [master].[dbo].[sysdatabases] ORDER BY [Name]


    فیلد Name و NAME ای که شما نوشتین اگه با حروف کوچک بنویسین مشکل برنامه حل
    میشه. ( اگه تمامی فیلدهایی که تو Query نوشتین دقیقا با Database یکی باشه فکر نکنم دیگه مشکلی باشه)

    ممنون، شرمنده که این موضوع این همه طولانی شد.

  52. #35
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    من موردی رو که شما ذکر کردید تست نکردم، ولی سعی کردم اصلاحش کنم. لطفا تست کنید ببینید درست شده یا نه (ضمیمه را دانلود کنید).
    فایل های ضمیمه فایل های ضمیمه
    پروژه های Open Source:


  53. #36
    کاربر دائمی آواتار پرواز
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    شیراز
    پست
    320
    تشکر کردن
    106
    44 بار تشکر شده در 28 پست
    جناب کرامتی یه نکته هم من بگم:

    توی Insert یه کار کنید فکر کنم کامل تر بشه. همونطور که می دونید وقتی که می خوایم تو یه جدول عمل Insert انجام بدیم فقط کافیه فیلدهایی که لازمه مقدار بگیرند (Not Null) رو مقدار دهی کنیم. به عبارت دیگه بقیه فیلدها اختیاری هستند.

    حالا اگه تو پروسیجر Insert این رو عملی کنید کاملتر میشه.
    Create Procedure sp_tblPanels_Insert
    @PanelName nvarchar(30) = NULL,
    @Credit int = NULL,
    @EmployeeID int
    As
    ...

    ممنون.

  54. 2 کاربر از پرواز به خاطر این مطلب مفید تشکر کرده اند:


  55. #37
    کاربر دائمی آواتار beh_develop
    تاریخ عضویت
    آذر 1386
    سن
    33
    پست
    111
    تشکر کردن
    20
    66 بار تشکر شده در 46 پست
    آقای اسیستانت عزیز، پیغام خطایی که می داد حل شده و دیگه اون خطا رو نمی ده ، ولی پیغام خطای زیر رو میده، بازم مربوط به دستوری که نام جداول رو می خواین بخونین.

    error.JPG

    اگه می شه بخش های دیگرم یه نگاهی بندازین ببینین حروف دقیقا با دیتابیس یکی هست یا نه.

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

  56. #38
    Site Admin آواتار مهدی کرامتی
    تاریخ عضویت
    اسفند 1381
    محل زندگی
    تهران، خ شریعتی، باغ صبا
    سن
    40
    پست
    5,801
    تشکر کردن
    399
    5,986 بار تشکر شده در 1,435 پست
    نسخه 1.0.8 با این تغییرات آماده شد:
    • افزوده شدن امکانی در بخش Options برای درج خودکار پارامتر پیش فرض Null برای فیلدهای Null پذیر در تولید پروسیجر Insert
    • Upper Case کردن نام ستون ها برای سازگار کردن با SQL Server در حالتی که بصورت Case Sensitive نصب شده باشد.
    فایل های ضمیمه فایل های ضمیمه
    پروژه های Open Source:


  57. 16 کاربر از مهدی کرامتی به خاطر این مطلب مفید تشکر کرده اند:


  58. #39
    کاربر دائمی آواتار پرواز
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    شیراز
    پست
    320
    تشکر کردن
    106
    44 بار تشکر شده در 28 پست
    ممنون جناب کرامتی.

    چندتا نکته پیش پا افتاده هم بگم شاید به دردتون خورد:

    1- دکمه Connect رو Default کنید تا بعد از وارد کردن نام سرور بشه با اینتر کانکت شد.
    2- اگه امکانش وجود داره برای Server Name از کمبو استفاده کنید و نام Instanceها رو به طور پیش فرض بریزید داخلش (مثل خود SQL SEVER هنگام کانکت شدن)
    3- Tab Stop مربوط به Radio Buttonها رو True کنید.
    4- Author Name رو Trim کنید.
    5- توی Perfix امکان زدن کاراکترهای غیرمجاز نباشه (مثلاً ; یا , )
    6- سازگاری با زبان فارسی و حذف Space های اول و آخر: من تو پروسیجرهای Insert و Update که برا خودم می نویسم میام فیلدهایی که یونیکد هستند رو اینطور مقداردهی می کنم:
    SET @FieldName = RTRIM(LTRIM(REPLACE(@FieldMame, 'ی', 'ی')))
    که البته LTRIM و RTRIM در مورد فیلدهای غیر یونیکد هم می تونه کارایی داشته باشه.

  59. #40
    کاربر دائمی آواتار miladr
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    وقتی تو نت هستم همه جا هستم و هیچ جا نیستم.
    پست
    472
    تشکر کردن
    42
    89 بار تشکر شده در 66 پست
    میشه به این برنامه امکانی اضافه کرد که با Sql server 2005 Express هم قابل استفاده باشه؟

صفحه 1 از 4 123 ... آخرآخر

تاپیک های مشابه

  1. While AND Stored Procedure
    نوشته شده توسط mehdi58 در بخش SQL Server
    پاسخ: 12
    آخرین پست: سه شنبه 31 شهریور 1388, 22:00 بعد از ظهر
  2. نحوه صدا زدن یک تابع در stored procedure
    نوشته شده توسط rockpigeon در بخش SQL Server
    پاسخ: 2
    آخرین پست: شنبه 14 مرداد 1385, 23:04 بعد از ظهر
  3. use کردن یک Dll بعنو ان یک Stored Procedure
    نوشته شده توسط ardvisoor در بخش SQL Server
    پاسخ: 5
    آخرین پست: پنجشنبه 21 اردیبهشت 1385, 00:30 قبل از ظهر
  4. Stored Procedure با چند دستور SQL
    نوشته شده توسط mehdi58 در بخش ASP.NET
    پاسخ: 2
    آخرین پست: دوشنبه 15 اسفند 1384, 01:20 قبل از ظهر
  5. مشکل با اجرای بعضی stored procedure ها
    نوشته شده توسط vjp در بخش SQL Server
    پاسخ: 4
    آخرین پست: یکشنبه 30 مرداد 1384, 07:21 قبل از ظهر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •