【问题标题】:Inserting unique values from datagridview to mysql database table将唯一值从 datagridview 插入 mysql 数据库表
【发布时间】:2015-12-15 10:27:52
【问题描述】:

我有一个数据网格视图,它成功地将数据从数据网格插入到 mysql 表中。但它只是插入 mysql 表中已经存在的行。如果我在 mysql 表中分配主键,它会抛出主键不能重复的错误。任何人都可以通过使用 NOT EXISTS、DISTINCT 或其他任何方法来帮助生成此查询。

我的代码是:

 using (MySqlCommand cmd = new MySqlCommand("INSERT INTO markeddeleted VALUES(@product_id, @product_name, @category_id)", con))

【问题讨论】:

    标签: mysql sql tsql datagridview insert


    【解决方案1】:

    您可以使用以下之一:

    INSERT IGNORE INTO markeddeleted VALUES(@product_id, @product_name, @category_id)

    这将忽略错误(但也会忽略其他错误)。

    INSERT INTO markeddeleted (product_id,product_name,category_id) VALUES(@product_id, @product_name, @category_id) ON DUPLICATE KEY UPDATE product_name=@product_name

    这将更新存在重复键的行。

    【讨论】:

    • 当我使用第二个查询时,它会抛出一个未处理的 MySqlException:“您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本相对应的手册,以了解在 ' 附近使用的正确语法在第 1 行设置 product_name='pro_name"
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-02
    • 2012-08-09
    • 1970-01-01
    • 1970-01-01
    • 2013-01-14
    • 2016-03-11
    • 2016-04-20
    相关资源
    最近更新 更多