กระทู้เก่าบอร์ด อ.สุภาพ ไชยา
321 2
URL.หัวข้อ /
URL
ใน Stored Procedures จะรับค่าจาก Listbox ที่ Multi Select เป็น Simple
ไม่ทราบว่าจะต้องกำหนดพารามิเตอร์กี่ตัวครับ
2 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R04841
หรือจะลองแบบนี้ก็ได้ครับ
Create Procedure GetPoster
@PosterName varchar(2048)
AS
declare @sql varchar(3000)
select @sql = 'SELECT qnumber
FROM question
WHERE qname in (' + @PosterName + ')'
exec (@sql)
GO
เวลาเรียกใช้
exec GetPoster "'BADMan','ac'"
Create Procedure GetPoster
@PosterName varchar(2048)
AS
declare @sql varchar(3000)
select @sql = 'SELECT qnumber
FROM question
WHERE qname in (' + @PosterName + ')'
exec (@sql)
GO
เวลาเรียกใช้
exec GetPoster "'BADMan','ac'"
Time: 0.1169s
ตัวอย่างข้างล่างเป็นการสร้าง Stored Procedure ที่รับค่า String แล้วนำมาเป็นค่าใน Where clause แบบใช้ IN operator ครับ
Public Function CreateProc2(strName As String)
Dim strProc As String
strProc = "Create Procedure qryPoster3 as " & _
"select qnumber from dbo.question where qname in (" & strName & ")"
CurrentProject.Connection.Execute strProc
End Function
เวลาจะสร้าง ก็เรียกใช้คำสั่ง
? CreateProc2("'BADMan','Ac'")
เมื่อวิวดู จะเห็นว่า แสดงหมายเลขกระทู้ที่ผู้ตอนคือ BADMan และ Ac ครับ
และนี่คือตัวอย่างโค้ดในการดึงรายการที่ถูกเลือกจาก List Box แล้วเก็บไว้ในตัวแปร String ชื่อ strName
...
If Me.List2.ItemsSelected.Count > 0 Then
For intCurrentRow = 0 To Me.List2.ListCount - 1
If Me.List2.Selected(intCurrentRow) Then
strName = strName& Me.List2.Column(1, intCurrentRow) & ","
I = I + 1
End If
Next intCurrentRow
Else
...
ลองประยุกต์ใช้ดูครับ