直接将参数赋值为常量0则参数值为null,出现异常:MySql.Data.MySqlClient.MySqlException (0x80004005): Column 'PayType' cannot be null

public static long CreateIntegralPay(long memId, decimal payAmount, decimal buyIntegral)
{
var id = BitConverter.ToInt64(Guid.NewGuid().ToByteArray(), 0);
var sqlBuffer = new StringBuilder();
sqlBuffer.AppendLine("insert into `memberintegralrecordpay` (`Id`,`MemberId`,`PayType`,`PayAmount`,`BuyIntegral`,`PayStatus`,`RecordTime`,`Remark`)");
sqlBuffer.AppendLine("values(@Id, @MemberId, @PayType, @PayAmount, @BuyIntegral, @PayStatus, @RecordTime, @Remark);");
//sqlBuffer.AppendLine("select @@identity; ");
const int val= 0;
var sqlParameters = new MySql.Data.MySqlClient.MySqlParameter[]
{
new MySql.Data.MySqlClient.MySqlParameter("@Id",id),
new MySql.Data.MySqlClient.MySqlParameter("@MemberId",memId),
new MySql.Data.MySqlClient.MySqlParameter("@PayType", 0),
new MySql.Data.MySqlClient.MySqlParameter("@PayAmount", payAmount),
new MySql.Data.MySqlClient.MySqlParameter("@BuyIntegral",buyIntegral),
new MySql.Data.MySqlClient.MySqlParameter("@PayStatus",val),
new MySql.Data.MySqlClient.MySqlParameter("@RecordTime",DateTime.Now),
new MySql.Data.MySqlClient.MySqlParameter("@Remark",string.Empty)
};
if (DbHelper.ExecuteSql(sqlBuffer.ToString(), sqlParameters) > 0)
{
return id;
}
return 0;
}

  

将0用变量代替后没有问题

public static long CreateIntegralPay(long memId, decimal payAmount, decimal buyIntegral)
{
var id = BitConverter.ToInt64(Guid.NewGuid().ToByteArray(), 0);
var sqlBuffer = new StringBuilder();
sqlBuffer.AppendLine("insert into `memberintegralrecordpay` (`Id`,`MemberId`,`PayType`,`PayAmount`,`BuyIntegral`,`PayStatus`,`RecordTime`,`Remark`)");
sqlBuffer.AppendLine("values(@Id, @MemberId, @PayType, @PayAmount, @BuyIntegral, @PayStatus, @RecordTime, @Remark);");
//sqlBuffer.AppendLine("select @@identity; ");
int val = 0;
var sqlParameters = new MySql.Data.MySqlClient.MySqlParameter[]
{
new MySql.Data.MySqlClient.MySqlParameter("@Id",id),
new MySql.Data.MySqlClient.MySqlParameter("@MemberId",memId),
new MySql.Data.MySqlClient.MySqlParameter("@PayType", val),
new MySql.Data.MySqlClient.MySqlParameter("@PayAmount", payAmount),
new MySql.Data.MySqlClient.MySqlParameter("@BuyIntegral",buyIntegral),
new MySql.Data.MySqlClient.MySqlParameter("@PayStatus",val),
new MySql.Data.MySqlClient.MySqlParameter("@RecordTime",DateTime.Now),
new MySql.Data.MySqlClient.MySqlParameter("@Remark",string.Empty)
};
if (DbHelper.ExecuteSql(sqlBuffer.ToString(), sqlParameters) > 0)
{
return id;
}
return 0;
}

  

