2012-01-01 36 views
0

我正在开发一个Web应用程序,并且在代码隐藏中,我需要从数据库中的特定表中获取ID列并将其转换为int。查询是:如何将sql命令的结果转换为int变量?

string quizID = SELECT MIN(column_name) FROM table_name 

,我希望把它的价值在

int quizid 

这意味着我需要转换,所以该怎么做?

+1

为什么你得到它回为一个字符串开始? (如果你要显示真实的代码而不是这个伪代码,这会很有用。)ID列的类型是什么? – 2012-01-01 11:58:48

回答

1

你会想要做这样的事情:

using (SqlConnection conn=new SqlConnection(sql_string)) { 

    conn.Open(); 

    SqlCommand command=new SqlCommand(
     sql_query, 
     conn 
    ); 

    Int32 quizid=((Int32?)command.ExecuteScalar()) ?? 0; 

} 
2
int quizID = -1; 

    using (SqlConnection conn = new SqlConnection(connString)) 
      { 
       conn.Open(); 

       string cmdText = "SELECT MIN(column_name) FROM table_name"; 
       using (SqlCommand cmd = new SqlCommand(cmdText, conn)) 
       { 
        SqlDataReader reader = cmd.ExecuteReader(); 
        if (reader != null) 
        { 
         while (reader.Read()) 
         { 
          quizID = reader.GetInt32("columnname"); 
         } 
        } 
        reader.Close(); 
       }   
       conn.Close(); 
      } 
1
SqlCommand cmd = new SqlCommand("SELECT MIN(column_name) FROM table_name", conn); 

    try 
    { 
     conn.Open(); 
     int quizid = (Int32)cmd.ExecuteScalar(); 
    } 
    catch (Exception ex) 
    { 
     Console.WriteLine(ex.Message); 
    } 

conn是SqlConnection对象