You're executing myCommand_discos twice.
Your second SQL needs the amendment below, in bold.
SqlCommand myCommand_discos_info = new SqlCommand("DECLARE @id VARCHAR DECLARE @idd VARCHAR DECLARE @iddd VARCHAR SET @id = (SELECT distinct id_servidor FROM servidores where nome_servidor='"+nome_computador+"') SET @idd=(SELECT distinct id_disco from servidor_disco where id_Servidor=@id AND nome_disco='"+disco_letra+"') INSERT INTO disco_info (id_disco,disco_queue,disco_total,disco_livre,data_recolha) Values (@idd,'"+ disco_length +"','"+ disco_space +"','"+ disco_free +"','10-20-11')", myConnection);
myCommand_discos_info.ExecuteNonQuery();