Programar para Pocket PC 2003

Estoy realizando un programa para un Pocket PC 2003, utilizando el .NET Compact Framework 2.0 en Visual Basic 2005, los puntos importantes a tomar en cuenta:

  1. En el Compact Framework se distingue entre mayúsculas y minúsculas.
  2. Con Visual Studio 2005, el desarrollo se simplifica hasta parecerse a un desarrollo para escritorio.
  3. Hay algunas funciones del .NET Framework que no existen (por eso es Compact), y que hay que simular, por ejemplo no hay objeto My.
  4. La memoria y el espacio es un elemento muy importante, hay que desarrollar pensando en límites muy pequeños.
Eso es todo por ahora, luego voy a ir agregando mas conclusiones. Cualquier consejo o recomendación, porque estoy aprendiendo, será bienvenida.

Entradas Relacionadas:

Management Studio o Administrador Corporativo

Si has instalado Sql Server 2005, y buscas desesperadamente el Administrador Corporativo, te doy una mala noticia, no lo vas a encontrar, fue reemplazado por el Management Studio, ¿más malas noticias? Se tiene que bajar e instalar aparte.

Descargalo desde aquí.

Sql Server : Optimizacion del rendimiento del CPU

En un artículo de Technet, Zach Nichter explica como optimizar el rendimiento del CPU para un servidor Sql Server. Se tocan los siguientes puntos.

  • Solución de problemas de rendimiento de bases de datos
  • Revisión de causas relacionadas con el hardware
  • Uso de PerfMon para hacer un seguimiento de los cuellos de botella en las bases de datos
  • Evaluación del rendimiento de las consultas
Para leer el artículo, haz clic aquí.

Como hacer una consulta por fecha

A veces es complicado hacer consultas por fechas, la siguiente es una forma rápida e realizar una consulta por fecha. En la consulta se pretende listar la columna DocumentoId de la tabla Documentos, filtrada por Fecha (en este caso 15/08/2005), si se fijan se ve la fecha a filtrar y el rango se extiende hasta antes del día siguiente.

SELECT DocumentoId
FROM Documentos
WHERE
Fecha >= '15/08/2005' AND
Fecha < '16/08/2005'

Sql Server : Sentencia WHERE con condicionales

Se puede incluir sentencias condicionales en la clausula WHERE, de modo que según los parámetros se forma una condición en la consulta.

Escenario:

Usaremos la tabla Customers de la base de datos de ejemplo Northwind que viene con el Sql Server. La consulta se hará con lo siguiente:

  1. Todos los registros que contengan la palabra "the" en el nombre de la compañía.
  2. Todos los registros para compañías localizadas en Alemania, excluyendo las que empiecen con la letra "A".
Normalmente, se podría crear una sentencia dinamica consistente en multiples IF y cadenas a ser concatenadas a una variable final, la cual sería ejecutada por EXEC. Pero a veces es preferible otra opción mas dinamica, pero también posiblemente mas lenta.

El código


-- Declarar algunas variables locales.
-- Actualmente se crean dos por cada variable incluida en el WHERE.
-- La primera variable representa el valor que estamos filtrando
-- y la segunda el operador para el filtro.

declare @companyName varchar(255)
declare @companyNameOp varchar(2)
declare @country varchar(255)
declare @countryOp varchar(2)

-- Valores de ejemplo. Los valores son para el segundo escenario descrito
-- anteriormente, todos los registros para las compañías localizadas
-- en Alemania, excluyendo cuyos nombres comiencen con "A"

-- Definicion de los operadores
-- para el ejemplo, utilizamos un par de letras:

-- ne = no igual
-- eq = igual
-- bg = empieza con
-- ed = termina con
-- ct = contiene

-- Para este ejemplo se utiliza campos de tipo varchar
-- pero es sencillo adaptarlo para otros tipos de datos


set @companyname = 'A%'
set @companynameOp = 'ne'
set @country = 'Germany'
set @countryOp = 'eq'

-- Armemos la consulta.

select
customerid, companyname, country
from
customers
where
case @companyNameOp
when '' then 1 -- Operador no definido, lista todo
when 'eq' then -- Operador es "igual"
case when companyname like @companyName then 1 else 0 end
when 'bg' then -- Operador es "comienza con"
case when companyname like @companyName +'%' then 1 else 0 end
when 'ed' then -- Operador es "termina con"
case when companyname like '%' + @companyName then 1 else 0 end
when 'ct' then -- Operador es "contiene"
case when companyname like '%' + @companyName +'%' then
1 else 0 end
when 'ne' then -- Operador es "no igual"
case when companyname not like @companyName then 1 else 0 end end =1

AND

-- lo mismo es para el otro campo

case @countryOp
when '' then 1
when 'eq' then
case when country like @country then 1 else 0 end
when 'bg' then
case when country like @country +'%' then 1 else 0 end
when 'ed' then
case when country like '%' + @country then 1 else 0 end
when 'ct' then
case when country like '%' + @country +'%' then 1 else 0 end
when 'ne' then
case when country not like @country then 1 else 0 end
end =1


Con esta consulta, se pueden crear procedimientos almacenados, mas flexibles, que permitiran unas consultas personalizadas más dinamicas.


Fuente:

Sql Server Central - Sotiris Filippidis