السلام عليكم ورحمة من الله وبركاته :
إخواني سؤالي بسيط نوعاً ما ولكني محتاج إجابة له ... :)
وهو كيف يمكن استدعاء Scalar Function مكتوبة في Sql Server من قبل كائنات ADO.NET ؟
السلام عليكم ورحمة من الله وبركاته :
إخواني سؤالي بسيط نوعاً ما ولكني محتاج إجابة له ... :)
وهو كيف يمكن استدعاء Scalar Function مكتوبة في Sql Server من قبل كائنات ADO.NET ؟
دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله
أخوكم في الله.. Imad Ozone
السلام عليكم
تتعامل معها كالـSP تماما
فلو افترضنا انه لدينا هذه الScalar Function
CREATE FUNCTION LMax
(
@arg1 as int,
@arg2 as int
)
RETURNS int
AS BEGIN RETURN CASE
WHEN @arg1 >= @arg2 THEN @arg1
WHEN @arg2 > @arg1 THEN @arg2
ELSE NULL
end
END
GOالكود اللازم لاسترجاع قيمة العائدة من الFUNCTION
Using cmd As SqlCommand = New SqlCommand
cmd.CommandType = CommandType.StoredProcedure
cmd.CommandText = "dbo.LMax"
cmd.Parameters.Add("@arg1", SqlDbType.Int).Value = 10
cmd.Parameters.Add("@arg2", SqlDbType.Int).Value = 15
Dim returnValue As SqlParameter = cmd.CreateParameter
returnValue.ParameterName = "RetunValue"
returnValue.Direction = ParameterDirection.ReturnValue
cmd.Parameters.Add(returnValue)
Using cnn As SqlConnection = New SqlConnection
cnn.ConnectionString = My.Settings.CONECTION_STRING
cnn.Open()
cmd.Connection = cnn
cmd.ExecuteNonQuery()
cnn.Close()
Dim intValue As System.Nullable(Of Int32) = CType(cmd.Parameters("RetunValue").Value, Nullable(Of Int32))
If intValue.HasValue Then
MsgBox(intValue.Value.ToString)
Else
MsgBox("ERR")
End If
End Using
End Usingلاحظ كيف قمنا باضافة بارميتر الى كائن الامر وتحويل الــDirection
ReturnValue
الى
تم تعديل هذه المشاركة بواسطة SOLO.NET في 1 يونيو 2006 في 03:26
VB.NET and C# Comparison
http://www.harding.edu/fmccown/vbnet_csharp_comparison.html
=-=-=-=-=-=-=
ذو العلم يشقى فى النعيم بعلمه .:. واخو الجهالة فى الشقاوة ينعم
=-=-=-=-=-=-=
يا من بدنياه اشتغل . قد غره طول الأمل . فالموت يأتى بغتة . والقبر صندوق العمل
=-=-=-=-=-=-=
ان لم تستطع ان تجد ما تفعله فافعل ما لم تسطع ان تجده

