2013-01-19 78 views
1

我试图显示查询的输出SELECT * FROM phpbb_topics 我从C#控制台应用程序using the MySql connector api运行此。
查询工作正常,当我运行它phpmyadmin,并给我的论坛主题列表。显示输出查询?

当我在C#应用程序中远程运行它时,它似乎没有任何操作。

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using MySql; 
using MySql.Data; 

namespace SqlConsoleSlr 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      MySql.Data.MySqlClient.MySqlConnection mycon = 
      new MySql.Data.MySqlClient.MySqlConnection(GetConnectionString()); 
      Console.WriteLine(GetConnectionString()); 

      if (mycon.State != System.Data.ConnectionState.Open) 

       try 
       { 
        mycon.Open(); 
        Console.WriteLine("we're in"); 
       } 

       catch (System.Data.SqlClient.SqlException ex) 
       { 
        Console.WriteLine(ex); 
       } 

       MySql.Data.MySqlClient.MySqlCommand msc = new MySql.Data.MySqlClient.MySqlCommand("SELECT * FROM `phpbb_topics` "); 

      Console.WriteLine("completed"); /// gets to here, but doesn't show output of msc 

      Console.ReadLine(); 
     } 

     public static string GetConnectionString() 
     { 
      string hostname = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx;"; 
      string username = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxx;"; 
      string dbname = "xxxxxxxxxxxxxxxxxxxxxxxx;"; 
      string password = "xxxxxxxxxxxxxxxxxxxxxxxxxxx;"; 

      string s = "Server=" + hostname + "User=" + username + "Database=" + dbname + "Password=" + password; 

      return s; 
     } 
    } 
} 

是否有一些方法我需要调用查询对象? 唯一一个我能找到的是msc.BeginExecuteReader();,但这似乎并没有改变任何执行。

回答

1

您将需要创建一个MySQL数据Reader对象。

MySql.Data.MySqlClient.MySqlDataReader read = msqlCommand.ExecuteReader(); 

然后你就可以输出记录后你所有的记录read.read()

0

您必须创建一个MySQL Data Reader对象,然后执行该命令。

MySql.Data.MySqlClient.MySqlCommand msc = new MySql.Data.MySqlClient.MySqlCommand("SELECT * FROM `phpbb_topics` "); 

    MySql.Data.MySqlClient.MySqlDataReader read = msqlCommand.ExecuteReader(); 

    if(read != null) 
    { 
    //Sample output 
    while (read.Read()) 
      { 
       int TopicID = Convert.ToInt32(read["Topic_ID"]); 
       string TopicName = Convert.ToString(read["Topic_Name"]); 
       Console.WriteLine(TopicID.ToString() + " : " + TopicName); 
      } 

    }