Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#使用准备好的语句_C#_Mysql_.net - Fatal编程技术网

C#使用准备好的语句

C#使用准备好的语句,c#,mysql,.net,C#,Mysql,.net,我想使用C将mysql数据填充到gridview中# 查询使用NodeJS+mysql,但使用C#时会产生错误 节点JS代码: app.get('/allhistorytalenta',function(req,res){ client.query("SELECT GROUP_CONCAT(DISTINCT CONCAT('MAX(IF(mulai = ''',mulai,''', talenta, NULL)) AS ', QUOTE(mulai)) ORDER BY MULAI AS

我想使用C将mysql数据填充到gridview中#

查询使用NodeJS+mysql,但使用C#时会产生错误

节点JS代码:

app.get('/allhistorytalenta',function(req,res){
    client.query("SELECT GROUP_CONCAT(DISTINCT CONCAT('MAX(IF(mulai = ''',mulai,''', talenta, NULL)) AS ', QUOTE(mulai)) ORDER BY MULAI ASC ) INTO @sql FROM history_talenta; SET @sql = CONCAT('SELECT nip, nama, DATE_FORMAT(tgl_grade_terakhir,''%d-%m-%Y'') as tgl_grade_terakhir, ', @sql, ' FROM history_talenta GROUP BY nip'); PREPARE stmt FROM @sql; EXECUTE stmt;", function(err,rows_final){                                                
    res.render('pages/alltalenta',{ data2 : rows_final, data : req.session.user, datarole : req.session.role, moment : moment } );
        console.log("Nilai Row Final : "+rows_final[3][1].nama);
    });
});
这是我的C语言代码:

查询实际上是从数据进行转换:

进入:

如何使用C#和mysql以正确的方式执行我的查询


谢谢

什么是错误,没有定义参数@sql?{“在命令执行过程中遇到致命错误”。}{“必须定义参数'@sql'。}您的查询非常复杂。我试着把它分开,但我不知道什么是动态SQL,我甚至不确定它是否是有效的MySQL。你能发布你的PHP代码吗?很抱歉,它是nodeJS+mysql。我已经把它放在上面了
using System;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using MySql.Data.MySqlClient;

namespace DataGridView_CS
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            this.BindGrid();
        }

        private void BindGrid()
        {
            string conString = @"Data Source=10.16.107.77;port=3306;Initial Catalog=sdmbook;User Id=root;password=xxxx";
            using (MySqlConnection con = new MySqlConnection(conString))
            {
                using (MySqlCommand cmd = new MySqlCommand("SELECT GROUP_CONCAT(DISTINCT CONCAT('MAX(IF(mulai = ''',mulai,''', talenta, NULL)) AS ', QUOTE(mulai)) ORDER BY MULAI ASC ) INTO @sql FROM history_talenta; SET @sql = CONCAT('SELECT nip, nama, DATE_FORMAT(tgl_grade_terakhir,''%d-%m-%Y'') as tgl_grade_terakhir, ', @sql, ' FROM history_talenta GROUP BY nip'); PREPARE stmt FROM @sql; EXECUTE stmt;", con))
                {
                    cmd.CommandType = CommandType.Text;
                    using (MySqlDataAdapter sda = new MySqlDataAdapter(cmd))
                    {
                        using (DataTable dt = new DataTable())
                        {
                            sda.Fill(dt);
                            dataGridView1.DataSource = dt;
                        }
                    }
                }
            }
        }
    }
}