[C#] Recupera il numero di colonne nella tabella SQL - C #


Answers

Per connettersi al database è possibile utilizzare la classe SqlConnection e quindi per recuperare il conteggio delle SqlConnection è possibile utilizzare la funzione Execute Scalar . Un esempio da MSDN:

cmd.CommandText = "SELECT count(*) FROM sys.columns;";
Int32 count = (Int32) cmd.ExecuteScalar();

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand.executescalar.aspx

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection

Question

Sono molto nuovo di C #. Sto cercando di recuperare il numero di colonne usando:

SELECT count(*) FROM sys.columns 

Potresti spiegare come usare il comando e inserirlo in una variabile.




Utilizzare ExecuteScalar

Esegue la query e restituisce la prima colonna della prima riga nel set di risultati restituito dalla query. Le colonne o le righe aggiuntive vengono ignorate.

Int32 colnumber = 0;
string sql = "SELECT count(*) FROM sys.columns";
using (SqlConnection conn = new SqlConnection(connString))
{
    SqlCommand cmd = new SqlCommand(sql, conn);
    try
    {
        conn.Open();
        colnumber = (Int32)cmd.ExecuteScalar();
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.Message);
    }
}



Devi usare un comando e recuperare la variabile scalare:

SqlCommand cmd = new SqlCommand(sql, conn);
Int32 count = (Int32)cmd.ExecuteScalar();