编程遇到一个问题,MySQL查询对象(数据库或者Table)是个变量,而不是固定的,MySQL不能直接使用变量作为数据库表名,怎么办呢?
今天请教了公司对一位高人,给出如下建议
亲测,可以使用,贴出来分享给大家,高手就可以走过了,我这是写给新手看的。
关键语句,我加粗了,这下清楚怎么搞了吧!
string connStr = "server=127.1.1.1;user=root;database=GCFKB;port=3306;password=HONGXING;";
MySqlConnection conn = new MySqlConnection(connStr);
try
{
Response.Write("<script>alert('Connecting to MySQL...')</script>");
conn.Open();
// Perform database operations
//Query
string tbname="31121";
string picsname="6.1.1.2";
string sql =string.Format(@"SELECT * FROM `{0}` WHERE `TCID` LIKE '{1}'",tbname,picsname);
MySqlCommand cmd = new MySqlCommand(sql, conn);
MySqlDataReader rdr = cmd.ExecuteReader();
while (rdr.Read())
{
txt1.Text = rdr[0] + " -- " + rdr[1];
}
rdr.Close();