Foros del Web » Programación para mayores de 30 ;) » .NET »

Conexion

Estas en el tema de Conexion en el foro de .NET en Foros del Web. Necesito saber que es lo que estoy haciendo mal tengo el siguiente codigo <%@ Page language="C#" debug=true%> <%@ Import Namespace="System.Data" %> <%@ Import Namespace="System.Data.OleDb" %> ...
  #1 (permalink)  
Antiguo 26/07/2005, 13:54
Avatar de Baby78  
Fecha de Ingreso: julio-2005
Mensajes: 142
Antigüedad: 18 años, 9 meses
Puntos: 0
Busqueda Conexion


Necesito saber que es lo que estoy haciendo mal tengo el siguiente codigo

<%@ Page language="C#" debug=true%>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>
<html>
<head><title></title></head>
<body>
<script runat="server">

void Muestra(Object sender, EventArgs args){
OleDbConnection conexion =new OleDbConnection("Provider=SQLOLEDB;server=(local); database=mydatabase;uid=sa;pwd=");
String sentencia="SELECT nombre,puesto From employees";
OleDbCommand comando=new OleDbCommand (sentencia);

OleDbDataReader resultado;
try{
conexion.Open();
comando.Connection=conexion;
resultado= comando.ExecuteReader();
while(resultado.Read()){
Response.Write((string)resultado("nombre")+" "+(string)resultado("puesto")+"<br>");
}
resultado.Close();
conexion.Close();
}catch(OleDbException e){
Response.Write("se ha producido una excepción: "+e);
}
}
</script>

<form runat="server" id="formulario">
<asp:Label Runat="server" ID="Texto" Text=""/><br>
<asp:Button OnClick="Muestra" Runat="server" ID="boton" Text="Muestra Datos"/>
</form>
</body>
</html>


pero me marca el siguiente error
CS0117: 'System.Data.SqlClient.SqlConnection' does not contain a definition for 'open'

si me puedieran explicar en que estoy mal, lo que pasa es que soy nueva en esto, estoy utilizando Visual Studio .Net

Última edición por Baby78; 26/07/2005 a las 14:29 Razón: Cambiarme de Foro
  #2 (permalink)  
Antiguo 26/07/2005, 14:32
Avatar de grisel  
Fecha de Ingreso: diciembre-2004
Ubicación: Mexico
Mensajes: 215
Antigüedad: 19 años, 4 meses
Puntos: 0
Estoy viendo tu codigo , utilizas una conexion SqlConnection, o OleDbConnection o ambas?

por lo q veo en tu codigo es OleDbConnection, entonces porque revuelves el tipo de conexion ?

__________________
grissss :Zzz:
  #3 (permalink)  
Antiguo 26/07/2005, 14:44
Avatar de Baby78  
Fecha de Ingreso: julio-2005
Mensajes: 142
Antigüedad: 18 años, 9 meses
Puntos: 0
Disculpa ese no era podrias checar este

<%@ Page language="C#" debug=true%>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<html>
<head><title></title></head>
<body>
<script runat="server">

void Muestra(Object sender, EventArgs args){
SqlConnection conexion =new SqlConnection("server=(local);database=mydatabase; uid=sa;pwd=mypass");
String sentencia="SELECT name,puesto From employees";
SqlCommand comando=new SqlCommand (sentencia);

SqlDataReader resultado;
try{
conexion.Open();
comando.Connection=conexion;
resultado= comando.ExecuteReader();
while(resultado.Read()){
Response.Write((string)resultado.GetString(0)+" "+resultado.GetString(1)+"<br>");
}
resultado.Close();
conexion.Close();
}catch(SqlException e){
Response.Write("se ha producido una excepción: "+e);
}
}
</script>

<form runat="server" id="formulario">
<asp:Label Runat="server" ID="Texto" Text=""/><br>
<asp:Button OnClick="Muestra" Runat="server" ID="boton" Text="Muestra Datos"/>
</form>
</body>
</html>


marca este error CS0117: 'System.Data.SqlClient.SqlConnection' does not contain a definition for 'open'
  #4 (permalink)  
Antiguo 26/07/2005, 14:47
Avatar de Baby78  
Fecha de Ingreso: julio-2005
Mensajes: 142
Antigüedad: 18 años, 9 meses
Puntos: 0
perdon meti un string de mas
Response.Write((string)resultado.GetString(0)+" "+resultado.GetString(1)+"<br>");

correcto
Response.Write(resultado.GetString(0)+" "+resultado.GetString(1)+"<br>");
  #5 (permalink)  
Antiguo 26/07/2005, 15:10
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Solo para complementar la informacion..:


