gpt4 book ai didi

sql - 从 VB NET 中的 sql 数据库中检索位列

转载 作者:搜寻专家 更新时间:2023-10-30 20:02:52 25 4
gpt4 key购买 nike

我遇到了一个问题,在我的数据库中,我有一个列是 0 或 1,指定用户是管理员还是帐户被暂停。在我的 VB 代码中,我试图检索该位。示例代码:

    Dim dtRequests As DataTable
dtRequests = New DataTable("Users")
dtRequests.Columns.Add("SESLoginID", System.Type.GetType("System.Int32"))
dtRequests.Columns.Add("fullname", System.Type.GetType("System.String"))
dtRequests.Columns.Add("SESSuspended", System.Type.GetType("System.Byte"))
dtRequests.Columns.Add("SESAdmin", System.Type.GetType("System.Byte"))
dtRequests.Columns.Add("OfficeName", System.Type.GetType("System.String"))

cmdoledb = New SqlCommand("SELECT SESLoginID, SESFirstName + ' ' + SESLastName As fullname , SESSuspended, SESAdmin, OfficeID from SESLogin where (SESEmail Like '%" & keyword & "%' or SESFirstName + ' ' + SESLastName like '%" & keyword & "%' or SESLastName like '%" & keyword & "%') order by SESFirstName;", objConnect)
cmdoledb.Parameters.AddWithValue("@pid", pid)
objConnect.Open()

Dim rdr As SqlDataReader
Dim myItem As ListItem = New ListItem()
rdr = cmdoledb.ExecuteReader()

While rdr.Read()
Dim newrow As DataRow
newrow = dtRequests.NewRow
newrow.Item("SESLoginID") = rdr.GetInt32(0)
newrow.Item("fullname") = rdr.GetString(1)
newrow.Item("SESSuspended") = rdr.GetByte(2) // Specified cast is not valid.
newrow.Item("SESAdmin") = rdr.GetByte(3) // Specified cast is not valid.

Dim officeid As Integer = rdr.GetInt32(4)
Dim officename As String = ""

cmdldb = New SqlCommand("SELECT OfficeName from Office where OfficeID = @offid", objConnected)
cmdldb.Parameters.AddWithValue("@offid", officeid)
objConnected.Open()

officename = cmdldb.ExecuteScalar()
newrow.Item("OfficeName") = officeid
objConnected.Close()
dtRequests.Rows.Add(newrow)
End While

我尝试获取 rdr.GetByte(3),这告诉我转换无效,但没有任何函数会说 GetBit,如果存在,我找不到它。因此,我希望得到快速响应。

最佳答案

尝试使用 rdr.GetBoolean(3) 获取位值。 SQL Server 中的位与 VB 中的 bool 值相同,只是它使用 1 和 0 而不是 true 和 false。

关于sql - 从 VB NET 中的 sql 数据库中检索位列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6827222/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com