Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.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# select查询中表的变量名_C#_Mysql_Sql - Fatal编程技术网

C# select查询中表的变量名

C# select查询中表的变量名,c#,mysql,sql,C#,Mysql,Sql,我想将字符串变量tablename中的表名添加到我的查询中。在c语言中可能吗?我试过下面的方法。但它不起作用。如您所见,我想在分数上设置FROM@tablename 您的查询只是一个字符串,您的值为:通常,数据库库不允许您将参数用于对象名称,而只允许使用值。在这种情况下,您需要手动插入表名。我已经编辑了您的问题,请参见原因: public void tableInsertTest() { MySqlConnection conn = null;

我想将字符串变量tablename中的表名添加到我的查询中。在c语言中可能吗?我试过下面的方法。但它不起作用。如您所见,我想在分数上设置FROM@tablename


您的查询只是一个字符串,您的值为:

通常,数据库库不允许您将参数用于对象名称,而只允许使用值。在这种情况下,您需要手动插入表名。我已经编辑了您的问题,请参见原因:
public void tableInsertTest()
        {

            MySqlConnection conn = null;

            string tablename = "scores";

            try
            {
                conn = new MySqlConnection(cs);
                conn.Open();

                MySqlCommand cmd = new MySqlCommand();
                cmd.Connection = conn;
                cmd.CommandTimeout = 90;
                cmd.CommandText = (

                "INSERT INTO dailyrecords(recorddate, firstname, lastname, score ) " +
                "SELECT NOW(), name, lname, score FROM @tablename " );

                cmd.Prepare();

                cmd.Parameters.AddWithValue("@tablename", tablename);

                {
                    cmd.ExecuteNonQuery();
                }

                conn.Close();

            }

            finally
            {
                if (conn != null)
                {
                    conn.Close();
                }
            }
            return;
        }
cmd.CommandText = ("INSERT INTO dailyrecords(recorddate, firstname, lastname, score ) " +
                string.Format("SELECT NOW(), name, lname, score FROM {0} ", tablename) );