[英]Is there a way to integrate LIST(of String) with SQL Server database?
過去,當我們需要排除屬於某個類別的成員時,我們使用generic.list控件來做到這一點,如下例所示:
首先,我們進行查詢以列出符合特定條件的所有合格用戶。
sql="select ... from ourTable where certain conditions are true'
然后,我們在下面的列表中列出某些組,並且該組中的任何用戶都將被排除在參與之外。
Dim listOfGroups = New List(Of String)(
{ _
"ML02A", "ML02B", "ML03", "ML04", "ML05", "ML06", "ML07A", "ML07B", "AP05", _
"AP06", "AP07A", "AP07B", "AP09A", "AP10", "AP12A" _
})
If Not listOfGroups .Contains(txtPre.Text) Then
lblNA.Text = "Members in group<b>" & txtPre.Text & "</b> are not eligible to participate in this event."
End If
對於我們來說,這一直很出色。
這次,名單超過了200,000。 太多,無法手動包含在下面的列表中。
是否可以將列表與SQL Server數據庫集成?
也許,有沒有一種方法可以使用存儲的proc來處理此問題,並通過asp.net應用程序發出相同的排除消息?
我們的應用程序是用vb.net編寫的,但我對我可以轉換為vb.net的任何C#解決方案感到非常滿意
能否在SQL Server中像wildcard一樣使用generic.list控件?
例如,在SQL Server中,我們可以說,如果組LIKE'KT%',則顯示消息。
LIKE可以用於generic.list控件嗎? 在此先感謝。
我嘗試以自己的方式提出問題:
您有類似的查詢
select * form TableName where Field in ('ML02A', 'ML02B', 'ML03', ...)
由於不確定的原因,該值的集合在數據庫中的程序no中,並且列表非常長,這會導致查詢變慢。
對於類似的情況,我正在使用臨時表和SqlBulkCopy類 。 (代碼應在編號列表之后,但格式不正確)。
Dim BulkData As SqlBulkCopy
BulkData = New SqlBulkCopy(cn)
BulkData.DestinationTableName = mDBTableName
BulkData.WriteToServer(mTableToTransfer)
mDBTableName
創建一個表(對於服務器高速緩存永久性的使用要比臨時-#好) DataTable
結構相同 list
中的DataTable
放入數據list
mTableToTransfer
如果表結構不匹配,則可以使用BulkData.ColumnMappings.Add
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.