以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  老是出现标准表达式数据类型不匹配,大家看下是错在哪点?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=41744)

--  作者:riancel
--  发布时间:2013/10/26 10:14:00
--  老是出现标准表达式数据类型不匹配,大家看下是错在哪点?

 

在收费名册表中有一个列更改事件,就是票据号码变更后,

需要在票据统计表中查询出这张票据号是属于哪一类收费票据,如事业收费,代管费或培训费的票据。

是使用的外部数据表,代码如下:

If e.DataCol.Name = "pjno" Then
    Dim cmd As New SQLCommand
    Dim dt As DataTable
    Dim dr As DataRow = e.DataRow
    cmd.C
    cmd.CommandText = "SELECT * from {pj_tj} Where [pjno_ks] < \'" & dr("pjno") & "\' And [pjno_js] > \'" & dr("pjno") & "\'"
    dt = cmd.ExecuteReader
    If dt.DataRows.Count > 0 Then
        dr("pjlei") = dt.DataRows(0)("pj_lei")
    End If
End If

 

我在数据库中选择的是长整型,可是老是报错说类型不匹配。

我试并将数据中改为整型,但是在foxtable中会发现它会显示为短整型,

短整型的数值范围不够用。

详见附件吧,要达到的效果就是,票据号码变更后,会显示出票据所属类型就可以了。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:sql add.zip


 


图片点击可在新窗口打开查看此主题相关图片如下:err2.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2013-10-26 10:19:03编辑过]

--  作者:Bin
--  发布时间:2013/10/26 10:28:00
--  
你,把数值类型当作字符串来使用,当然会报错数据类型不匹配了.

数值类型是不需要加单引号的

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:sql add.table



--  作者:riancel
--  发布时间:2013/10/26 10:37:00
--  
原来哦,我不懂无罪啊,谢谢谢谢
--  作者:狐狸爸爸
--  发布时间:2013/10/26 11:17:00
--  

合成表达式是最重要的技能之一,楼主好好看看:

http://www.foxtable.com/help/topics/1284.htm