Trucos SQL: Registro aleatorio en un select

Noviembre 30th, 2006 by kenavik

Para seleccionar una fila aleatoriamente de una tabla podemos usar la siguiente query:

select top 1 * from tabla order by newid()

De esta manera obtendremos un registro aleatorio cada vez que ejecutemos la query.

Posted in SQL SERVER | 3 Comments »

Trucos SQL:Reducir Base de Datos con SQL Server

Noviembre 30th, 2006 by kenavik

Con una utilidad del Enterprise Manager del SQL Server podemos reducir el tamaño de una Base de Datos.

Cuando el tamaño fí­sico de nuestra base de datos es superior al tamaño real de datos, es decir, cuando el volumen de datos ocupa 10 MB y la base de datos esta ocupando 100 MB es debido a que las modificaciones que realizamos en la base de datos.

Cuando borramos un registro o otros objetos de la base de datos no se libera el espacio fí­sico del disco y por ello no se reduce la base de datos.

Para reducir la base de datos:
- Ejecutar el Enterprise Manager
- Colocarnos encima de la base de datos a reducir
- Seleccionar la base de datos y apretar botón derecho del ratón y seleccionar la opción “todas las tareas” y “Shrink Database”.
- En el cuadro que aparece seleccionar “Move pages to beginning of file before shrinking”
- Pulsar Ok

Ya hemos reducido el tamaño de la base de datos.

Posted in SQL SERVER | No Comments »

Trucos SQL: Buscar servidores disponibles de SQL Server

Noviembre 30th, 2006 by kenavik

Para encontar servidores disponibles en nuestra red ejecutar la siguiente consulta:

EXEC master..XP_CMDShell ‘OSQL -L’

Se listara todos los servidores encontrados de SQL Server de nuestra red.

Podemos crear un stored para devolver los servidores:


CREATE PROCEDURE dbo.ListLocalServers
AS
BEGIN
SET NOCOUNT ON

CREATE TABLE #servers(sname VARCHAR(255))
INSERT #servers EXEC master..XP_CMDShell 'OSQL -L'
-- play with ISQL -L too, results differ slightly

DELETE #servers WHERE sname='Servers:'

SELECT LTRIM(sname) FROM #servers WHERE sname != 'NULL'

DROP TABLE #servers
END

Posted in SQL SERVER | 1 Comment »

ASP: Averiguar cuantos días laborables hay entre dos fechas

Noviembre 23rd, 2006 by kenavik

Os dejo una interesante función en ASP que tuve que hacer hace tiempo para averiguar los días laborables entre dos fechas.
Como ejemplo he cogido como fecha de inicio la fecha actual y como fecha final 7 días más respecto a la fecha actual.

'recibe dos fechas y nos dice cuantos
'días laborables hay entre esas dos fechas
Function diaslaborables(inicio,fin)
'busco la diferencia de días que hay entre las dos fechas
diferencia = DateDiff("d", inicio, fin)
numLaborables = 0
fechaindice = inicio
'compruebo que la fecha de inicio es menor que la fecha fin
If inicio for i= 0 To diferencia
'si devuelve un num entre 2 y 6 inclusive entonces es un día laborable.
If Weekday(fechaindice)>=2 And Weekday(fechaindice)<=6 Then numLaborables=numLaborables+1
'pasamos al siguiente día
fechaIndice = DateAdd("d",fechaIndice,1)
next
End If

diaslaborables = numLaborables
End function

'inicializo la fecha de inicio al día de hoy
fechainicio = Date()

'le agrego 7 dias a la fecha de inicio
fechafin = DateAdd("d",fechainicio,7)
dias = diaslaborables(fechainicio,fechafin)
response.write "Desde el dí­a "& fechainicio & " hasta el día "&fechafin & " hay "&dias & " dias laborables"

Posted in ASP | 7 Comments »

Qué pienso de mi iPod video de 30 gigas?

Noviembre 23rd, 2006 by kenavik

Esta noche haciendo el mandril por los típicos blogs de tecnologías me he encontrado con la noticia de un estudio que han realizado sobre el uso del video en el iPod video de 30 gigatones.. jejej

Hago un copy&paste del post que he puesto en xataka pq creo que es un tema que da mucho para hablar.

“Tengo un iPod videos de 30 gigas y la verdad que tampoco veo muchos videos. Este verano volviendo de vacaciones estuve viendo un concierto entero en el avión pero creo que esa fue la única vez que aproveche bien el video. A parte la bateria no dura mucho.. Las demás veces he puesto algo de video en el iPod pero más que nada para enseñarlo a mis colegas. Yo no uso el video ya que prefiero escuchar música en mi iPod. Uno de los grandes fallos que veo es que no tenga altavoz incorporado y eso limita un poco y ahora cualquier móvil puede grabar y reproducir video con una calidad aceptable e incorpora altavoces. A parte el iTunes nunca me ha gustado..Viendo que mis amigos tienen casi todos la psp veo que podrí­a haber usado mi viejo benq de 256 megas y haberme comprado la psp de Sony que esta genial y puedes hacer más cosas.”

