martes, 18 de diciembre de 2012

Script para Abrir Puertos del Firewall para SQL

Este script puede copiarse y guardarse como un archivo de extensión ".CMD"

@echo off

@echo This scripts sets the default firewall configurations for SQL Server components

echo.

echo Setting the core components for a database instance

 

echo Default Instance

netsh advfirewall firewall add rule name="SQLServer" dir=in action=allow protocol=TCP localport=1433 profile=DOMAIN

 

echo Dedicated Admin Connection

netsh advfirewall firewall add rule name="SQL DAC" dir=in action=allow protocol=TCP localport=1434 profile=DOMAIN

 

 

echo SQL Browser Service

netsh advfirewall firewall add rule name="SQL Browser" dir=in action=allow protocol=UDP localport=1434 profile=DOMAIN

 

 

 

echo Setting the core firewall rules for database mirroring, service broker, TSQL Debugger, Analysis services, Reporting Services

 

echo Mirroring EndPoint - CHANGE PORT NUMBER AS NEEDED depending on which role

netsh advfirewall firewall add rule name="Mirroring EndPoint" dir=in action=allow protocol=TCP localport=5022 profile=DOMAIN

 

 

echo Service Broker

netsh advfirewall firewall add rule name="SQL Service Broker" dir=in action=allow protocol=TCP localport=4022 profile=DOMAIN

 

 

echo Enable TSQL Debugger (uses RPC)

netsh advfirewall firewall add rule name="T-SQL Debugger" dir=in action=allow protocol=TCP localport=135 profile=DOMAIN

 

echo Browser service for Analysis Services

netsh advfirewall firewall add rule name="SQL Browser for Analysis Services" dir=in action=allow protocol=TCP localport=2382 profile=DOMAIN

 

 

echo Analysis services Default Instance

netsh advfirewall firewall add rule name="Analysis Services" dir=in action=allow protocol=TCP localport=2383 profile=DOMAIN

 

 

echo HTTP/HTTPS for reporting services

netsh advfirewall firewall add rule name="HTTP Reporting Services" dir=in action=allow protocol=TCP localport=80 profile=DOMAIN

netsh advfirewall firewall add rule name="HTTPS Reporting Services" dir=in action=allow protocol=TCP localport=443 profile=DOMAIN

lunes, 17 de diciembre de 2012

Autoanálisis de nuestras inteligencias


Autoanálisis de nuestras inteligencias (Inteligencias Múltiples)


 

Inteligencia es la capacidad de entender, asimilar, elaborar información y utilizarla para resolver problemas en nuestro entorno, todos poseemos diferentes mentalidades y por ello aprendemos, memorizamos y comprendemos de modo diferente.

En 1983 Howard Gardner psicólogo profesor de la Universidad de Harvard conocido en el ámbito científico por sus investigaciones en el análisis de las capacidades cognitivas presento su teoría de las inteligencias múltiples en el libro “Frames of Mind”, que señala que no existe una inteligencia única en el ser humano, sino una diversidad de inteligencias que marcan las potencialidades y acentos significativos de cada individuo en diferentes escenarios.

Según Gardner y su teoría de inteligencias múltiples cada individuo tiene por lo menos ocho inteligencias, cada inteligencia es semiautónoma y cada persona desarrolla unas más que otras, el conjunto y balance de desarrollo de estas inteligencias define las habilidades cognoscitivas de cada individuo.

A través de un autoanálisis de acuerdo a la forma en que retenemos conocimiento, entendemos situaciones y empleamos el conocimiento para resolvemos problemas, podemos determinar que inteligencias tenemos más desarrolladas y buscar o planear nuestra propia metodología de aprendizaje.

Las ocho inteligencias son:

 
Lógico-matemática

