【问题标题】:I can't run a correct query on visual studio我无法在 Visual Studio 上运行正确的查询
【发布时间】:2020-04-21 00:17:00
【问题描述】:

我认为问题出在格式上。 我在课堂上有这段代码:

public DataTable CheckDate(DateTime day)
    {
        MySqlCommand command = new MySqlCommand("SELECT * FROM `appuntamenti` WHERE `date`='@date'", conn.getConnection());
        command.Parameters.Add("@date", MySqlDbType.Date).Value = date;
        MySqlDataAdapter adapter = new MySqlDataAdapter();    
        DataTable table = new DataTable();
        adapter.SelectCommand = command;
        adapter.Fill(table);
        return table;
    }

e 在 c# 的形式中,我使用:

private void button2_Click(object sender, EventArgs e)
    {          
        DateTime day = dateTimePicker2.Value;
        dataGridView1.DataSource = appuntamento.CheckDate(day);

    }

当我单击按钮 2 时,它会生成查询并生成空过滤表。 数据库中的格式是 YYYY-MM-GG,但在 Visual Studio 中,格式是 GG-MM-YYYY。 我更改了 YYYY-MM-GG 中的格式,但它产生了一个不寻常的错误(我单击 datatimepicker 24/04/2020,但输出 datatimepicker 是 2020-00-24)。当我在 localhost/phpmyadmin 上使用我的查询时,它可以工作。 你能帮帮我吗?

【问题讨论】:

    标签: c# mysql visual-studio


    【解决方案1】:

    尝试删除 @date 周围的引号。

    PDO 语句应该处理其余部分

    【讨论】:

      【解决方案2】:

      删除查询中的所有引号。

      像这样:

      "SELECT * FROM appuntamenti WHERE date = @date"
      

      【讨论】:

        猜你喜欢
        • 2020-01-21
        • 1970-01-01
        • 2020-09-17
        • 2021-04-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-10-27
        • 1970-01-01
        相关资源
        最近更新 更多