السلام عليكم ورحمة الله و بركاته :
أولاً : شكراً يا سيدي المشرف Solo . راح عن بالي البارامتر @RETURN_VALUE لذا سألت عن الطريقة ..
طريقتك جميلة .. لكنني كتبت الكود ( مختصراً .. فقط طريقة جلب النتيجة ) بطريقتي ووددت أن أطرحه للفائدة العامة كالتالي :
بفرض أن الـ Scalar Function ليس لها بارامترات .. :)
Dim s As String
Try
If objCon.State <> ConnectionState.Open Then objCon.Open()
With objCmd
.CommandType = CommandType.Text
.Connection = objCon
.CommandText = "select dbo.MyFun()"
s = .ExecuteScalar().ToString()
End With
MessageBox.Show("value : " & s)
Catch ex As Exception
End Tryتم تعديل هذه المشاركة بواسطة imadouzoun في 1 يونيو 2006 في 04:14
دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله
أخوكم في الله.. Imad Ozone
Table Valued Function
و الدوال دي كيف نتعامل معاها
السلام عليكم ورحمة الله وبركاته :
أسهل يا أخي الكريم ..
لنفترض عندك Table-Valued Function كالتالي :
Create function MyFunction()
Returns @TB Table(id int identity(1,1), name Nvarchar(50) )
Begin
insert Into @TB(name) Values('Ahmad')
insert Into @TB(name) Values('Samer')
insert Into @TB(name) Values('Ameer')
return
Endنختبرها الآن :
Select * From MyFunction()
ببساطة يمكنك الآن استخدام الـ كائن من نوع SqlCommand و تقوله التالي :
With myCmd .commandType = CommandType.Text .commandText = "Select * From MyFunction()" .connection = objConnection End With
وبعديها تستخدم كائن ملائم البيانات لتملأ الـ DataSet
Dim MyDA AS New SqlDataAdapter (myCmd) MyDA.Fill(MyDataSet)
وستكون البيانات بإذن الله قد أصبحت في الـ DataSet منتظرة حضرتك (أخي الكريم) لتعرضها في الشبكة ..
أتمنى أن أكون قد أفدتك بهذه اللمحة السريعة :)
دروس و كتب مفيدة----------------------كتيب الإجرائيات المخزنةتعرف على اللغة Transact SQL <<-->> كتيب عن تنصيب قواعد البيانات Sql Server باللغة العربية كتيب عن إنشاء قواعد البيانات في SQL Server باللغة العربية <<-->> درس مع الأمثلة عن المؤشرات و التعامل معها في الـ T-SQLالعبارات الشرطية و الحلقات في T-SQL <<-->> شرح لبعض الـ Extended Stored Procedure استخدام مكتبات الـ Dot Net الخاصة بك في الـ Sql Server 2005 <<-->> التعامل مع المصفوفات من خلال الـ T-SQLتعابير الجداول الشائعة في SQL Server 2005 <<-->>الاتصال بالأداة SQL Server Management Studioحلول سريعة و لمحات برمجية --------------------------------التصدير إلى إكسل : طريقة أولى : طريقة بسطر واحد من الكود <<-->> طريقة ثانية : طريقة تحتاج إنشاء إجرائية مخزنةً تجهيز بيانات جدول بالصيغة XML تمهيداً لحفظها كملف <<-->> تصدير البيانات إلى ملفات نصية برمجياً إغلاق جميع الإتصالات المفتوحة بقاعدة بيانات محددة .. تمهيداً لاسترجاعها أو حذفها <<-->> الاستعلام بناء على وقت مخزن بالصيغة العربية ضمن حقل نصي ..حذف السجلات المتكررة و إبقاء عدد محدد منها في جدول.. <<-->> أسرع طريقة لحذف سجلات جدول كيف احصل على اسم جهازي والباسوورد باستخدام T-SQL <<-->> حشر أنواع الصور المختلفة في حقل من نوع Image باستخدام إجرائية مخزنة .كيف تعرف أنواع الصور المخزنة في حقل من نوع Image .. <<-->> إجرائيات مخزنة ببارامترات ديناميكية مفيدة جداً للاستعلامات استخدام رقم الحقل بدلاً من الإسم في عبارات الإستعلام <<-->> من هو أضخم الجداول في قاعدة بياناتي ؟معرفة زمن تنفيذ الإجرائيات ( لتختار الطريقة الأسرع بين إجرائياتك المخزنة ) <<-->> التعامل مع الـ Rules برمجياً الحصول على آخر صف في الجدول <<-->> قراءة ملفات XML باستخدام T-SQL برمجياً (مثال مرفق)سحب بيانات ملف إكسل إلى الـ SQL Server <<-->> تشفير النسخة الاحتياطية بكلمة مرور <<-->> التخلص من البيانات المكررة <<-->> حل مشكلة التاريخ الهجريDifferential Backup بالتعريف---------- لا إله إلا الله .. محمد رسول الله
أخوكم في الله.. Imad Ozone
هذا الموضوع مغلق.