以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  从数据类型 nvarchar 转换为 numeric 时出错  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=79261)

--  作者:lzzhx
--  发布时间:2015/12/28 0:11:00
--  从数据类型 nvarchar 转换为 numeric 时出错
请教老师:

    Dim tb As Table = e.Form.Controls("Table1").Table

    Dim dr As Row =tb.Current

 

    Dim cmd As new SQLCommand

    cmd.Cfont-size: 9pt; font-family: 宋体;">我的数据源"

    cmd.CommandText= "s elect 上级部门名称 from 公司部门表 where 部门编号 = " & dr("部门编号")

    Dim dt1 As DataTable = cmd.ExecuteReader

    Dim dr1 As DataRow = dt1.DataRows(0)

    If dr1 IsNot Nothing Then

        Forms("用户新增").Controls("上级部门").text = dr1("上级部门名称")

    Else

        Forms("用户新增").Controls("上级部门").text = ""

    End If

 

 

所有字段都是字符型的,执行到第5行时出现下面错误

 

从数据类型 nvarchar 转换为 numeric 时出错。


请教老师是什么原因?


--  作者:lzzhx
--  发布时间:2015/12/28 0:28:00
--  
找着问题了,
cmd.CommandText= "s elect 上级部门名称 from 公司部门表 where 部门编号 = " & dr("部门编号")
改为
cmd.CommandText= "s elect 上级部门名称 from 公司部门表 where 部门编号 = " & "\'" & dr("部门编号") & "\'"