Foxtable(狐表)用户栏目专家坐堂 → 加载错误


  共有2629人关注过本帖树形打印复制链接

主题:加载错误

帅哥哟,离线,有人找我吗?
有点甜
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/6 9:50:00 [显示全部帖子]

1.直接改数据库字段类型。
2.把SQL语句修改为:select * from A where convert(nvarchar(255),test)=’xxx’。

因为不管是text还是nvarchar,实体类中的影射都应该是string,因为C#只有一个string是用来表示字符串的,不过这两个数据类型在数据库中是完全不同的,所以无法在他们之间进行比较操作,尤其那个ntext,很多操作都不能做,就算是两个ntext类型,也没有办法进行比较操作。
test字段为ntext类型
SQL语句:select * from A where test=’xxx’
执行之后会出现:
数据类型 ntext 和 varchar 在 equal to 运算符中不兼容的错误信息。
那把SQL语句该成:select * from A where test=convert(ntext,’xxx’)
结果出现:数据类型 ntext 和 ntext 在 equal to 运算符中不兼容的错误信息。


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/6 15:52:00 [显示全部帖子]

把你的单号列改成【字符】类型,不要用【备注】类型

 

http://www.foxtable.com/webhelp/scr/0036.htm

 

或者修改代码,如

 

"convert(varchar(255), 列名) = '" & st & "' or convert(varchar(255), 列名) = '" & st & "'"


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/6 16:39:00 [显示全部帖子]

以下是引用jackchan120925在2018/4/6 16:25:00的发言:
convert(varchar(255), 列名)  相当于把列的类型从<备注>修改为了<字符>对么? 那么字符的对打长度为255,如果列超过了这个长度,会被自定截短吗?
谢谢

 

是的。你可以改动255为4000,基本都够用了。

[此贴子已经被作者于2018/4/6 16:39:17编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/4/6 17:22:00 [显示全部帖子]

以下是引用jackchan120925在2018/4/6 16:52:00的发言:

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20180406165029.png


字符类型不是有255限制的么?还能突破这个限制的?

 

没办法,超过255字符,就只能改成【备注】类型了。


 回到顶部