Velocidad del servidor de SQL y configuración del mismo

1) Cuando Realizo varias consultas (query) al servidor de Sql Server, algunas de éstas se cuelgan (se quedan pegadas) y por timeout éstas no se realizan...
¿A qué se debe ésto?... ¿Me falta configurar algo en el Servidor?
2) Tengo dos equipos como cliente de similares características (Pentium III) y uno de ellos es mucho más, pero más rapido en recibir la respuesta del Servidor al momento de realizar una petición o consulta de registros...
A que se debe ésto...¿?.. ¿Acaso necesito configurar el cliente en relación al Buffer?.. Etc.-
En espera de vuestras respuestas y agradeciendo de ante mano cualquier ayuda, se despide..
Ricardo
Respuesta
1
1) Desde donde lanzas las consultas
2)Alguno de ellos tiene algún programa instalado que no le tenga el otro, que más procesos hay ejecutándose en la memoria cuando realizas la consulta (me refiero en el más lento) pulsa ctrl+alt+sup y apuntas todos los programas abiertos
Si que manteniendo la pregunta publica
Es una conexión dao a través de odbc:
Public consulta_sql As QueryDef
Public base as database
Set base = OpenDatabase("conexion", false,false, "ODBC;DATABASE=BD;UID=sa;PWD=")
Set consulta_sql = base.CreateQueryDef("")
consulta_sql.Connect = Varbase.Connect
consulta_sql.SQL = "select * from msrotulo"
Set Reg = consulta_sql.OpenRecordset(dbOpenSnapshot)
consulta_sql.Close
No sera que abres la onexion y empiezas a lanzar consultas a tuti plen. Procura abrir la conexión, realizar la consulta, guardarla en un list box y cerrarla. Para cosas más complejas create vistas.
Si esto no te sirve de ayuda por favor enviame las seguencias sql enteras y como realizas toda la conexión enviame también el código VB.
Me podrías decir que tipo de consultas lanzas desde visual basic, si es posible te agradecería las secuencias sql y cual es su objetivo (que es lo que quieres conseguir y se lo más exacto que puedas)
Si pero podrían interferir en los puertos de comunicaciones, así que sigo insistiendo que es lo que tienes instalado y lo más importante estas trabajando con el mismo SO
1) Las consultas son simples.. ejemplo: select * from msrotulo.-
Lo que pasa es cuando sucede eso desde visual basic 5.0, ni siquiera el analizador de consultas de Sql Server es capaz de realizar la consulta.-
2) Si, estoy trabajando con windows '98
cuando presiono ctrol + alt + sup me aparecen los siguientes programas que estan en memoria:
explorer, sqlmangr, hkcmd, systray, igfxtray, wcescomm
1) Las consultas las lanzo desde Visual Basic 5.0 con DAO y no estoy trabajando con procedimiento almacenados.-
2) El PC más lento tiene programas extras pero que no (según yo) no interfieren para nada en la respuesta del servidor.-
Te agradezco tu ayuda.-
No parece que tengas echo nada mal, prueba con esto otro.
Dim cadena As String
Dim cnHospital As Object
'Dim cnHospital As ADODB.Connection
' solo se puede hacer si la
' referencia esta creada
' *** CREACCON ***
Set cnHospital = CreateObject("ADODB.Connection")
'Set cnHospital = New ADODB.Connection
' solo se puede hacer si
' la referencia esta creada
' *** CONESION ***
cnHospital.ConnectionString = _
"Provider=SQLOLEDB.1; User Id=SA;" & _
"Password=; Data Source=EQUIPO5;" & _
"Initial Catalog= HOSPITAL;"
' Data Source el servidor de la base de datos,
' Initial Catalog el onmbre de la base de datos
' *** APERTURA ***
cnHospital.Open
cnHospital.BeginTrans ' inicia la transacion
' *** EJECUCION DE SENTENCIAS ***
'cnHospital.Execute "Update AlmacenesArticulos" & _
" SET Cantidad = 2" & _
" Where IdAlmacen = 1" & _
" AND IdArticulo = 1 "
cnHospital.Execute "UPDATE AlmacenesArticulos" & _
" SET Cantidad = Cantidad + " & txtCantidad.Text & _
" WHERE IdAlmacen = " & txtAlmacen.Text & _
" AND IdArticulo = " & txtArticulo.Text
'INSERT INTO tmpAlmacenes (IdAlmacen,
' Descripcion)
' VALUES (@iAlmacen + 10 , @sDescripcion)
cadena = "INSERT INTO MovimientosMateriales" & _
" (IdArticulo, IdAlmacen, NifPersonal, FechaHora," & _
" Tipo, Descripcion, Cantidad)" & _
" VALUES (" & txtArticulo.Text & ", " & _
txtAlmacen.Text & ", '13155333', '01/01/2002', 'e'," & _
"'entrada', " & txtCantidad.Text & ")"
Text1.Text = cadena
cnHospital.Execute cadena
cnHospital.CommitTrans ' confirma la transacion
' *** CIERRE ***
cnHospital.Close
' *** DESTRUCCION ***
Set cnHospital = Nothing
Ejemplo de lectura:
' *** DECLARACION DEL OBJETO ***
'Dim rstArticulos As Object
Dim rstArticulos As ADODB.Recordset
' solo se puede hacer si la
' referencia esta creada
' *** CREACCON ***
'Set rstArticulos = CreateObject("ADODB.Recordset")
Set rstArticulos = New ADODB.Recordset
' solo se puede hacer si
' la referencia esta creada
' proyecto, preferencias, microsoft active x
' *** CONESION ***
rstArticulos.ActiveConnection = _
"Provider= SQLOLEDB.1;User Id=SA" _
& ";Password=" _
& ";Data Source=equipo5" _
& ";Initial Catalog=HOSPITAL;"
rstArticulos.CursorType = adOpenForwardOnly
rstArticulos.LockType = adLockReadOnly
rstCursorLocation = adUseServer
rstArticulos.Source = "SELECT * FROM Articulos"
' *** APERTURA ***
RstArticulos. Open
RstArticulos. MoveFirst
While (Not rstArticulos.EOF)
LblArticulo. AddItem rstArticulos. Fields(0)
LblDescripcion. AddItem rstArticulos. Fields(1)
RstArticulos. MoveNext
Wend
' *** CIERRE ***
rstArticulos.Close
' *** DESTRUCCION ***
Set rstArticulos = Nothing

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas