c#MySqlCommand似乎没有解析参数

时间:2015-08-23 02:35:58

标签: c# mysql

我尝试使用参数运行MySqlCommand,但是当我查看SQL日志时,参数显示出来。

我已尝试使用@和?,尝试使用' old syntax = yes'在我的sqlconnection字符串中也是。

这是我的代码。

150823  3:19:50    22 Connect   root@localhost on unity_test
       22 Query SHOW VARIABLES
       22 Query SHOW COLLATION
       22 Query SET character_set_results=NULL
       22 Init DB   unity_test
150823  3:19:52    22 Query select * from `accounts` where `username` = '@username'

这是SQL日志。

  $(function() {


  var pageScan = {
      speed : 10000,
      loop  : true,
      delayRestart : 1000, 
      start : function(){
          pageHeight = $('body').height() - window.innerHeight;
          pageScan.proc(pageHeight);
      },
      proc  : function(to){
          $("body").animate(
              {scrollTop: to}, 
               pageScan.speed,
               "linear",
               function(){
                  if (pageScan.loop) {
                      setTimeout(function() {
                          window.scrollTo(0, 0);
                          pageScan.start();
                      }, pageScan.delayRestart);
                  }
          });
      }
  };

  pageScan.start();

  });

我使用的是.net 2.0而且我不确定mysql dll版本,我发现这里:http://forum.unity3d.com/threads/reading-database-and-or-spreadsheets.11466/

由于Unity,我无法升级.net。任何建议将不胜感激!

2 个答案:

答案 0 :(得分:0)

尝试command.Parameters.Add(“@ username”,MysqlDbType.Varchar).Value = username;

应该工作!

答案 1 :(得分:0)

试试这个(建议)

bool CheckLoginDetails(string username, string password){
DataTable dt = new DataTable ();
MySqlCommand command = new MySqlCommand ("select * from accounts where username = @username;", SL.Database.connection);
command.Parameters.AddWithValue ("@username", username);
dt.Load (command.ExecuteReader());

}