对不起,如果以前曾经问过,但我发现的一切都没用。
我希望将表中的值设置为标签的text属性。这就是我到目前为止所做的:
在一个单独的类中,连接字符串为“conn” -
(SQL Region)
Public Const SELECT_1 As String = "SELECT TOP 1 * FROM [TableTimes]
WHERE [timeID] = @PKey"
(方法区域)
Public Shared Function returnOneRow(PrimaryKey As Integer) As TableTimes
Dim returnRow As New TableTimes(0)
Dim conn As New SqlConnection
conn.connectionstring = Conn.getConnectionString
Dim command As New SqlCommand
command.connection = conn
command.CommandType = CommandType.Text
command.CommandText = SQL.SELECT_1
command.Parameters.AddWithValue("@PKey", PrimaryKey)
Try
conn.Open()
Dim dR As IDataReader = command.ExecuteReader
If dR.Read() Then
returnRow.timeID = PK
If Not IsDBNull(dR(Fields.linkID)) Then returnRow.linkID = dR(Fields.linkID)
If Not IsDBNull(dR(Fields.dateTime)) Then returnRow.dateTime = dR(Fields.dateTime)
End If
Catch ex As Exception
Console.WriteLine(Err.Description)
End Try
Return returnRow
End Function
然后回到主窗体我试图根据我作为参数输入的主键(timeID)将dateTime设置为标签。这是我能想到的最接近的:
label.Text = (Tables.TableTimes.returnOneRow(1).dateTime).ToString
我知道根据我的表格数据,timeID为1的行的输出应为“2016-02-04 10:00:00”,而是返回“0001-01-01 12:00:00” “无论我输入什么参数。
如果可能的话,我宁愿不改变我的方法或sql语句,只是改变我在主窗体中调用函数的方式。
谢谢!