c#操作MySQL数据库-Null值的插入及自增主键的插入时获取

c#操作MySQL数据库-Null值的插入及自增主键的插入时获取

注明

本段摘自我的文章:https://blog.csdn.net/qq_39024280/article/details/117113736?spm=1001.2014.3001.5501
因为时常用到所以独立出来方便直接搜索查询

null值的插入

/// <summary>
/// 插入数据(带null)
/// </summary>
public void InsertItWithNull(int bookId, String chapterName, String chapterContent, int chapterIndex)
{
    String now = DateTime.Now.ToString("yyyy-MM-dd");
    string searchStr = "Insert into chapters value(@id, @bookId, @chapterName, @chapterContent,@now, @chapterIndex)";
    MySqlCommand cmd = new MySqlCommand(searchStr, conn);
    cmd.Parameters.AddWithValue("@id", DBNull.Value); // 注意c#的null和数据库的null不同, 如果赋值null必须使用DBNull.Value 
    cmd.Parameters.AddWithValue("@bookId", bookId);
    cmd.Parameters.AddWithValue("@chapterName", chapterName);
    cmd.Parameters.AddWithValue("@chapterContent", chapterContent);
    cmd.Parameters.AddWithValue("@now", now);
    cmd.Parameters.AddWithValue("@chapterIndex", chapterIndex);
    cmd.ExecuteNonQuery();
}

自增主键的插入时获取

/// <summary>
/// 插入数据(插入带自增主键的数据,并返回自增数据id)
/// </summary>
public long InsertItReturnId(int bookId, String chapterName, String chapterContent, int chapterIndex)
{
    String now = DateTime.Now.ToString("yyyy-MM-dd");
    string searchStr = "Insert into chapters(book_id, chapter_name, chapter_content,update_date, chapter_index) " +
        "value(@bookId, @chapterName, @chapterContent,@now, @chapterIndex)";
    MySqlCommand cmd = new MySqlCommand(searchStr, conn);
    // 这里存在一个id参数是自增的,如果插入时不定义,系统会自动使其自增填充
    cmd.Parameters.AddWithValue("@bookId", bookId);
    cmd.Parameters.AddWithValue("@chapterName", chapterName);
    cmd.Parameters.AddWithValue("@chapterContent", chapterContent);
    cmd.Parameters.AddWithValue("@now", now);
    cmd.Parameters.AddWithValue("@chapterIndex", chapterIndex);
    cmd.ExecuteNonQuery();
    // 这个返回值就是自增值结果
    return cmd.LastInsertedId;
}

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值