border
VB 6
 
 
/
  #1 (permalink)  
Antiguo 25-11-2006, 21:16:44
Nuevo Amigo
 
Registrado: oct 2006
Posts: 3
Créditos: 238
xabier Valoración +2
Predeterminado como recorrer un dataset

HI a todos....

la verdad es ke no entiendo muxo de asp.net stoy n pleno jump form asp a asp.net...
os comento mi jugada :P tengo una funcion en sql server 2005 dentro de un dataset tal ke ...

SELECT COUNT(KEY) FORM TABLA WHERE KEY = @KEY;

entonces ahora necesito recoger el el count (key) del dataset pero no se como...

lo ke me da el dataset es un dato de tipo objeto :S asi ke toy perdidisimo ....

muchisimas gracias :P
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #2 (permalink)  
Antiguo 25-11-2006, 21:28:06
Avatar de J_M_Movilla
Administrador
 
Registrado: dic 2002
Ubicación: BURGOS - ESPAÑA
Posts: 9.400
Créditos: 77.944
J_M_Movilla ha deshabilitado la reputación
Predeterminado Re: como recorrer un dataset

Mira, xabier: Yono sé de ASP.NET, pero tal como planteas la cuestión parece tratarse de una sentencia de SQL y me atrevo a darte esta sugerencia:

Sustituye tu SQL por
Código:
SELECT COUNT(KEY) AS TOTALKEY FROM TABLA WHERE KEY = @KEY;
y ahora ya no tienes nada más que leer el
Código:
.Fields("TOTALKEY")
en el que encontrarás el recuento que necesitas.

Y aprovecho para rogarte que no escatimes caracteres en tus mensajes como si estuvieras usando un móvil... que vamos a cobrarte lo mismo y nos gusta que se respete el idioma al máximo, porque es lo mejor que tenemos en común...
__________________
José María Movilla Cuadrado
______________________
Normas del foro
www.foro.vb-mundo.com
www.vb-mundo.com
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #3 (permalink)  
Antiguo 26-11-2006, 05:08:20
Gran Participación en el Foro
 
Registrado: sep 2004
Posts: 284
Créditos: 395
Istyar Valoración +2
Predeterminado

Si sólo te interesa un valor crea un SqlCommand con esa consulta,
e invoca el método ExecuteScalar() que te devuelve un objeto que
puedes convertir al tipo que corresponda.

Por ejemplo: Dim n as Integer = SqlCommand1.ExecuteScalar()
Eso si, debes asegurarte que la consulta entrega un valor de ese
tipo, o capturar la excepción si no lo es.

De lo que no estoy seguro es del valor que entrega si no hay
filas de las que obtener datos. Es decir, si la tabla tiene 0 filas
no se si el COUNT devolverá 0 o dbnull.value.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #4 (permalink)  
Antiguo 27-11-2006, 10:52:43
Nuevo Amigo
 
Registrado: oct 2006
Posts: 3
Créditos: 238
xabier Valoración +2
Predeterminado

Hola a todos de nuevo:

Ante todo agradeceros la rapidez con la que me habéis respondido.

Ahora vamos al tema que nos acontece que creo que estoy cometiendo un error de base.
Lo primero que os voy a decir es que es asp.net 2.0 con visual Studio 2005.

Empiezo otra vez. Tengo un dataset llamado users.vxd que contiene una serie de tableadapters. Los tableadapters son muy sencillos, por ejemplo:

Find(usr)

Select * from users where unick = @unick;

Una vez echo esto pasamos a el código que no puedo entender:

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using UsersTableAdapters;

public class CLUsers
{
private USERSTableAdapter _USERSAdapter = null;
protected USERSTableAdapter Adapter
{
get {
if (_USERSAdapter == null)
_USERSAdapter = new USERSTableAdapter();

return _USERSAdapter;
}
}
[System.ComponentModel.DataObjectMethodAttribute(Sy stem.ComponentModel.DataObjectMethodType.Select, true)]
public Users.USERSDataTable GetData()
{
return Adapter.GetData();
}

[System.ComponentModel.DataObjectMethodAttribute(Sy stem.ComponentModel.DataObjectMethodType.Insert, true)]
public int Add(string unick, string name, string sname, string pwd, string question, string answer, string email, string dob)
{
// int error = 0; //if during the proces there is an error it will be swithced to 1.
DateTime dtdob;
CLUsers Aux = new CLUsers();
// VALIDATION:
// if the nick exists (is the key of the table).
if (Adapter.find(unick).Value != 0)
//error 9 the nick name exists.
return (9);
else
{
// all the data introduced is validate and converted.
if (unick.Length > 20 || unick.Length == 0)
{
//error 1: check your nick.
return (1);
}
else
{
if (name.Length > 20 || name.Length == 0)
{
//error 2: check your name.
return (2);
}
else
{
if (sname.Length > 20 || sname.Length == 0)
{
//error 3: check your surename.
return (3);
}
else
{
if (pwd.Length > 20 || pwd.Length == 0)
{
//error 4: check your pasword.
return (4);
}
else
{
if (question.Length > 30 || question.Length == 0)
{
//error 5: check your question.
return (5);
}
else
{
if (answer.Length > 30 || answer.Length == 0)
{
//error 6: check your answer.
return (6);
}
else
{
if (email.Length > 30 || email.Length == 0)
{
//error 7: check your email.
return (7);
}
else
{
try
{
dtdob = Convert.ToDateTime(dob);
}
catch
{
//error 8: check your dob.
return (8);
}
}
}
}
}
}
}
}
try
{
Adapter.Add(unick, name, sname, pwd, question, answer, email, "no", dtdob, 0, DateTime.Today);
}
catch
{
return (10);
//insert in the log one line
}
//ok...
return (0);
}
}
[System.ComponentModel.DataObjectMethodAttribute(Sy stem.ComponentModel.DataObjectMethodType.Insert, true)]
public int getname(string unick)
{
return (Adapter.find(unick).??????);
}
}

El problema radica en los interrogantes… se supone que tendría que ser un código tal que:
Adapter.find(unick).rows(1).(“name”)
Pero no funciona. La verdad es que e realizado muchísimas pruebas y no e dado con la solución.
Espero que lo encendáis y muchas gracias por vuestro tiempo.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #5 (permalink)  
Antiguo 27-11-2006, 12:32:58
Gran Participación en el Foro
 
Registrado: sep 2004
Posts: 284
Créditos: 395
Istyar Valoración +2
Predeterminado

En el propio código que has pegado aparece un uso del método find:

// VALIDATION:
// if the nick exists (is the key of the table).
if (Adapter.find(unick).Value != 0)
//error 9 the nick name exists.
return (9);
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
Respuesta


Herramientas

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado


Temas Similares
Tema Autor Foro Respuestas Último Mensaje
¿Cómo Recorrer los Formularios de mi aplicación? jrios03 Visual Basic .NET 3 25-09-2007 18:39:07
como navego en el Dataset?? maryt Visual Basic .NET 2 19-02-2007 17:50:05
Recorrer un Dataset en NET como se hacia con el Data en vb6 phb Visual Basic .NET 48 26-10-2006 19:59:42
Como recorrer un DataGridView gutiory Visual Basic .NET 2 19-10-2006 04:01:15
Recorrer Recordset como una cadena miguel_1969 Visual Basic 6.00 2 19-07-2006 13:11:14


La franja horaria es GMT. Ahora son las 16:59:16.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
vBCredits v1.4 Copyright ©2007 - 2008, PixelFX Studios


right
Inactive Reminders By Icora Web Design