关于数据库中字段的几个问题,在线等!
我在使用ASP.NET和c#做网站的时候,碰到下列问题:
1、数据库中某表的一个字段className是VARCAHR(50)类型,可是我在页面上显示的时候,值的字数为偶数的显示正常,为奇数的老显示少一个汉字,例如:“笔记本”显示出来是“笔记”;“办公用品”显示为正常的“办公用品”,这是怎么回事?
2、数据库中某表的一个字段price类型为money(8)类型,我读出来的时候将其赋给string类型的变量,
然后显示在页面上,可是显示出来为像“65.0000”这样的形式,就是后面多了两个0;怎么回事?money类型应该怎么存取?
3、数据库中一个字段img类型为image(16),值显示为<Binary>二进制文件类型,请问这样的数据类型是怎么存取的?也就是程序中应该用什么类型的变量进行替换?
我现在用的数据库是别人的,我是初学者,对这几个类型不太清楚,请大虾们指点一二,在线等,谢了!
问题点数:40、回复次数:14Top
1 楼leisang(仰望深邃的星空)回复于 2004-09-03 21:57:16 得分 0
把VARCAHR改成NVarchar,后者是Unicoe编码的,不会出现中文少字。
Top
2 楼stdotleo(大雨仔|M$ MVP)回复于 2004-09-03 21:57:59 得分 10
1.奇怪
2.String.Format("0:c",Double.Parse(price))Top
3 楼stdotleo(大雨仔|M$ MVP)回复于 2004-09-03 22:01:03 得分 0
3.dotnet.aspx.ccTop
4 楼xiaowu703()回复于 2004-09-03 22:12:58 得分 0
1、leisang,我把VARCAHR改成NVarchar,问题照旧;
2、stdotleo,String.Format("0:c",Double.Parse(price)),能不能详细点?举个例子,如果price值为“3.6”,应该怎么显示?
3、stdotleo,能不能说的详细点?我是初学者,谢了。Top
5 楼pingnt(淡蓝色的雪)回复于 2004-09-03 22:51:42 得分 0
你可以查查有正字符的格式化问题,在MSDN中有的.Top
6 楼xiaowu703()回复于 2004-09-03 23:21:41 得分 0
谁能帮我解决第一个问题?
我真的糊涂了,按理说不该有这样的问题!郁闷!!!Top
7 楼xiaowu703()回复于 2004-09-03 23:28:49 得分 0
我顶!Top
8 楼tbmlh(成林)回复于 2004-09-10 16:46:18 得分 0
我在顶Top
9 楼luckysusan(海闊天空)回复于 2004-09-10 17:00:17 得分 10
1、leisang,我把VARCAHR改成NVarchar,问题照旧;
你只是改了数据库,你要查查插入的代码
如果是存储过程,检查传入的参数类型是否也为nvarchar
如果是code里面直接用insert,注意values中对应的值前加NTop
10 楼yt_net(进步中...)回复于 2004-09-10 17:16:00 得分 10
出现这种情况真的很奇怪,关注一下Top
11 楼spland(spland)回复于 2004-09-10 17:26:28 得分 0
1 存或取得有没有做过其他处理,比如长度截取?
从没遇到这样的问题Top
12 楼FlyBirdInLife(飞翔鸟)回复于 2004-09-10 17:50:43 得分 0
奇怪,upTop
13 楼50277(柳影随风)回复于 2004-09-10 20:36:12 得分 10
我一直用varchar没出现过这种问题,最大时用的varcahr(2000)都没出现这种问题?你这问题有点怪异!Top
14 楼xiaowu703()回复于 2004-09-11 13:05:39 得分 0
他好像就是将奇数个汉字显示成少一个汉字+?的形式:如将“笔记本”显示成“笔记?”,我是用URL传递这个参数的,在赋值的时候没有出错,可是将这个参数取出来后就变成这个样子了,怪了,有谁遇见过这样的问题?Top




