Ejecutar Consulta desde Servidor Vinculado



Registramos el servidor vinculado:

EXECUTE sp_addlinkedserver  
        @server=N'MISERVER',   -- Servidor
        @srvproduct=N'',       -- vacio
        @provider=N'SQLNCLI',  -- Driver
        @datasrc=N'MISERVER',  -- Servidor\instancia
        @catalog='base_datos';

En caso requiera contraseña:

EXEC sp_addlinkedsrvlogin 'MISERVER','FALSE', NULL,'sa', '123456';

Ejecutamos la consulta:

SELECT * FROM OPENQUERY(MISERVER,'SELECT * FROM tabla');





Corregir vinculo de usuarios SQL Server


En ocasiones cuando reinstalamos el servidor SQL Server y restauramos la Base de Datos, los datos de la tabla sysusers de la Base de Datos restaurada no esta vinculada correctamente con los datos de la tabla syslogins de la Base de Datos master, para esto debemos de corregir dichos vínculos.

Ejecutamos el siguiente comando:

EXEC sp_change_users_login 'Auto_Fix' , 'usuario' , NULL, 'contraseña'

usuario, es el nombre de usuario a vincular
contraseña, es la contraseña del usuario a vincular




Saber si trigger esta activo o inactivo - SQL Server


Use mi_basedatos

GO

select    cast (name as char(60)) as [Trigger], case when (status & 0x800)= 2048 then 'Inactivo' else 'Activo' end as status

from      sysobjects

where type='TR'





Buscar texto en columna de DataWindow


Para buscar texto en columnas de un DataWindow se utiliza el método Find.

Sintaxis:

long dwcontrol.Find(string expresion,long fila_inicio,long fila_fin)

El método Find retorna los siguientes valores:

• El numero de fila que contiene el texto buscado, caso contrario retorna 0
• En caso de error retorna:

   -1 (Error General),
   -5 (Error al pasar los argumentos)
   NULL (Si uno de los argumentos tiene valor NULL).


Nota: La búsqueda es case sensitive.

Búsqueda en columna tipo texto:
búsqueda en una columna:
long ll_fila
ll_fila=dw_1.find("nom_empleado='Miguel'",1,dw_1.rowcount( ))
búsqueda en dos columnas:
long ll_fila
ll_fila=dw_1.find("nom_empleado='Miguel' and telef_emp='5236521'",1,dw_1.rowcount( ))
Nota: en una columna tipo texto, la expresión a buscar debe ir entre comillas simples.

Búsqueda en columna tipo numérico:
long ll_fila
ll_fila=dw_1.find("sueldo_empleado=1500",1,dw_1.rowcount( ))
búsqueda por rango de valores:
long ll_fila
ll_fila=dw_1.find("sueldo_empleado>=1500 and sueldo_empleado<=2500",1,dw_1.rowcount( ))
Nota: en una columna tipo numérico, la expresión a buscar NO debe ir entre comillas.
Búsqueda en columna tipo fecha:
long ll_fila
ll_fila=dw_1.find("fec_date=datetime('02/04/2011')",1,dw_1.rowcount( ))




Tipos de datos PowerBuilder


PowerBuilder tiene los siguientes tipos de datos

Tipos de datos estándar


Tipo Dato
Descripción
Blob
Almacena cantidades ilimitadas de datos, por ejemplo, binario genérico,  imagen, archivo, etc.
Boolean
Tipo de dato lógico, puede contener dos valores, verdadero o falso.
Char or character
Contiene un carácter ASCII, por ejemplo:
char c
c=’T’
Date
Contiene datos de fecha, Incluye del año 1000 al 3000. Por ejemplo.

25-12-2010
DateTime           
Contiene datos de fecha y hora, por ejemplo.

25-12-2010 10:05:00

PowerBuilder soporta microsegundos.
Decimal or Dec
Numero decimal con un máximo de 18 dígitos, puede colocar el punto decimal dentro de los 18 dígitos. Por ejemplo.

9.25632541254745214
123456789.365987452

Double
Numero con punto flotante, con 15 dígitos de precisión y un rango de
2.2250738585073E-308 a  1.79769313486231E+308
Integer or Int
Entero de 16 bit con signo, con rango de
-32768 a +32767
Long
Entero de 32 bit con signo, con rango de
-2147483648 a +2147483647
LongLong
Entero de 64 bit  con signo, con rango de
-9223372036854775808 a 9223372036854775807
Real
Signo con punto flotante con seis dígitos de precisión y un rango de
3.402822E-38 a 3.402822E+38
String
Cadena de caracteres con longitud de
0 a 2147483647
Time
La hora en formato de 24 Horas, horas de 00 a 23, minutos de 00 a 59, segundos de 00 a 59, y la fracción de segundos hasta 6 dígitos, por ejemplo.
UnsignedInteger, UnsignedInt, or UInt
Entero de 16 bit sin signo, con rango de
0 a 65535
UnsignedLong or ULong
Entero de 32 bit sin signo, con rango de
0 a 4294967295
  

Tipo de Dato Any

El tipo de dato Any puede contener cualquier tipo de valor, incluyendo los tipos de datos estándar, objetos, estructuras y arrays. A este tipo de dato Any se le llama tipo de dato camaleón, porque toma el tipo de dato del valor asignado.

El tipo de dato Any se declare de la misma forma que los tipos de datos estándar.