الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ارجو سكربت اجراء مخزن

مغلق
بدأه bnitt في 13 أغسطس 2007 · 4 رد · 542 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

سكربت الاجراء المخزن لهذا الكود

	Dim SqlDa As New SqlDataAdapter
	   Dim ds As New DataSet
		Dim cmd As New SqlCommand
		Dim StrCon As String = ""
		Dim Conn As New SqlConnection
			If IsPostBack = True Then
			'------------------------------------------------
		   Conn.ConnectionString = "Server=Os2;uid=sa;pwd=;database=T"
			If Conn.State = ConnectionState.Open Then Conn.Close()
			Conn.Open()
			'------------------------------------------------
			sql = ""
			If x_Num.Text <> "" Then
				sql = IIf(sql = "", sql, sql & " and ")
				sql = sql & "x_Num =" & x_Num.Text
			End If
		   ----------------------------------------------------
			If X_Type.SelectedValue <> "" Then
				sql = IIf(sql = "", sql, sql & " and ")
				sql = sql & "X_Type =" & X_Type.SelectedValue
			End If
		  --------------------------------------------------------
			If x_No.Text <> "" Then
				sql = IIf(sql = "", sql, sql & " and ")
				sql = sql & "x_No =" & x_No.Text
			End If
		  --------------------------------------------------------- 
			If X_YName .Text <> "" Then
				sql = IIf(sql = "", sql, sql & " and ")
				sql = sql & "X_YName LIKE'%" & X_YName .Text & "%'"
			End If
		   ------------------------------------------------------
			If  X_WName.Text <> "" Then
				sql = IIf(sql = "", sql, sql & " and ")
				sql = sql & "X_WName LIKE'%" & X_WName.Text & "%'"
			End If
		   -------------------------------------------------------
			If x_Type.SelectedValue <> "" Then
				sql = IIf(sql = "", sql, sql & " and ")
				sql = sql & "x_Type =" & x_Type.SelectedValue
			End If
		  ------------------------------------------------------
			sql = IIf(sql = "", sql, sql & " and ")
			sql = sql & "x_Flag =" & 1
			If x_Code.Text = "" Then
				sql = IIf(sql = "", sql, sql & " and ")
				sql = sql & "x_Code ='" & x_Code.SelectedValue & "'"
				sql = sql & " And (x_State = 23 Or x_State = 24 Or x_State = 27)"
				sql = "SELECT * FROM AddressBook  where " & sql
			Else
				sql = IIf(sql = "", sql, sql & " and ")
				sql = sql & "Addrss_code ='" & Addrss_code.SelectedValue & "'"
				sql = sql & " And (x_State = 23 Or x_State = 24 Or x_State = 27)"
				sql = "SELECT *FROM AddressBook INNER JOIN Profiles ON Profiles.x_Code=AddressBook.x_Code1 where " & sql
			End If
			----------------------------------------------------
		   cmd.CommandText = sql
			cmd.Connection = Conn
			SqlDa.SelectCommand = cmd
			SqlDa.Fill(ds)
			DataGrid1.DataSource = ds
			DataGrid1.DataBind()
			DataGrid1.Visible = True
			Conn.close
#2

لا يختلف الكود في الاجراءات المخزنة عن هذا الكود كثيرا لذا ارجو مراجعة الدروس التي تتعلق ب TSQl

مثل ما هي بدائل IIF

#3

اشكرك TareqVB واهنئك على حصولك على العضو المميز

اخى انا مبتدئ فى برمجة قواعد البيانات sql ياليت تجيب لى حتى ولو استعلام واحد من مثالى

المشلة فى تنفيذ اكثر من جملة استعلام

البحث باكثر من قيمة

مثلا هذة الجملة :-

If x_Num.Text <> "" Then										 
				sql = IIf(sql = "", sql, sql & " and ")
				sql = sql & "x_Num =" & x_Num.Text
			End If
		   ----------------------------------------------------
			If X_Type.SelectedValue <> "" Then
				sql = IIf(sql = "", sql, sql & " and ")
				sql = sql & "X_Type =" & X_Type.SelectedValue
			End If
		   '----------------------------------------------------
		   sql = "SELECT *FROM AddressBook INNER JOIN Profiles ON			Profiles.x_Code=AddressBook.x_Code1 where " & sql

تم تعديل هذه المشاركة بواسطة bnitt في 13 أغسطس 2007 في 17:45

#4
create procedure  usp1
@x_Num nvarchar(100),
@x_type nvarchar(100)

as --like dim sql as string
declare  @sql as nvarchar(4000)


set @sql ='SELECT *FROM AddressBook INNER JOIN Profiles ON Profiles.x_Code=AddressBook.x_Code1 where 1=1 '    

if  @x_type <>''
set @sql  =@sql  +  ' and x_type ='  +  @x_type


if  @x_Num <>''
set @sql  =@sql  +  ' and x_Num ='  +  @x_Num

--لا ضرورة لمعاجلة and لاني  وضعت  1= 1

exec(@sql)

لم اجرب هذا الكود لكن ارجو ان لا تجد به اخطاء

#5

تشكر اخى ساجرب الكود

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…