Configurar fuentes de datos

www.altova.com Imprimir este apartado Página anterior Subir un nivel Página siguiente

Inicio >  Comparación de BD >

Configurar fuentes de datos

Antes de que pueda hacer comparaciones de datos de tablas de BD debe configurar una fuente de datos que incluya los detalles de la conexión de BD y otros parámetros de configuración. Debe haber una fuente de datos por cada tabla, vista o consulta SQL personal que quiera incluir en la comparación.

 

Para configurar una fuente de datos abra el archivo de configuración del cliente y añada una sección [datasouce:<name>] nueva donde <name> sea el nombre único con el que quiere identificar esta fuente de datos. Más abajo enumeramos los parámetros que puede encontrar en una sección [datasource].

 

También puede añadir fuentes de datos al archivo de configuración del servidor. Esto puede ser útil si necesita conectarse a la fuente de datos desde el equipo en el que se está ejecutando DiffDog Server (no el cliente de línea de comandos de DiffDog). Sin embargo, debe tener en cuenta que las conexiones del lado servidor que necesiten autenticación de Windows para BD, como SQL Server, pueden tener problemas en este caso porque el servicio de DiffDog Server se ejecuta en un usuario distinto que puede no tener acceso a la base de datos. Una solución alternativa en este caso es definir la fuente de datos en el archivo de configuración del cliente (el cliente de línea de comandos de DiffDog se ejecuta como el usuario que ejecuta el comando data-diff.

 

Como ya hemos mencionado, cada fuente de datos debe tener una tabla, vista o un conjunto de registros al que haya asignado un nombre y que haya obtenido mediante una consulta SQL. Para indicarlos, defina las opciones table o sql (se excluyen mutuamente), que se explican más abajo. Es importante que cada tabla, vista o conjunto de registros tenga al menos una columna que garantice que cada fila es única. Esta columna (o columnas) es la columna "clave". Si la tabla tiene una clave primaria, entonces ya existe una columna clave que garantiza que la fila es única. De lo contrario recomendamos que indique qué columna o columnas deben tratarse como "clave". Para ello configure las opciones key-columns-by-name y key-columns-by-ordinal, que se explican más abajo.

 

type

Parámetro obligatorio. Indica el tipo de conexión de BD. Son valores válidos: ado, adonet, jdbc, odbc, postgresql y sqlite. Ejemplo:

 

type=sqlite

 

Las conexiones de tipo postgresql y sqlite vienen ya integradas y no necesitan controladores. Para otros tipos de BD elija un método de conexión BD apropiado para el equipo en el que se vaya a ejecutar el trabajo de comparación. Este tipo de conexiones necesitan que instale en el equipo los controladores correspondientes. Para más información consulte el apartado Bases de datos compatibles.

 

path

Este parámetro indica la ruta de acceso al archivo de BD y solo se puede aplicar a bases de datos SQLite. No configure este parámetro si quiere usar el parámetro connection, ya que se excluyen mutuamente.
 

path=C:\Articles.sqlite

SQLite

 

connection

Parámetro condicional. Indica la cadena de conexión a la BD. No configure este parámetro si quiere usar el parámetro path, ya que se excluyen mutuamente.

 

connection=Data Source=DBSQLSERV;User ID=altova_user;Password=dhjdf84h;Provider=SQLNCLI11.1;Initial Catalog=NANONULL;Persist Security Info=true

SQL Server (ADO)

connection=jdbc:db2://mydb2-105:50000/NANONULL

DB2 (JDBC)

connection=jdbc:oracle:thin:@dbora12c:1521:orcl12c

Oracle (JDBC)

connection=my.dbserver.com

PostgreSQL (nativa)

Nota:para conexiones nativas PostgreSQL connection también puede ser la dirección IP del servidor de BD, por ejemplo 127.0.0.1. La BD y el puerto de una conexión nativa PostgreSQL se indican en las opciones database y port.

 

Llame al comando db-drivers para ver las conexiones disponibles en el equipo local en un formato que pueda copiar y pegar. Además, si tiene una licencia de DatabaseSpy puede usar esta aplicación para crear una conexión de BD y después volver a utilizar los detalles de la conexión tal y como aparecen en la ventana Propiedades.
 

 

database

Parámetro obligatorio y aplicable únicamente a conexiones PostgreSQL. Indica la BD de la conexión PostgreSQL.

 

database = ZooDB

 

port

Indica el puerto de la conexión de BD PostgreSQL. Se aplica solamente a conexiones de BD PostgreSQL nativas.

 

table

Parámetro condicional. Indica el nombre completo de la tabla o vista de BD que se va a usar en el lado derecho o izquierdo de la comparación. Si configura este parámetro no configure sql, ya que se excluyen mutuamente. Ejemplos:

 

table=[HR].[dbo].[Employees]

SQL Server

table="ALTOVA_ADMIN"."customers"

IBM DB2

Consejo:con DatabaseSpy puede obtener el nombre completo de la tabla haciendo clic en la tabla en el explorador y seleccionando Mostrar en Editor SQL | Ruta de acceso en el menú contextual.

 

key-columns-by-name

Para cada tabla, vista o conjunto de registros debe haber al menos una columna que garantice que cada fila es única. Esta columna (o columnas) será la columna "clave". Si la tabla tiene una clave primaria, entonces ya existe una columna clave que garantiza que la fila es única. De lo contrario recomendamos que indique qué columna o columnas deben tratarse como "clave". No es necesario que sean columnas que formen parte de una clave primaria o única en la tabla. Ejemplos:

 

key-columns-by-name="guid"

 

 

key-columns-by-name="first_name","last_name","email"

 

Definir columnas "clave" es opcional pero es una práctica recomendada. Si no lo hace la aplicación las definirá de forma automática, pero puede que no lo haga de forma uniforme para todos los controladores de BD. Además, esa detección solo funciona para tablas o vistas, por lo que recomendamos que defina las columnas "clave" de forma explícita si está usando consultas SQL que devuelven valores computados o resultados devueltos por procedimientos almacenados.

 

key-columns-by-ordinal

Puede indicar una columna "clave" usando su nombre (véase más arriba) o con el número ordinal que tenga en la tabla, empezando por el 1. Esta opción permite identificar las columnas clave con sus números ordinales. Ejemplos:

 

key-columns-by-ordinal=1

 

 

key-columns-by-ordinal=1,2,5

 

Si define columnas clave el número de columnas clave debe ser el mismo en las dos fuentes de datos.

 

user

Parámetro condicional. Indica el nombre de usuario necesario para conectarse a la BD. Este parámetro no es necesario si la base de datos acepta conexiones anónimas o si la cadena de conexión ya incluye el nombre de usuario (véase el parámetro connection).

 

pass

Parámetro condicional. Indica la contraseña necesaria para conectarse a la BD. Este parámetro no es necesario si la base de datos  conexiones anónimas o si la cadena de conexión ya incluye la contraseña (véase el parámetro connection).

 

assembly

Esta opción es obligatoria para conexiones ADO.NET. Ejemplos:

 

assembly=System.Data.SqlClient.SqlClientFactory, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089

Proveedor de datos para SQL Server.NET Framework

assembly=IBM.Data.DB2.iSeries.iDB2Factory, IBM.Data.DB2.iSeries, Version=12.0.0.0, Culture=neutral, PublicKeyToken=9cdb2ebfb1f93a26

Proveedor de datos .NET Framework para IBM i

Ejecute el comando db-drivers para ver los ensamblajes .NET disponibles en el equipo local en un formato que pueda copiar y pegar.

 

 

class

Esta opción es obligatoria para conexiones ADO.NET y JDBC. Ejemplos:

 

class=com.ibm.db2.jcc.DB2Driver

IBM DB2 vía JDBC

class=com.mysql.jdbc.Driver

MySQL vía JDBC

class=System.Data.SqlClient

SQL Server vía ADO.NET

Ejecute el comando db-drivers para ver los controladores JDBC disponibles en el equipo local en un formato que pueda copiar y pegar.

 

sql

Parámetro condicional. Indica una consulta SELECT en la sintaxis de la BD actual. El conjunto de registros recuperado por la instrucción SELECT se puede usar como parte (izquierda o derecha) de la comparación. Si configura este parámetro no configure el parámetro table, ya que ambos se excluyen mutuamente.

 

sql="SELECT * FROM employees WHERE a > 5 and b < 6 ORDER BY c"

Consulta SELECT

sql="EXEC dbo.uspGetEmployeeManagers @BusinessEntityID = 50"

Procedimiento almacenado

Si indica una llamada a un procedimiento almacenado se espera que este devuelva un conjunto de registros, no únicamente parámetros de salida.


© 2019 Altova GmbH