[英]Using SSIS 2005 to retrieve data from SQL Server 2008 R2 database
[英]How to retrieve and arrange data from SQL Server 2008 R2
我正在處理的數據庫將每個條目保存為這樣的行...
| PK (Jobnumber)|ReportStatus | ECD | InspectionStatus | ECD | QualificationStatus | ECD |ect..
但是,在Winforms應用程序中,我的客戶希望在這樣的列中顯示數據...
(PK)Job Number
_________________________
Report Status | ECD |
_________________________
Inspection Status | ECD |
_________________________
Qual. Status | ECD |
_________________________
etc...
我可以很容易地存儲數據,它只有一行。
我的問題是如何檢索數據並將其重新排列在如上述布局的datagridview中。
編輯:當我創建datagridview時,我用唯一的名稱“標記”每個單元格,該名稱將與數據庫標題名稱匹配。 然后我通過數據循環。
SDR = cmd.ExecuteReader(CommandBehavior.SingleResult)
While SDR.Read
If SDR.HasRows Then
For i As Integer = 0 To SDR.FieldCount - 1
If SDR.GetName(i).Contains("ECD") Then
clm = "DGVC_PS_ECD"
Dim dt As Date = SDR.GetSqlValue(i).ToString
If Not dt = "Null" Then Me.DGV_PS.Rows(GetRowIndex(SDR.GetName(i))).Cells(clm).Value = dt.ToShortDateString
ElseIf SDR.GetName(i).Contains("JobNumber") Then
'do nothing
ElseIf SDR.GetName(i).Contains("Comment") Then
Me.TB_PS_Comment.Text = SDR.GetSqlValue(i).ToString
ElseIf SDR.GetName(i).Contains("Status") Then
clm = "DGVC_PS_Status"
Dim sts As String = SDR.GetSqlValue(i).ToString
If Not sts = "Null" Then Me.DGV_PS.Rows(GetRowIndex(SDR.GetName(i))).Cells(clm).Value = sts
End If
Next
End If
End While
GetRowIndex
是一個整數函數,該函數循環遍歷datagriview以查找rowindex。
抱歉,這是我在StackOverFlow上遇到的第一個問題。
我會用apply
:
select v.*
from t cross apply
( ('Report Status', ReportStatus),
('Inspection Status', Inspection Status),
('Qualification Status', QualificationStatus)
) v(which, val);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.