viernes, 11 de julio de 2008

Métodos de la clase java.util.Date deprecated

Los métodos getYear(), getMonth() y getDay() de la clase java.util.Date están deprecated, por lo tanto si dada una fecha se quiere obtener alguno de estos valores: año, mes o día (entre otros) se debe usar un objeto java.util.Calendar, como se indica en el ejemplo:

Calendar calendario = Calendar.getInstance();
Date d = new Date();
calendario.setTime(d);
System.out.println("La fecha es " + d.toString());
System.out.println("El año es " + calendario.get(Calendar.YEAR));
System.out.println("El mes es " + calendario.get(Calendar.MONTH));
System.out.println("El dia es " + Calendario.get(Calendar.DAY_OF_MONTH));

ATENCIÓN: El valor retornado por calendario.get(Calendar.MONTH) es un entero cuyo valor va del 0 al 11. O sea que para el mes de enero va a retornar 0, para febrero 1, …, para diciembre 11.

lunes, 7 de julio de 2008

Fechas en java

Para crear un java.util.Date desde un String:
Primero crear un date format indicando el formato en el que viene la fecha, luego parsear el string con ese formato.

String dateStr = "2008-07-20";
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date dateFrom = df.parse(dateStr);

Para crear un java.util.Date desde un java.sql.Date y viceversa:
Ambas clases Date tienen definido un constructor que recive como parametro la cantidad de milisegundos desde "the epoch" hasta la fecha especificada. ("the epoch" representa el 1/1/1970 00:00:00 GMT). Para obtener el valor en milisegundos desde "the epoch" de una fecha usar la funcion getTime().

dateUtil = new Date(dateSql.getTime());
dateSql = new Date(dateUtil.getTime());

martes, 1 de julio de 2008

Como cambiar la password del root en MySql

Loguearse al “MySql Command Line Client” con el usuario root.

Ejecutar:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpwd');
Para cambiar la password del usuario root cuando se accede desde el localhost.

SET PASSWORD FOR 'root'@'%' = PASSWORD('newpwd');
Para cambiar la password del usuario root cuando se accede desde otro host diferente al local.

IMPORTANTE: Se debe usar la función PASSWORD() para que la nueva password quede encriptada.

Ejemplo de como crear un Stored Procedure en SQL Server 2005

Ejemplo de como crear un Stored Procedure en SQL Server 2005:

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go

ALTER|CREATE PROCEDURE [dbo].[NombreStoredProcedure] (
@param1 varchar(50) = NULL,
@param2 int = NULL,
....

) WITH RECOMPILE
AS
BEGIN
SET NOCOUNT ON;
DECLARE @where_string varchar(500)
DECLARE @order_string varchar(100)
DECLARE @join_string varchar(500)

SET @where_string = '';
SET @order_string = '';
SET @join_string = '';


IF (@filtervalCaseNum IS NOT NULL OR @filtervalCaseNum != '' )
BEGIN
SET @where_string = ' ccaseno LIKE '''+@filtervalCaseNum+'%'' AND ';
END
IF (@filtervalJudicialReview IS NOT NULL OR @filtervalJudicialReview != '' )
BEGIN
SET @where_string = @where_string + ' CONVERT(varchar(12),CaseProgram.dt_jreview,101) LIKE '''+@filtervalJudicialReview+'%'' AND ';
END
IF (@filtervalProgType IS NOT NULL OR @filtervalProgType != '' )
BEGIN
SET @where_string = @where_string + ' Program.description LIKE '''+@filtervalProgType+'%'' AND '
SET @join_string = @join_string + ' INNER JOIN Program ON CaseProgram.program_id=Program.program_id ';

END

DECLARE @str_sql varchar(3000)

SET @str_sql = '
SELECT count(CaseProgram.caseprogram_id)
FROM CaseProgram LEFT OUTER JOIN [Case] ON CaseProgram.case_id=[Case].case_id
LEFT OUTER JOIN Client on Client.client_id=[Case].client_id
'+ @join_string +'
WHERE '+ @where_string+' 1=1 '


PRINT @str_sql ;
EXEC (@str_sql)
END

Mis fotos en TrekEarth