Las personas con una  inteligencia lógica matemática bien desarrollada son capaces de utilizar el pensamiento abstracto utilizando la lógica y los números para establecer relaciones entre distintos datos.  Destacan, por tanto,  en  la resolución de problemas, en la capacidad de realizar cálculos matemáticos complejos  y en el razonamiento lógico, aprenden mejor usando casos y relaciones, clasificando, trabajando con lo abstracto

 
Lingüístico-verbal

Las personas con esta inteligencia tienen la capacidad de procesar con rapidez mensajes lingüísticos, ordenar palabras, dan sentido coherente a los mensajes, destacan en la memorización de fechas.  Aprenden mejor leyendo, escuchando y viendo palabras, hablando, escribiendo, discutiendo y debatiendo.

 
Corporal-kinestésica

Capacidad de utilizar el propio cuerpo de manera diferenciada y hábil para realizar actividades o resolver problemas. Las personas con esta inteligencia destacan en atletismo, danza, arte dramático, trabajos manuales, utilización de herramientas, les gusta moverse, tocar, hablar y el lenguaje corporal, aprenden a través de sensaciones corporales.

 
Espacial

La inteligencia espacial da la capacidad de percibir el mundo visual con precisión, imágenes mentalmente en tres dimensiones. El individuo con esta inteligencia destaca en lectura de mapas, gráficos, dibujando, laberintos, puzzles, imaginando cosas, visualizando, le gusta diseñar, construir, soñar despierto, aprende mejor con dibujos y colores, visualizando, usando su ojo mental.

 

Musical

Capacidad de percibir e identificar los elementos y características del sonido. La persona con esta inteligencia destaca en el canto, reconociendo sonidos, le gusta escuchar música, tocar un instrumento, aprende mejor con ritmo, escuchando música y melodías.

 
Pictórica

Capacidad de expresión mediante trazos. A través de esta inteligencia el individuo dibuja y pinta, tiene sensibilidad para dar movimiento y belleza a dibujos y pinturas, autonomía para captar y volver a transmitir los colores de la naturaleza.

 
Personal o Emocional

Esta inteligencia da la capacidad de dirigir nuestra propia vida de manera satisfactoria, consta de dos planos.
  · Interpersonal: Capacidad de entender a los demás y de sentir empatía por otros. Las personas con esta inteligencia destacan entendiendo a la gente, liderando, organizando, comunicando, resolviendo conflictos, vendiendo, les gusta tener amigos y aprenden compartiendo, comparando, relacionando cooperando.
   
  · Intrapersonal: capacidad de comprendernos a nosotros mismos, de saber quiénes somos, nuestras fortalezas y debilidades. Esencial para trazarse metas, desarrollar la identidad e incrementar la autoestima, las personas con esta inteligencia más desarrollada aprenden mejor trabajando solos, haciendo proyectos a su propio ritmo, teniendo espacio, reflexionando.

 
Naturalista

Capacidad de sentirse atraído con el mundo natural y sensibilizarse con el mismo. A través de esta inteligencia el individuo aprende a cuidar y respetar a los animales, las plantas y su medio ambiente.

 

Ahora solo cuéntanos que inteligencias tienes más desarrolladas.
 

viernes, 2 de noviembre de 2012

¿Por qué usamos la "@" en las direcciones de correo electrónico?


¿Por qué usamos la "@" en las direcciones de correo electrónico?

Cuando el ingeniero Ray Tomlinson, que creó el e-mail en 1971, estaba buscando un símbolo que sirviese para identificar las direcciones de correo, uno de los pocos disponibles en los teclados era justamente la arroba. “Hubiese sido más fácil usar un corchete, un paréntesis o incluso una coma, pero estos símbolos ya eran utilizados para otros fines, y de los símbolos que quedaban libres, la @ era el mejor”, ha explicado hace algunos años Tomlinson. “Otro punto a favor de este símbolo es que al traducirse como at en inglés daba una sensación de localización”, agregó. La primera dirección de correo electrónico de la historia fue “tomlinson@bbn-tenexa”.nes, y de los símbolos que quedaban libres, la @ era el mejor”, ha explicado hace algunos años Tomlinson. “Otro punto a favor de este símbolo es que al traducirse como at en inglés daba una sensación de localización”, agregó. La primera dirección de correo electrónico de la historia fue “tomlinson@bbn-tenexa”.
nes, y de los símbolos que quedaban libres, la @ era el mejor”, ha explicado hace algunos años Tomlinson. “Otro punto a favor de este símbolo es que al traducirse como at en inglés daba una sensación de localización”, agregó. La primera dirección de correo electrónico de la historia fue “tomlinson@bbn-tenexa”.
 

lunes, 29 de octubre de 2012

La Primera PC

 

La Altair 8800 es considerado por muchos la pionera en la era de las computadoras personales. Fue lanzada en 1975 y desarrollada por MITS (Micro Instrumentation and Telemetry Systems), en los EEUU. Tenía como característica principal, una unidad de procesamiento central con una memoria de 256 bytes y un complejo sistema de operación.

 
Después de leer el 1 de enero de 1975 que Popular Electronics había creado el Altair 8800, Bill Gates llamó a los creadores del nuevo microordenador, MITS, y ofreció demostrar la implementación del lenguaje de programación BASIC para el sistema.Después de desarrollarlo en las ocho semanas siguientes junto con Allen, el intérprete funciono en la versión parcial del programa y MITS acordó distribuir Altair BASIC. Gates dejó la Universidad Harvard y se trasladó a Albuquerque, Nuevo México donde se encontraba el MITS, y fundo Microsoft allí. El nombre Microsoft (una palabra combinada de microordenador y software) fue usado por primera vez en una carta de Gates a Allen el 29 de noviembre de 1975 y el 26 de noviembre de 1976 se convirtió en marca registrada. La primera oficina internacional de la compañía fue fundada el 1 de noviembre de 1978 en Japón, llamada ASCII Microsoft (ahora llamado Microsoft Japón). El 1 de enero de 1979 la compañía se trasladó de Albuquerque a Belleveu, Washington. Steve Ballmer inauguró la sede de la compañía el 11 de junio de 1980, este más adelante sustituiría a Gates como gerente. La compañía se reestructuró el 25 de junio de 1981 para convertirse en una compañía incorporada en el estado de Washington (de ahí cambio su nombre a “Microsoft Inc”). Como parte de la reestructuración, Bill Gates se convirtió en el presidente de la compañía y Paul Allen en vicepresidente ejecutivo.

 


