ADO方式,VC调用Execute执行INSERT INTO插入变量SQL语句的写法
有些情况下,SQL SERVER 2008r2中需要保存float,int类型的数据,当C
中的变量为double类型时,先格式化为Cstring格式,再组合成SQL语句。
对应的C 插入语句写法如下:
[cpp] view plain copy
其中表Gps的结构如下:
其中timegps,s1_distancestr,s1xstr等变量均为CString 类型变量
timegps为格式化后的时间字符串,
s1_distancestr为double类型变量s1_distance格式化后的字符串
如:s1_distancestr.Format("%.2lf",s1_distance);
执行插入后,结果如下图所示:
可以看到虽然插入时的SQL语句中变量为Cstring类型,但是不影响它在数据库中的存储类型,应该是内部已经帮忙转化过了
当把表Gps的结构除了datetime列以外全部改为varchar(50)类型时,也能全部存储。
另外数据库中float int类型插入的时候,如果变量数据为空,则默认插入0
varchar 默认插入为空
必要的时候可以通过判断这些状态,从而看出数据异常~