saludos

kenavik

Posted in Gadgets | 1 Comment »

Microsoft Access : Evitar el evento de la rueda del mouse

Noviembre 22nd, 2006 by kenavik

Os dejo la solución de como evitar el evento de la rueda del ratón y asi evitar el cambio de registro por parte del usuario cuando usa una aplicación creada en ACCESS.

Debes crear un modulo con el siguiente code —>>

Option Compare Database
Option Explicit

Private Declare Function LoadLibrary Lib "kernel32" _
Alias "LoadLibraryA" (ByVal lpLibFileName As String) As Long

Private Declare Function FreeLibrary Lib "kernel32" _
(ByVal hLibModule As Long) As Long

Private Declare Function StopMouseWheel Lib "MouseHook" _
(ByVal hWnd As Long, ByVal AccessThreadID As Long, Optional ByVal blIsGlobal As Boolean = False) As Boolean

Private Declare Function StartMouseWheel Lib "MouseHook" _
(ByVal hWnd As Long) As Boolean

Private Declare Function GetCurrentThreadId Lib "kernel32" () As Long

' Instance returned from LoadLibrary call
Private hLib As Long

Public Function MouseWheelON() As Boolean
MouseWheelON = StartMouseWheel(Application.hWndAccessApp)
If hLib <> 0 Then
hLib = FreeLibrary(hLib)
End If
End Function

Public Function MouseWheelOFF(Optional GlobalHook As Boolean = False) As Boolean
Dim s As String
Dim blRet As Boolean
Dim AccessThreadID As Long

On Error Resume Next
‘ Our error string
s = “Sorry…cannot find the MouseHook.dll file” & vbCrLf
s = s & “Please copy the MouseHook.dll file to your Windows System folder or into the same folder as this Access MDB.”

‘ OK Try to load the DLL assuming it is in the Window System folder
hLib = LoadLibrary(”MouseHook.dll”)
If hLib = 0 Then
‘ See if the DLL is in the same folder as this MDB
‘ CurrentDB works with both A97 and A2K or higher
hLib = LoadLibrary(CurrentDBDir() & “MouseHook.dll”)
If hLib = 0 Then
MsgBox s, vbOKOnly, “MISSING MOUSEHOOK.dll FILE”
MouseWheelOFF = False
Exit Function
End If
End If

‘ Get the ID for this thread
AccessThreadID = GetCurrentThreadId()
‘ Call our MouseHook function in the MouseHook dll.
‘ Please not the Optional GlobalHook BOOLEAN parameter
‘ Several developers asked for the MouseHook to be able to work with
‘ multiple instances of Access. In order to accomodate this request I
‘ have modified the function to allow the caller to
‘ specify a thread specific(this current instance of Access only) or
‘ a global(all applications) MouseWheel Hook.
‘ Only use the GlobalHook if you will be running multiple instances of Access!
MouseWheelOFF = StopMouseWheel(Application.hWndAccessApp, AccessThreadID, GlobalHook)

End Function

‘******************** Code Begin ***************

Function CurrentDBDir() As String
Dim strDBPath As String
Dim strDBFile As String
strDBPath = CurrentDb.Name
strDBFile = Dir(strDBPath)
CurrentDBDir = Left$(strDBPath, Len(strDBPath) - Len(strDBFile))
End Function
‘******************** Code End ****************

Y debes copiar la DLL MouseHook.dll en el directorio windows.

Download DLL

Posted in BBDD | 3 Comments »

Danny Way jump The Great Wall

Noviembre 13th, 2006 by kenavik

Increible pero cierto el skater Danny Way se atreve con todo. Ahora se salta la muralla china y se queda tan ancho.. jejeje

Posted in Videos | No Comments »

Benny Benassi - who’s your daddy

Noviembre 13th, 2006 by kenavik

Aquí os dejo un video de Benny Benassi. Este dj/productor siempre nos sorprende con sus videos. Impresionante las chicas que salen..

Posted in Videos | No Comments »

Generar código ASP o PHP a partir de HTML

Noviembre 13th, 2006 by kenavik

Navegando me he encontrado esta utilidad que a veces nos puede ayudar a la hora de programar. Si queremos generar código ASP o PHP a partir de un simple HTML. Desde esta Web puedes seleccionar el lenguaje de programación que queremos usar (ASP o PHP) y hacemos un copy&paste del código HTML que queremos generar y la Web nos genera el código en el lenguaje que anteriormente hemos seleccionado.
Muy útil para construir aquellos emails que tenemos que enviar desde nuestra aplicación Web.

Pulsa aquí para más info

Posted in ASP, PHP | No Comments »

Imagina una Tierra sin humanos

Noviembre 3rd, 2006 by kenavik

Tierra

Vía barrapunto nos encontramos con este interesante artículo de la web www.astroseti.org sobre como sería la tierra sin humanos.. Es un poco largo pero merece la pena.

Posted in General | No Comments »