MySql 参数赋值bug (MySql.Data, Version=6.9.6.0 沙雕玩意)的更多相关文章

  1. 发布后台接口报错:could not load file or assembly 'mysql.data,' version=6.7.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d

    本地调试正常,但是服务器上面一直报错:could not load file or assembly 'mysql.data,' version=6.7.4.0, Culture=neutral, P ...

  2. MySQL程序之mysql参数详解

    MySQL程序之mysql参数详解 mysql 是一个命令行客户程序,用于交互式或以批处理模式执行SQL语句 用法: mysql [OPTIONS] [database] 参数: 1.-? --hel ...

  3. 关于MySQL参数,这些你要知道

    前言: 在前面一些文章中,经常能看到介绍某某参数的作用,可能有些小伙伴仍搞不清楚 MySQL 参数是啥.本篇文章我们来聊聊 MySQL 参数,学习下如何管理维护 MySQL 参数. 1.MySQL参数 ...

  4. MySQL参数文件及参数修改方法

    MySQL参数文件: MySQL数据库初始化参数由参数文件来设置,如果没有设置参数文件,mysql就按照系统中参数的默认值来启动. 在windows和linux上,参数文件可以被放在多个位置,数据库启 ...

  5. mysql小白系列_02 mysql源码安装标准化

    问题: 1.为什么数据目录和日志目录需要分开? 2.如何标准化配置多实例?(例如:一台物理主机上部署3306与3307两个实例) 3.详细描述MySQL编译安装的过程(截图安装步骤) 1.为什么数据目 ...

  6. 官方推荐的MySQL参数设置值

    这oracle官方推荐的在OLTP环境下,MySQL参数设置的最佳实践. 下面的参数设置,对系统的性能会很有帮助.但是建议大家还是结合实际情况使用. APPLIES TO: MySQL Server ...

  7. 关于参数net_buffer_length How MySQL Uses Memory

    http://dev.mysql.com/doc/refman/5.6/en/memory-use.html The following list indicates some of the ways ...

  8. MySQL参数调优最佳实践

    前言很多时候,RDS用户经常会问如何调优RDS MySQL的参数,为了回答这个问题,写一篇blog来进行解释: 哪一些参数不能修改,那一些参数可以修改:这些提供修改的参数是不是已经是最佳设置,如何才能 ...

  9. MySQL DBA教程:Mysql性能优化之缓存参数优化

      在平时被问及最多的问题就是关于 MySQL 数据库性能优化方面的问题,所以最近打算写一个MySQL数据库性能优化方面的系列文章,希望对初中级 MySQL DBA 以及其他对 MySQL 性能优化感 ...

随机推荐

  1. 数据挖掘--DBSCAN

    DBSCAN:Density Based Spatial Clustering of Applications with Noise Basic idea: If an object p is den ...

  2. Centos 7 下yum搭建lnmp环境(yum安装方式)

    我们都知道linux下安装软件主要有三种方式: 1.源码编译安装,即下载软件源代码,利用gcc g++ make 等编译工具进行编译安装: 此方式的优点:可以指定软件版本,可选择性好:编译时可以手动指 ...

  3. Docker介绍及安装(一)

    一.Docker简介 1.1 docker介绍 Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的cgroup,namespace,以及 AUFS 类的 ...

  4. ssh登录缓慢,输入账户密码等待时间长

    vim /etc/ssh/sshd_config #取消ssh的反向dns解析 UseDNS no #关闭ssh的gssapi认证 GSSAPIAuthentication no #排查是否日志文件过 ...

  5. 201871010101-陈来弟《面向对象程序设计(Java)》第十一周学习总结

    201871010101-陈来弟<面向对象程序设计(Java)>第十一周学习总结 实验九  泛型程序设计技术 实验时间 2019-11-8 第一部分:理论基础知识 1.什么是泛型类 泛型是 ...

  6. 201871010134-周英杰《面想对象程序设计(java)》第十一周学习总结

    项目 内容 <面向对象程序设计(java)> https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/ ...

  7. socket缓冲区以及阻塞模式(七)

    一.socket缓冲区 每个 socket 被创建后,都会分配两个缓冲区,输入缓冲区和输出缓冲区. 以下用write()/send()表示写数据/发送数据,read()/recv() 表示读数据/接收 ...

  8. 一些开源cdc框架以及工具

    以下是一些cdc工具,没有包含商业软件的 zendesk maxwell 参考地址 https://github.com/zendesk/maxwell 功能 mysql 2 json 的kafaa ...

  9. 【K短路】牛慢跑

    牛慢跑 据说是\(k\)短路模板,要用\(A^*\),然而我不会.我是用拓扑排序加堆优化广搜水过去的.第一道完全靠自己做出来的紫题,调了两个小时,交了两遍.果然我还是太菜了. 正解的话,可以看红太阳的 ...

  10. springcloud2.x之management.security.enabled=false报错处理

    1. springcloud1.5.x的消息总线配置是 # RabbitMq的地址.端口,用户名.密码 spring.rabbitmq.host=localhost spring.rabbitmq.p ...