تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[SQL] عمل Stored Procedures يفحص الاسماء قبل الاضافة
#2
سلام

هذا مثال

اول شيء نعمل storedprocedure بهذه الطريقه تقريباً والافضل تختر له اسم مناسب بدل الاسم الافتراضي
ونلاحظ ان الارقام 99999 و55555 انا اخترتها بشكل عشوائي بس اهم شي ما يكون رقم صغير ولا كبير جدا عشان هذه الارقام تفيدني في نوع الرساله اللي راح اظهرها للمستخدم من حيث اذا كان الاسم موجود من قبل ولا البيانات غير صحيحه
كود :
CREATE PROCEDURE dbo.StoredProcedure1
    @name varchar(50) = ''  ,
    @phone int = 0
AS

    /* التأكد من إدخال بيانات */
    IF RTRIM(@name) = ''
    BEGIN
        RETURN 99999
    END

    /* التأكد من موجود سجل مسبق */
    IF EXISTS (SELECT [name] FROM [table] WHERE [name]=@name )
    BEGIN
        RETURN 55555
    END

    BEGIN TRY
        /* إدخال البيانات */
        INSERT INTO [table] ([name], [phone]) VALUES (@name, @phone)
    END TRY
    BEGIN CATCH
        RETURN -1
    END CATCH

    RETURN 0

الحين نجي لطريقت التعامل مع storedproceure عن طريق vb.net وهذا ان شاء الله انه سهل ما يحتاج شرح
يدوب الاضافه الغريبه اللي ممكن تشوفها اضافت parameter خاص لقراءه الرقم اللي راح يرجع بالنتيجه
كود :
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    Using conn As New SqlConnection(connectionString)

        Using cmd As New SqlCommand("StoredProcedure1", conn)
            cmd.CommandType = CommandType.StoredProcedure

            cmd.Parameters.AddWithValue("@name", txtName.Text.Trim)
            cmd.Parameters.AddWithValue("@phone", txtPhone.Text.Trim)

            Dim param As New SqlParameter("returnValue", Nothing)
            param.Direction = ParameterDirection.ReturnValue
            cmd.Parameters.Add(param)

            conn.Open()
            cmd.ExecuteNonQuery()
            conn.Close()

            Dim retVal As Integer = cmd.Parameters("returnValue").Value

            MsgBox("Return Value:  " & retVal)

            Select Case retVal

                Case 0
                    MsgBox("تمت إضافة البيانات")

                Case 99999
                    MsgBox("يجب إدخال بيانات")

                Case 55555
                    MsgBox("الاسم موجود مسبقاً")

                Case Else
                    MsgBox("Return Value:  " & retVal & vbNewLine & "فشل")

            End Select

        End Using

    End Using

End Sub

موفقين
متغيب
الرد }}}
تم الشكر بواسطة: مبرمج بلا حدود


الردود في هذا الموضوع
RE: عمل Stored Procedures يفحص الاسماء قبل الاضافة - بواسطة الطالب - 29-07-15, 06:26 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] مشكلة في كود الاضافة والتعديل في المشروع khaled12345 11 4,827 15-07-17, 02:17 AM
آخر رد: سعود
  [كود] المساعدة في معرفة اين الخطأ في كود الاضافة لصورة موظف وادي العوضي 2 2,030 11-07-17, 05:56 PM
آخر رد: وادي العوضي
  كود الاضافة للقاعدة شمس الدين 03 12 4,818 08-12-16, 06:40 PM
آخر رد: شمس الدين 03
Photo [سؤال] عندى سؤال فى البحب و التعديل و الاضافة مع بعض alims 6 4,132 18-01-16, 05:20 PM
آخر رد: alims
  [VB.NET] سوال كيف يمكن الاضافة على ثلاثة جداول واكثر قناص المدينة 6 4,263 14-08-15, 08:22 PM
آخر رد: مجروحه
  كيف أستخدم stored procedure ؟؟ alzahrani 7 3,878 24-11-14, 09:42 PM
آخر رد: سعود
  عمل RUN ل stored procedure محاسب يوسف 0 1,653 14-10-14, 03:17 PM
آخر رد: محاسب يوسف
Wink [كود] الاضافة الى قاعدة البيانات هيتوووو 3 2,615 05-05-14, 05:49 PM
آخر رد: سعود
  عرض الاسماء التي تم اضافتها في شهر محدد atefkhalf2004 1 2,253 31-01-14, 03:40 AM
آخر رد: ممدوح الخطيب
  [سؤال] مشكلة في الاضافة الى قاعدة بيانات Sql OsamaVB 2 2,623 05-01-14, 04:03 PM
آخر رد: زكريا النابهي

التنقل السريع :


يقوم بقرائة الموضوع: