زمان کنونی: ۲۵ آبان ۱۴۰۳, ۰۲:۲۰ ب.ظ مهمان گرامی به انجمن مانشت خوش آمدید. برای استفاده از تمامی امکانات انجمن می‌توانید عضو شوید.
گزینه‌های شما (ورودثبت نام)

نوشتن تابع در sqlserver

ارسال:
۰۶ شهریور ۱۳۹۴, ۰۱:۱۸ ب.ظ
نوشتن تابع در sqlserver
با سلام خدمت دوستان

میهواستم یه تابع سمت دیتابیس بنویسم که بیاد از یه جدول ، دو مقدار رو بگیره و در هم ضرب کنه ، و حاصل رو بریزه توی یه ستون جدید ، بعد هم از این تابع در ویژوال استفاده کنم

تازه کار هستم ، لطفا راهنمایی کنید که اصلا نوشتن تابع در sql چه طور هست ؟ کجاش باید بنویسم ؟ نحوه فراخوانی تابع ساخته شده در ویژوال توسط زبان Asp.net چه طور هست ؟

باتشکر قبلی

کاش در کتاب زندگی
سطری باشیم ماندنی
نه حاشیه ای از یاد رفتنی ...
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۰۶ شهریور ۱۳۹۴, ۰۳:۰۹ ب.ظ
نوشتن تابع در sqlserver
خب این کار رو میتونی داخل شرط های کوئری ات بنویسی
مثلا اینجا یک کوئری میزنیم سن کاربر رو میخونیم ضربدر ۲ میکنیم میریم توی یک متغیر، بعد توی خط بعد اون متغیر رو وارد دیتابیس میکنیم :
result = SELECT user_age * 2 FROM users WHERE conditions
INSERT INTO users (user_new_age) VALUES (result)

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

البته کدی که در بالا نوشتم برای PHP هستش، کاری نداره به سینتکس زبانی که میخوای تبدیلش کن.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: ACM
ارسال:
۱۲ شهریور ۱۳۹۴, ۰۱:۱۴ ق.ظ (آخرین ویرایش در این ارسال: ۱۲ شهریور ۱۳۹۴ ۰۱:۱۶ ق.ظ، توسط amard.)
RE: نوشتن تابع در sqlserver
(۰۶ شهریور ۱۳۹۴ ۰۳:۰۹ ب.ظ)One Minute نوشته شده توسط:  خب این کار رو میتونی داخل شرط های کوئری ات بنویسی
مثلا اینجا یک کوئری میزنیم سن کاربر رو میخونیم ضربدر ۲ میکنیم میریم توی یک متغیر، بعد توی خط بعد اون متغیر رو وارد دیتابیس میکنیم :
result = SELECT user_age * 2 FROM users WHERE conditions
INSERT INTO users (user_new_age) VALUES (result)

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

البته کدی که در بالا نوشتم برای PHP هستش، کاری نداره به سینتکس زبانی که میخوای تبدیلش کن.
به نظرم حاصل دستور SELECT یه ستون هستش که توی متغیر result ذخیره شده . پس داخل متغیر result یه ستون داریم . دستور INSERT برای اضافه کردن یک یا چند رکورد به یه جدول استفاده میشه بنابر این نمیشه متغیر result که حاوی یک ستون هست رو با دستور INSERT استفاده کرد بنظرم اینجا باید از UPDATE استفاده کرد :
UPDATE users SET user_age=result
که این دستور ستون user_age رو با مقادیر result آپدیت میکنه .
البته من php کار نکردم وشاید دستور INSERT در این زبان نحوه عملکردش فرق بکنه ولی علی الاصول طبق قواعد SQL باید طبق توضیحی که عرض کردم باشه.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: One Minute
ارسال:
۱۲ شهریور ۱۳۹۴, ۰۲:۰۶ ق.ظ
نوشتن تابع در sqlserver
(۱۲ شهریور ۱۳۹۴ ۰۱:۱۴ ق.ظ)amard نوشته شده توسط:  
(06 شهریور ۱۳۹۴ ۰۳:۰۹ ب.ظ)One Minute نوشته شده توسط:  خب این کار رو میتونی داخل شرط های کوئری ات بنویسی
مثلا اینجا یک کوئری میزنیم سن کاربر رو میخونیم ضربدر ۲ میکنیم میریم توی یک متغیر، بعد توی خط بعد اون متغیر رو وارد دیتابیس میکنیم :
result = SELECT user_age * 2 FROM users WHERE conditions
INSERT INTO users (user_new_age) VALUES (result)

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

البته کدی که در بالا نوشتم برای PHP هستش، کاری نداره به سینتکس زبانی که میخوای تبدیلش کن.
به نظرم حاصل دستور SELECT یه ستون هستش که توی متغیر result ذخیره شده . پس داخل متغیر result یه ستون داریم . دستور INSERT برای اضافه کردن یک یا چند رکورد به یه جدول استفاده میشه بنابر این نمیشه متغیر result که حاوی یک ستون هست رو با دستور INSERT استفاده کرد بنظرم اینجا باید از UPDATE استفاده کرد :
UPDATE users SET user_age=result
که این دستور ستون user_age رو با مقادیر result آپدیت میکنه .
البته من php کار نکردم وشاید دستور INSERT در این زبان نحوه عملکردش فرق بکنه ولی علی الاصول طبق قواعد SQL باید طبق توضیحی که عرض کردم باشه.

