参数化查询 但未提供该参数(将null插入数据库)
当你是使用参数化查询时为参数赋值时,比如command.Parameters.Add("@a",SqlDbType.Text,30).Value=a;当a=null是将报错:
错参数化查询 '(@a varchar(100)....' 需要参数 '@a',但未提供该参数
只是因为你给a的值为null,而数据库中的null(空)是System.DBNull 类型的不是同一类。所以在插入空的时候要用DBNull,而不是null,
所以可以这样改:
command.Parameters.Add("@a",SqlDbType.Text,30).Value=a ?? DBNull.Value;
?? :?? 运算符称作 null 合并运算符。如果此运算符的左操作数不为 null,则此运算符将返回左操作数;否则返回右操作数。
但是还是会报下面的错误。
解决方法:
很简单只要在后面加上 ToString()就好了;
如下
command.Parameters.Add("@a",SqlDbType.Text,30).Value=a ?? DBNull.Value.ToString();
参数化查询 但未提供该参数(将null插入数据库)相关推荐
- 牛腩新闻发布--过程或函数 'news_selectByCaId' 需要参数 '@caid',但未提供该参数(一)
发现问题 今天敲击牛腩,在敲击Web页面的List.aspx之后,点击Ctrl+F5运行,发现运行不了,首先是数据库中调取数据有问题,因为这个数据是用存储过程调取的,所以需要修改存储过程,这时候只需要 ...
- 牛腩新闻发布--过程或函数 'news_selectByCaId' 需要参数 '@caid',但未提供该参数(三)
发现问题 这篇博客是建立在"牛腩新闻发布–过程或函数 'news_selectByCaId' 需要参数 '@caid',但未提供该参数(二)",因为在那篇博客中说出了我当时遇到的& ...
- 牛腩新闻发布--过程或函数 'news_selectByCaId' 需要参数 '@caid',但未提供该参数(二)
发现问题 之前有一篇博客是因为存储过程中没有添加相应的函数,导致出现了"过程或函数 'news_selectByCaId' 需要参数 '@caid',但未提供该参数",这次继续出现 ...
- 【牛腩】过程或函数 ‘news_selectByCaId‘ 需要参数 ‘@caid‘,但未提供该参数
[前言] 在运行牛腩的时候会有提示过程或者函数缺少参数.这个是因为存储过程中写的缺少参数,添加相应的参数就可以了. [问题描述] 过程或函数 'news_selectByCaId' 需要参数 '@ca ...
- 【牛腩】-'T_news_selectByCaId' 需要参数 '@caid',但未提供该参数。”
问题截图 解决方案: 改动存储过程 BEGINselect n.id,n.title,n.createTime,c.[name],n.caId from T_news ninner join T_ca ...
- Jdbc访问mysql查询聚合函数_JDBC连接参数设置对Oracle数据库的影响分析
一次数据库性能问题处理引发的JDBC参数设置思考 近期某环境下系统,出现大面积页面访问缓慢情况,每个页面交易响应时间2-5秒,严重超过平日访问阈值. 经排查分析,问题主要出现在数据库,生成AWR得到3 ...
- UCML页面生成后突然不能访问 参数化查询 '(@ActivityID nvarchar(4000))SELECT ActivityInfoEx.ActivityInfoEx' 需要参数 '@Acti
UCML编辑了某个BPO之后.页面报错,提示如下信息 参数化查询 '(@ActivityID nvarchar(4000))SELECT ActivityInfoEx.ActivityInfoEx' ...
- SqlServer:带IN()子句C#的参数化查询
目录 介绍 IN()子句帮助类 SQL查询构建 具有实体框架的参数化查询 使用SqlCommand进行参数化查询 数据 数据库,表和数据行 Db连接字符串 其他数据库 一个实用程序类,使用参数化查询在 ...
- dapper mysql 多参数查询_使用Dapper进行参数化查询
在使用Dapper操作Mysql数据库中我介绍了使用dapper进行CURD基本操作,但在示例代码中参数虽然也是通过@开头,但其实不是真正意义的参数化查询,而是拼接sql,这种方式不利于防止sql注入 ...
最新文章
- 二、使用rails3.0自带的数据检查功能检查输入数据
- 【bzoj4592】[Shoi2015]脑洞治疗仪
- Open images from USB camera on linux using V4L2 with OpenCV
- 最短路算法模板--SPFA
- 后台如何通过Request取得多个含有相同name的控件的值?
- A - System Administrator CodeForces - 245A(水题)
- Microsoft Hololens开发上手(4)
- python栈应用_栈应用之 后缀表达式计算 (python 版)
- AngularJS中$timeout和$interval的用法详解
- CENTOS 7.0 安装discuz ,搭 mysql +php+apache 环境
- Python基础学习3——集合、文件、函数
- linux sed批量更改文件,Linux利用sed批量修改文件名(示例代码)
- 数据结构题集c语言版题目与答案,数据结构题集(C语言版)答案 - 严蔚敏编著...
- Win10下 vc++6.0打开文件闪退解决
- 服务器显示cpu温度高,高手教你巧解cpu温度过高问题
- 基于 CentOS 7 配置 NIS 主从实现集中化认证
- CentOS8下超详细安装配置kubernetes(K8S)
- 校招vivo技术面试总结
- 组建一个计算机网络系统有,组建一个计算机网络一般需要哪些部件
- EEG-MI 基于EEG信号的运动想象分类实验
热门文章
- Nature综述:进化病毒毒力的系统发育基因组学
- QIIME 2用户文档. 12训练特征分类器Training feature classifiers(2018.11)
- 计算机专业教育,科学网—中国大学计算机教育路在何方? - 吴军的博文
- Seaborn使用set_context函数调整绘图标签和线条的大小、设置不同的模式、例如notebook模式、PPT模式、海报模式等、set_context函数可以指定绘图上下文并自动调整标签和线条
- R语言KMeans聚类分析确定最优聚类簇数实战:间隙统计Gap Statistic(确定最优聚类簇数)
- R语言merge函数全连接dataframe数据(Full (outer) join)、merge函数进行全连接必须将参数all设置为true(all=TRUE)、默认merge函数通过公共列名合并数
- 什么是生存分析(survival analysis)?
- R语言配置可视化内容中的字体为斜体(italic)实战:标题斜体、轴标签斜体、文本内容斜体、或者部分内容斜体
- python模拟退火(Simulated Annealing)参数寻优实战
- 概率潜在语义分析(Probabilistic Latent Semantic Analysis,PLSA)