易截截图软件、单文件、免安装、纯绿色、仅160KB

IBatisNet SQL Server的float类型转换为c# float出错

今天写一个商品的修改功能时遇到的问题
商品中重量 weight 的数据库(SQL Server2005)类型定义为 float
在mappings 中转换为c#类型的一句为
<result property="Goods_Weight" column="Goods_Weight" type="float" dbType="float"/>
按理说这个 float 是一样的,转换完全不会出现问题,
实际程序运行时,系统报错
捕捉到 System.InvalidCastException
  Message="指定的转换无效。"
  Source="System.Data"
  StackTrace:
       在 System.Data.SqlClient.SqlBuffer.get_Single()
       在 System.Data.SqlClient.SqlDataReader.GetFloat(Int32 i)
       在 IBatisNet.DataMapper.Commands.DataReaderDecorator.System.Data.IDataRecord.GetFloat(Int32 i)
       在 IBatisNet.DataMapper.TypeHandlers.SingleTypeHandler.GetValueByIndex(ResultProperty mapping, IDataReader dataReader)
       在 IBatisNet.DataMapper.Configuration.ResultMapping.ResultProperty.GetDataBaseValue(IDataReader dataReader)
       在 IBatisNet.DataMapper.MappedStatements.ResultStrategy.AutoMapStrategy.Process(RequestScope request, IDataReader& reader, Object resultObject)
       在 IBatisNet.DataMapper.MappedStatements.ResultStrategy.ResultClassStrategy.Process(RequestScope request, IDataReader& reader, Object resultObject)
       在 IBatisNet.DataMapper.MappedStatements.MappedStatement.RunQueryForObject(RequestScope request, ISqlMapSession session, Object parameterObject, Object resultObject)
       在 IBatisNet.DataMapper.MappedStatements.MappedStatement.ExecuteQueryForObject(ISqlMapSession session, Object parameterObject, Object resultObject)
       在 IBatisNet.DataMapper.MappedStatements.MappedStatement.ExecuteQueryForObject(ISqlMapSession session, Object parameterObject)
     &


相关文档:

探讨PHP SQL注入的解决思路

思路:SQL里尽可能的采用两个引号闭合变量;对变量中的引号转义;对不能采用2个引号闭合的变量,先预先判断变量类型;  
   
  方案:  
  1   所有非数值运算(如字符,简单数值型等等)的SQL变量都加引号;  
  2   所有非数值运算的SQL变量的值都采用magic_quotes_gpc� ......

一些简单的SQL语句总计

--------检测数据库是否存在
use master
go
if exists(select * from sysdatabases where name='DBName')
drop database DBName
-----创建数据库
create database DBName
on
(
 /*数据文件的具体描述*/
 name='DBName_data', -----主数据文件的逻辑名称
 filename='D:\project\DBName_data.mdf', ......

Sql语句学习笔记(2) 创建数据表

use RetalDB--表示在数据库RetalDB中进行的操作
go
if exists (select * from sysobjects where name='tb_user')
 drop table tb_user
go
--创建客户表tb_user
create table tb_user
(
 user_id int primary key,--指定为主键时,此列默认为非空,指定过多个限制条件时不用“'”隔开
 us ......

SQL Server 2008 Resource Governor

 
一、问题引出:
当某一台SQL Server实例上创建有多个数据库的时候,如果某一个数据库过度占有系统资源,往往会导致其它数据库性能受到严重影响,甚至大大降低整个数据库的性能。
这种情况下,如果有一种技术或者方法可以限制数据库资源的占有量,给与一个峰值,从而给与其它的数据库足够的资源。那么这个问题就可 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号