Para ver la version del servidor.
SELECT 'SQL Server ' + CAST(SERVERPROPERTY('productversion') AS VARCHAR) + ' - ' + CAST(SERVERPROPERTY('productlevel') AS VARCHAR) + ' (' + CAST(SERVERPROPERTY('edition') AS VARCHAR) + ')' |
Para ver la version del servidor.
SELECT 'SQL Server ' + CAST(SERVERPROPERTY('productversion') AS VARCHAR) + ' - ' + CAST(SERVERPROPERTY('productlevel') AS VARCHAR) + ' (' + CAST(SERVERPROPERTY('edition') AS VARCHAR) + ')' |
Interesante self-join
SELECT c2.name FROM customer c, customer c2 WHERE c.customer_id = 648 AND c.zipcode = c2.zipcode; |
Si se es sysadmin:
sp_password [ [ @OLD = ] 'old_password' , ] { [ @NEW =] 'new_password' } [ , [ @loginame = ] 'login' ] |
Sino, loguearse como el usuario y:
sp_password 'old_password' ,'new_password' |
Algo muy comun es querer saber el id del ultimo registro insertado, aca posteo un ejemplo de como hacer eso para una base de datos SQL Server en c#:
SqlConnection conn= new SqlConnection( ConfigurationManager.ConnectionStrings["dbConn"].ConnectionString ); string insertStr = "INSERT INTO [tabla]([texto],[fecha]) VALUES(@texto,getDate()) ;SELECT Scope_Identity();"; SqlCommand cmd=new SqlCommand(insertStr,conn); cmd.Parameters.Add("@texto", SqlDbType.NVarChar).Value="El texto va aca"; cmd.Connection.Open(); string ret=cmd.ExecuteScalar().ToString(); cmd.Connection.Close(); |
La parte clave esta en la sentencia Select Scope_Identity() del sql.
Si una fila de tu tabla tiene un valor que incluya la frase 100% proceder asi:
SELECT * FROM tablename WHERE x LIKE '%100[%]%' |
o
SELECT * FROM tablename WHERE x LIKE '%100\%%' ESCAPE '\' |
Este error choto(EXECUTE permission denied on object ‘sp_sdidebug’, database ‘master’, owner ‘dbo’.) se cura con:
GRANT EXECUTE ON sp_sdidebug TO 'username'; |
El primer dia del mes:
SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) |
El Ultimo dia del mes:
SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate() )+1, 0)); |
El Lunes de la semana actual:
SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0) |
Primer dia del año:
SELECT DATEADD(yy, DATEDIFF(yy,0,getdate()), 0) |
Ultimo dia del mes anterior:
SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(mm,0,getdate() ), 0)); |
Ultimo dia del año anterior:
SELECT dateadd(ms,-3,DATEADD(yy, DATEDIFF(yy,0,getdate() ), 0)) |
Primer lunes del mes:
SELECT DATEADD(wk, DATEDIFF(wk,0, |
dateadd(dd,6-datepart(DAY,getdate()),getdate())), 0); |