El GetString es bueno usarlo cuando sabes la posición de los campos, y tambien cuando estas usando índices o para seguir cierto patrón y ahorrarse código (en algunos casos) y de hecho es la forma más rápida de acceso a datos ya que estás haciendo el cast de forma directa, la desventaja es que si no te sabes el órden puede caerse tu reader..

La otra forma tambien para accesar a traves del nombre del campo y no del índice es hacerlo así: (hablando de c#)

Cita:
Response.Write(dr["nombre"].ToString()+" "+dr["puesto"].ToString()+"<br>");
Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #6 (permalink)  
Antiguo 26/07/2005, 15:14
Avatar de Baby78  
Fecha de Ingreso: julio-2005
Mensajes: 142
Antigüedad: 18 años, 9 meses
Puntos: 0
Me sigue marcando el mismo error
Compiler Error Message: CS0117: 'System.Data.SqlClient.SqlConnection' does not contain a definition for 'open'
  #7 (permalink)  
Antiguo 26/07/2005, 15:19
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Cual es el exactamente el code que tienes..?
  #8 (permalink)  
Antiguo 26/07/2005, 15:22
Avatar de Baby78  
Fecha de Ingreso: julio-2005
Mensajes: 142
Antigüedad: 18 años, 9 meses
Puntos: 0

Tambien probe con esta
Response.Write((String)resultado["name"]+" "+(String)resultado["puesto"]+"<br>");
  #9 (permalink)  
Antiguo 26/07/2005, 15:24
Avatar de Baby78  
Fecha de Ingreso: julio-2005
Mensajes: 142
Antigüedad: 18 años, 9 meses
Puntos: 0
Ahi te va...

<%@ Page language="C#" debug=true%>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<html>
<head><title>Base de Datos</title></head>
<body>
<script runat="server">

void Muestra(Object sender, EventArgs args){
SqlConnection conexion =new SqlConnection("server=(local);database=alcatel;uid =sa;pwd=alcatel");
String sentencia="SELECT name,puesto From employees";
SqlCommand comando=new SqlCommand (sentencia);

SqlDataReader resultado;
try{
conexion.Open();
comando.Connection=conexion;
resultado= comando.ExecuteReader();
while(resultado.Read()){
Response.Write((String)resultado["name"]+" "+(String)resultado["puesto"]+"<br>");
}
resultado.Close();
conexion.Close();
}catch(SqlException e){
Response.Write("se ha producido una excepción: "+e);
}
}
</script>

<form runat="server" id="formulario">
<asp:Label Runat="server" ID="Texto" Text=""/><br>
<asp:Button OnClick="Muestra" Runat="server" ID="boton" Text="Muestra Datos"/>
</form>
</body>
</html>


a ver que se puede hacer
  #10 (permalink)  
Antiguo 26/07/2005, 15:33
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Cita:
Tambien probe con esta
Response.Write((String)resultado["name"]+" "+(String)resultado["puesto"]+"<br>");
Baby78, probaste con lo que te puse..

Cita:
Response.Write(dr["nombre"].ToString()+" "+dr["puesto"].ToString()+"<br>");
Y coloca tu code de ésta forma:
Cita:
...
try{
comando.Connection=conexion;
conexion.Open();
resultado= comando.ExecuteReader();
while(resultado.Read()){
Response.Write(dr["nombre"].ToString()+" "+dr["puesto"].ToString()+"<br>");
}
....
  #11 (permalink)  
Antiguo 26/07/2005, 15:49
Avatar de Baby78  
Fecha de Ingreso: julio-2005
Mensajes: 142
Antigüedad: 18 años, 9 meses
Puntos: 0
Disculpa mi ignorancia pero que es la dr
  #12 (permalink)  
Antiguo 26/07/2005, 15:50
Avatar de Baby78  
Fecha de Ingreso: julio-2005
Mensajes: 142
Antigüedad: 18 años, 9 meses
Puntos: 0
lo que pasa es que marca el siguiente error
CS0103: The name 'dr' does not exist in the class or namespace 'ASP.WebForm1_aspx'
  #13 (permalink)  
Antiguo 26/07/2005, 15:52
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Cita:
lo que pasa es que marca el siguiente error
CS0103: The name 'dr' does not exist in the class or namespace 'ASP.WebForm1_aspx'
dr es una variable friend que en tu caso estas usando resultado, por lo tanto sería así:


Cita:
...
try{
comando.Connection=conexion;
conexion.Open();
resultado= comando.ExecuteReader();
while(resultado.Read()){
Response.Write(resultado["nombre"].ToString()+" "+resultado["puesto"].ToString()+"<br>");
}
...
  #14 (permalink)  
Antiguo 26/07/2005, 15:58
Avatar de Baby78  
Fecha de Ingreso: julio-2005
Mensajes: 142
Antigüedad: 18 años, 9 meses
Puntos: 0
Gracias, pero aun me marca un error
CS0117: 'System.Data.SqlClient.SqlDataReader' does not contain a definition for 'close'
  #15 (permalink)  
Antiguo 26/07/2005, 16:17
Avatar de grisel  
Fecha de Ingreso: diciembre-2004
Ubicación: Mexico
Mensajes: 215
Antigüedad: 19 años, 4 meses
Puntos: 0
No esta cerrando tu conexion

primero te marcaba porque no estaba abierta

ahora al final de tu codigo dale un conexion.Close ()

try
{
// tu codigo
}
catch
{
// codigo
}
finally
{
conexion.Close();
}
__________________
grissss :Zzz:
  #16 (permalink)  
Antiguo 26/07/2005, 16:37
Avatar de Baby78  
Fecha de Ingreso: julio-2005
Mensajes: 142
Antigüedad: 18 años, 9 meses
Puntos: 0
mira asi tengo el codigo
try{
comando.Connection=conexion;
conexion.Open();
resultado= comando.ExecuteReader();
while(resultado.Read()){
Response.Write(resultado["name"].ToString()+" "+resultado["puesto"].ToString()+"<br>");
}

resultado.close();
conexion.close();
}catch(SqlException e){
Response.write("Se ha producido una excepcion: "+e);
}
  #17 (permalink)  
Antiguo 26/07/2005, 19:00
Avatar de grisel  
Fecha de Ingreso: diciembre-2004
Ubicación: Mexico
Mensajes: 215
Antigüedad: 19 años, 4 meses
Puntos: 0
try{
comando.Connection=conexion;
conexion.Open();
resultado= comando.ExecuteReader();
while(resultado.Read()){
Response.Write(resultado["name"].ToString()+" "+resultado["puesto"].ToString()+"<br>");

resultado.close();
conexion.close();

}
}catch(SqlException e){
Response.write("Se ha producido una excepcion: "+e);
}
finally
{
resultado.close();
conexion.close();

}
__________________
grissss :Zzz:
  #18 (permalink)  
Antiguo 26/07/2005, 23:49
Avatar de Jose_minglein2  
Fecha de Ingreso: noviembre-2004
Mensajes: 2.344
Antigüedad: 19 años, 5 meses
Puntos: 8
Si estásusando c# prueba con:

resultado.Close();
conexion.Close();

Puesto que este diferencia entre mayusculas y minusculas.

Código PHP:
try{
comando.Connection=conexion;
conexion.Open();
resultadocomando.ExecuteReader();
while(
resultado.Read())
{
Response.Write(resultado["name"].ToString()+" "+resultado["puesto"].ToString()+"<br>");
}

resultado.Close();
conexion.Cose();
}catch(
SqlException e){
Response.write("Se ha producido una excepcion: "+e);

  #19 (permalink)  
Antiguo 27/07/2005, 11:44
Avatar de Baby78  
Fecha de Ingreso: julio-2005
Mensajes: 142
Antigüedad: 18 años, 9 meses
Puntos: 0
Sonrisa

Gracias por la ayuda ya lo pude hacer
  #20 (permalink)  
Antiguo 27/07/2005, 11:56
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Podrías poner que fue lo que hiciste. o cual fue tu error ?? para tenerlo como referencia..

Salu2
  #21 (permalink)  
Antiguo 19/08/2005, 17:11
Avatar de Baby78  
Fecha de Ingreso: julio-2005
Mensajes: 142
Antigüedad: 18 años, 9 meses
Puntos: 0
Me marcaba error por las letras, unas tenias que ir en mayusculas y otras no. Pero me sirvio mucho su ayuda, dejo el codigo final por si alguien lo quiere utilizar

Código:
	 
<script runat="server">
	void Muestra(Object sender, EventArgs args)
	   {
   
	SqlConnection conexion = new SqlConnection  ("server=local;database=mydatabase;uid=;pwd=mypass");
	String sentencia = "SELECT NOMBRE,APELLIDO,MATERNO,NUMERO FROM Personal ";
	SqlCommand comando = new SqlCommand (sentencia);
	SqlDataReader resultado;
	try {
             	conexion.Open();
		comando.Connection = conexion;
		resultado = comando.ExecuteReader();
		while (resultado.Read()){
		Response.Write (resultado["NOMBRE"].ToString()+ " "+resultado["APELLIDO"].ToString()+ " "+resultado["MATERNO"].ToString()+" "+resultado["NUMERO"].ToString()+ "<br>");
		}
	resultado.Close();
	conexion.Close();
	}catch(SqlException e){
		Response.Write("Se ha producido una excepcion: " +e);
	}
}	      
</script>
	
<form runat="server" id="formulario">
  
    <asp:Label Runat="server" ID="Texto" Text="" /><br>
<asp:Button OnClick="Muestra" Runat="server" ID="boton" Text="Muestra Datos" />
</form>
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:51.