El primer "bug" del que se tiene conocimiento ocurrió en 1945.


  1. El primer "bug" del que se tiene conocimiento ocurrió en 1945 fue registrado por la científica Grace Murray Hopper trabajaba como programadora en el laboratorio de cálculo de la Universidad de Harvard y cuando trataba de averiguar la causa de un fallo de un ordenador, descubrió que era debido a una polilla que se había introducido entre los contactos de unos de los relés del computador, por lo que anotó en el cuaderno de incidencias "First actual case of bug being found" ( en español: "Primer caso real de bicho que se ha hallado". De ahí el nombre de "bug". 


    Curiosamente esta polilla, junto con la hoja de anotaciones, está expuesta en el museo Naval Surface Warfare Center Computer de Dahlgren, en Virginia, EEUU. Desde ese día se han sucedido bastantes incidentes relacionados con fallos de programación, tantos que la revista Wired ha hecho una recopilación de los peores desastres ocasionados por estos "bichitos".

     


viernes, 12 de octubre de 2012

Manejo de Cursores en Microsoft SQL Server


 
CURSORES
 
 
Un cursor es una estructura de datos creada en memoria RAM producto de una sentencia SELECT y que nos permite navegar dentro de las filas para obtener la información.
Cuando trabajemos con cursores debemos seguir los siguientes pasos.
-Declarar el cursor, utilizando DECLARE 
-Abrir el cursor, utilizando OPEN 
-Leer los datos del cursor, utilizando FETCH ... INTO 
-Cerrar el cursor, utilizando CLOSE
-Liberar el cursor, utilizando DEALLOCATE
 
use northwind
go
--Declarando el cursor
Declare Cursor1 Cursor scroll
   for select * from dbo.customers
--Abrir el cursor
Open Cursor1
--Navegar
Fetch first from Cursor1
--cerrar el cursor
Close Cursor1
--liberar de memoria
Deallocate Cursor1
 
    La sintaxis general para trabajar con un cursor es la siguiente.
-- Declaración del cursor
DECLARE [NOMBRE CURSOR] CURSOR [ LOCAL | GLOBAL ]
[ FORWARD_ONLY | SCROLL ]

FOR [SENTENCIA DE SQL (SELECT)]
 -- Apertura del cursor
OPEN [NOMBRE CURSOR]
 -- Lectura de la primera fila del cursor
FETCH [NOMBRE CURSOR] INTO [LISTA DE VARIABLES DECLARADAS]
 
WHILE (@@FETCH_STATUS = 0)
BEGIN   
-- Lectura de la siguiente fila de un cursor
FETCH [NOMBRE CURSOR] INTO [LISTA DE VARIABLES DECLARADAS]
...
-- Fin del bucle WHILE
END
-- Cierra el cursor
CLOSE [NOMBRE CURSOR]
-- Libera los recursos del cursor
DEALLOCATE [NOMBRE CURSOR]
 
    El siguiente ejemplo muestra un ejemplo de cursor usando la base de datos northwind. 
----Ejemplo 2 Cursores
Declare @codigo varchar(5),
@compania varchar(200),
@contacto varchar(150),
@pais varchar(100)
Declare ccustomers cursor GLOBAL
     for Select customerid, companyname, contactname
     , country from customers
Open ccustomers
fetch ccustomers into @codigo, @compania, @contacto,
@pais
while(@@fetch_status=0)
begin
print @codigo +' '+ @compania +' '+ @contacto +' '+@pais
fetch ccustomers into @codigo, @compania, @contacto,
@pais
end
close ccustomers
deallocate ccustomers
 
GO
Cuando trabajamos con cursores, la función @@FETCH_STATUS nos indica el estado de la última instrucción FETCH emitida, los valores posibles son:
Valor devuelto
Descripción
0
La instrucción FETCH se ejecutó correctamente.
-1
La instrucción FETCH no se ejecutó correctamente o la fila estaba más allá del conjunto de resultados.
-2
Falta la fila recuperada.
 
 
Para actualizar los datos de un cursor debemos especificar FOR UPDATE después de la sentencia SELECT en la declaración del cursor, y WHERE CURRENT OF [Nombre Cursor] en la sentencia UPDATE tal y como muestra el siguiente ejemplo.
----Ejemplo 3 Cursores Actualizar datos
Declare @codigo varchar(5),
@compania varchar(200),
@contacto varchar(150),
@pais varchar(100)
Declare ccustomers cursor GLOBAL
     for Select customerid, companyname, contactname
     , country from customers FOR UPDATE
Open ccustomers
fetch ccustomers into @codigo, @compania, @contacto,
@pais
while(@@fetch_status=0)
begin
UPDATE customers
set companyname = @compania + '(Modificado)'
where current of ccustomers
 
fetch ccustomers into @codigo, @compania, @contacto,
@pais
end
close ccustomers
deallocate ccustomers
go
 
 En la apertura del cursor, podemos especificar los siguientes parámetros:

DECLARE

<nombre_cursor> CURSOR  [ LOCAL | GLOBAL ]
[ FORWARD_ONLY | SCROLL ]
[ STATIC | KEYSET | DYNAMIC | FAST_FORWARD ]
[ READ_ONLY | SCROLL_LOCKS | OPTIMISTIC ]
[ TYPE_WARNING ]
FOR  Sentencia_sql
 Para consultar cada parámetro el link es: