从代码中的string到数据库的char()的转换问题
PC但丁 2013-05-07 11:37:22 无语了,碰到一个问题,就是string换成char的不成功问题。
题目:
生成多个随机码,并且塞到Mysql数据库中,具体要求如下:
随机码的字母表为:0123456789ABCDEFGHJKLMNPQRSTUVWXYZ
随机码的长度为32位
以上两个值都固定在代码中,程序运行后,输入生成的随机码个数,程序根据输入个数生成随机码,生成随机码后把对应的随机码都塞到Mysql数据库中
建立一个名为Test0507的数据库,此数据库只有一张表:t_RandomCode,表结构为:fRandomCode char(32), fInputDate DateTime两个字段(其中fRandomCode为生成的随机码,fInputDate为此随机码插入数据库具体日期)
------------------------------------------------
我的做法是getRandomString()得到一个长度为32的string,但是放不进去数据库里面。
随后我测试了一下:
1.我首先用gui工具编辑那张表,是可以输入32个字符的。
2.我把表结构改成fRandomCode char(33),则可以成功插入。
3.或者getRandomString()生成的是31长度的string也可以成功插入。
我认为是string后面的'\0'产生的影响,应该怎么办才好。题目要求是不能改的了- -!
求指教啊!!