با سپاس از توضیحی که دادید،
مطلبی که عرض کردید از نظر تئوری کاملا درست هست و طبق مباحث پایگاه داده به این صورت باید عمل کرد،
اما توجه داشته باشید که توی زبان های اسکریپتی مثل PHP ، نتیجه ی دستور SELECT که result هست یک متغیر نیست بلکه یک آرایه هست و با یک حلقه foreach میشه به راحتی روی عناصرش چرخید و ضرب و تقسیم یا هرکاری که دوستمون میخوام رو انجام داد و در نهایت از طریق وارد دیتابیس کرد،
البته شما درست میفرمایید بجای INSERT باید در انتها از دستور UPDATE استفاده کرد.
البته بهتره در انتهای دستور UPDATE از شرط WHERE استفاده کرد تا داده ها در مکان مناسب قرار بگیرند.
ممنونم
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: amard
ارسال:
۲۶ بهمن ۱۳۹۴, ۰۴:۴۶ ب.ظ
RE: نوشتن تابع در sqlserver
(۰۶ شهریور ۱۳۹۴ ۰۱:۱۸ ب.ظ)ACM نوشته شده توسط:  با سلام خدمت دوستان

میهواستم یه تابع سمت دیتابیس بنویسم که بیاد از یه جدول ، دو مقدار رو بگیره و در هم ضرب کنه ، و حاصل رو بریزه توی یه ستون جدید ، بعد هم از این تابع در ویژوال استفاده کنم

تازه کار هستم ، لطفا راهنمایی کنید که اصلا نوشتن تابع در sql چه طور هست ؟ کجاش باید بنویسم ؟ نحوه فراخوانی تابع ساخته شده در ویژوال توسط زبان Asp.net چه طور هست ؟

باتشکر قبلی

تازگی ها من ابزار سئو رایگان که فارسی است آشنا شدم و کار می کنم ,کار کرد اون شبه به google analityc است لینک قرار دادم تا شما استفاده کنید

مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمی‌باشید. جهت مشاهده پیوندها ثبت نام کنید.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ


موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  در نوشتن چند جمله انگلیسی نیاز به کمک دارم fa_karoon ۰ ۱,۶۹۱ ۰۳ شهریور ۱۴۰۰ ۰۱:۰۹ ب.ظ
آخرین ارسال: fa_karoon
  نوشتن مقاله به صورت گروهی osho ۰ ۲,۰۲۶ ۱۶ آبان ۱۳۹۹ ۱۱:۵۵ ق.ظ
آخرین ارسال: osho
  تابع مولد ss311 ۰ ۱,۴۸۳ ۲۶ اردیبهشت ۱۳۹۹ ۱۲:۴۹ ب.ظ
آخرین ارسال: ss311
  تعداد روش های نوشتن عدد n ss311 ۲ ۳,۳۳۴ ۱۳ بهمن ۱۳۹۸ ۰۵:۲۷ ب.ظ
آخرین ارسال: ss311
Sad راهنمایی برای نوشتن پایان نامه کمک!!!!!!! Sarabeh ۱ ۲,۷۱۱ ۱۴ آذر ۱۳۹۸ ۰۲:۳۳ ق.ظ
آخرین ارسال: sirvan.t
  کمک در نوشتن پایان نامه کارشناسی ارشد amin181a ۱ ۲,۶۹۲ ۱۳ خرداد ۱۳۹۷ ۱۰:۰۹ ق.ظ
آخرین ارسال: سیستم عامل
  تابع ورودی فلیپ فلاپ naghmeh70 ۳ ۳,۲۷۳ ۲۷ فروردین ۱۳۹۷ ۰۶:۵۹ ب.ظ
آخرین ارسال: عزیز دادخواه
  تابع منطقی naghmeh70 ۲ ۲,۷۱۷ ۲۷ فروردین ۱۳۹۷ ۱۱:۰۴ ق.ظ
آخرین ارسال: naghmeh70
  تابع خروجی pla naghmeh70 ۲ ۳,۲۹۷ ۲۱ اسفند ۱۳۹۶ ۰۱:۴۶ ق.ظ
آخرین ارسال: naghmeh70
  نوشتن کد (زبان 'Prolog) برای پیدا کردن تمام راسهای مجاور یک راس ss311 ۰ ۱,۴۹۸ ۱۸ آبان ۱۳۹۶ ۰۱:۱۹ ب.ظ
آخرین ارسال: ss311

پرش به انجمن:

Can I see some ID?

به خاطر سپاری رمز Cancel

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close

رمزت رو فراموش کردی؟

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. close