Bienvenidos

Recuerda que tus comentarios son importantes y recuerda agradecer si te fue útil algun artículo publicado aquí.

L1f3 15 a D@nc3 Flo0r

sábado, 15 de enero de 2011

Buscar todas las tablas de una base de datos

Para ver un listado de las tablas de una base de datos (Sql Server)

USE YourDBName
GO 

SELECT 
*
FROM sys.Tables
GO

domingo, 1 de agosto de 2010

DATEADD – sumar valores (dias, meses o años) a una fecha

Para agregar valores a una fecha como sumarle meses o dias o años utilizamos la función DATEADD

Tanto en T-sql como en C#

C#:

DateTime s=DateTime.Today.Date.AddDays(2);

Tambien puede usar

AddMonths
AddYears
AddMinutes
entre otros…


 

T-SQL

Sintaxis:
DATEADD (datepart , number , date )

Conversiones

datepart

Abbreviations

year

yy, yyyy

quarter

qq, q

month

mm, m

dayofyear

dy, y

day

dd, d

week

wk, ww

weekday

dw, w

hour

hh

minute

mi, n

second

ss, s

millisecond

ms

microsecond

mcs

nanosecond

ns

lunes, 1 de marzo de 2010

The multi-part identifier "table.field" could not be bound

Este error te puede ocurrir en Sql si por ejemplo quieres actualizar un campo de una tabla con valores de un campo de otra tabla el cual tenga muchos valores diferentes.

Ej. Estaba tratando de actualizar un campo de la tabla "Session_Student" con los valores de un campo de otra tabla que tenía y esto era lo que estaba escribiendo:

update session_student
set session_student.session_id = vista.id_session
where session_student.id_session_stud = vista.id_session_stud

Esto seria lógico siempre y cuando lo que quiera actualizar sea un solo valor pero como vamos a llamar muchos valores la forma correcta de hacerlo es:

update session_student
set session_student.session_id = Temp.id_session
from (select id_session, id_session_stud from vista)Temp
where session_student.id_session_stud = Temp.id_session_stud

viernes, 20 de noviembre de 2009

Problemas con la ñ

Bueno, en estos días encontré un problemita trabajando con unos nombres que tenían nuestra preciada letra "ñ" (enie)

Resulta que cuando trataba de pasar uno de esos nombres a un datalist desde un textbox la aplicación da un error y habla de problemas de seguridad etc. Etc.

Error:

A potentially dangerous Request.Form value was detected from the client (ctl00$ContentPlaceHolder1$txtPProducto="...k 120mg niños ").


Muy feo verdad?

Pues ese errorcito era provocado por la letra "ñ"
Para resolver eso no basta con especificar la cultura también hay que especificar los encodings:
requestEncoding="iso-8859-1"
responseEncoding="iso-8859-1"
fileEncoding="iso-8859-1"
culture="es-MX"
uiCulture="es-MX"/>;
O mas facil:
String nombre = Server.HtmlDecode(TextBox1.Text)

 

Enjoy! Y recuerda que la vida es corta, tira código pero recuerda divertirte!

martes, 3 de noviembre de 2009

Tomar una palabra de un string en sql server

SELECT CASE CHARINDEX(' ', [campo], 1)
     WHEN
0 THEN [campo] -- empty or single word
     ELSE SUBSTRING(
[campo], 1, CHARINDEX(' ', [campo], 1) - 1) -- multi-word
END

FROM [tabla]

martes, 20 de octubre de 2009

lunes, 5 de octubre de 2009

Obtener el datakey value de una fila en un gridview

Se me present el caso en el que en un grid view debia poner un boton para eliminar esa fila y por consiguiente borrar ese valor de la base de datos.

Para esto ponemos en el gridview un botón y en el CommandName le ponemos "Eliminar".

El siguiente paso es hacer que cuando clikemos ese botón que aparecerá en cada fila del gridview, nos elimine ese valor.

Para esto en el Evento RowCommand del gridview ponemos lo siguiente:


if (e.CommandName == "Eliminar")

{


string valor;


int index;


 

index = int.Parse(e.CommandArgument.ToString());

valor = gridview1.DataKeys[index].Value.ToString();


 

TABLA.Delete(Convert.ToInt32(valor));

gridview1.DataBind();

}


 

La primera linea busca el comando Eliminar como le pusimos al botón.

Capturamos la fila en la que esta el boton que clicamos y buscamos el datakey value de esa fila

Y lo demas es simplemente borrarlo de la BD.


 

Recuerda declarar el campo DataKey en el GridView


 

Enjoy!