Detalles de la Conexión de la Google Spanner¶
Introducción¶
Versión del conector
Esta documentación se basa en la versión 21.0.8383 del conector.
Empezando¶
Compatibilidad con la versión de Google Spanner
El conector Jitterbit para Google Spanner se conecta con la API de servicios web de GoogleSpanner.
Establecer una Conexión¶
Conexión a la Google Spanner¶
Proporcione las siguientes propiedades de conexión antes de agregar las propiedades de autenticación.
InstanceId
: El ID de la instancia de Google Spanner a la que se está conectando.Database
: El nombre de la base de datos de Google Spanner a la que conectarse.ProjectId
: El ID del proyecto donde reside su instancia de Google Spanner.
Autenticación en Google Spanner¶
Todas las conexiones a Google Spanner se autentican mediante OAuth. El conector admite el uso de cuentas de usuario, cuentas de servicio y cuentas de instancias de GCP para la autenticación.
Autenticarse con una Cuenta de Usuario¶
AuthScheme
debe establecerse en OAuth
en todos los flujos de cuentas de usuario. Para las aplicaciones de escritorio, la aplicación predeterminada del conector es la forma más sencilla de autenticación. El único requisito adicional es establecer InitiateOAuth
a GETANDREFRESH
.
Cuando se inicie el controlador, se abrirá un navegador y Google Spanner solicitará su información de inicio de sesión. El conector utilizará las credenciales que proporcione para acceder a sus datos de Google Spanner. Estas credenciales se guardarán y actualizarán automáticamente según sea necesario.
Consulte Uso de la autenticación OAuth para obtener una guía de autenticación que cubra todos los métodos admitidos en detalle.
Autenticarse con una Cuenta de Servicio¶
Para autenticarse usando una cuenta de servicio, debe crear una nueva cuenta de servicio y tener una copia del certificado de la cuenta.
Para un archivo JSON, deberá establecer estas propiedades:
AuthScheme
: Requerido. Establézcalo enOAuthJWT
.InitiateOAuth
: Requerido. Establézcalo enGETANDREFRESH
.OAuthJWTCertType
: Requerido. Establézcalo enGOOGLEJSON
.OAuthJWTCert
: Requerido. Establézcalo en la ruta del archivo .json proporcionado por Google.OAuthJWTSubject
: Opcional. Establezca este valor solo si la cuenta de servicio es parte de un dominio de GSuite y desea habilitar la delegación. El valor de esta propiedad debe ser la dirección de correo del usuario a cuyos datos desea acceder.
Para un archivo PFX, deberá establecer estas propiedades en su lugar:
AuthScheme
: Requerido. Establézcalo enOAuthJWT
.InitiateOAuth
: Requerido. Establézcalo enGETANDREFRESH
.OAuthJWTCertType
: Requerido. Establézcalo enPFXFILE
.OAuthJWTCert
: Requerido. Establézcalo en la ruta del archivo .pfx proporcionado por Google.OAuthJWTCertPassword
: Opcional. Establézcalo en la contraseña del archivo .pfx. En la mayoría de los casos, será necesario proporcionarlo, ya que Google cifra los certificados PFX.OAuthJWTCertSubject
: Opcional. Configure esto solo si está usando unOAuthJWTCertType
que almacena múltiples certificados. No debe configurarse para certificados PFX generados por Google.OAuthJWTIssuer
: Requerido. Establézcalo en la dirección de correo de la cuenta de servicio. Esta dirección generalmente incluirá el dominioiam.gserviceaccount.com
.OAuthJWTSubject
: Opcional. Establezca este valor solo si la cuenta de servicio es parte de un dominio de GSuite y desea habilitar la delegación. El valor de esta propiedad debe ser la dirección de correo del usuario a cuyos datos desea acceder.
Si aún no tiene una cuenta de servicio, puede crear una siguiendo el procedimiento en Crear una aplicación OAuth personalizada.
Autenticarse con una Cuenta de Instancia de GCP¶
Cuando se ejecuta en una máquina virtual de GCP, el conector puede autenticarse mediante una cuenta de servicio vinculada a la máquina virtual. Para usar este modo, configure AuthScheme
a GCPInstanceAccount
.
Uso de la Autenticación OAuth¶
OAuth requiere que el usuario que se autentica interactúe con Google Spanner usando el navegador. El conector facilita esto de varias maneras, como se describe a continuación.
Credenciales Integradas¶
Consulte Credenciales integradas para conectarse con las credenciales incrustadas del conector y omitir la creación de una aplicación OAuth personalizada.
Credenciales Personalizadas¶
En lugar de conectarse con las credenciales integradas del conector, puede registrar una aplicación para obtener OAuthClientId
y OAuthClientSecret
.
Cuándo Crear una Aplicación OAuth Personalizada¶
La creación de una aplicación OAuth personalizada es opcional, ya que el conector ya está registrado con Google Spanner y puede conectarse con sus credenciales integradas. Es posible que desee crear una aplicación de OAuth personalizada para cambiar la información que se muestra cuando los usuarios inician sesión en el extremo de OAuth de Google Spanner para otorgar permisos al conector.
Creación de una Aplicación OAuth Personalizada¶
Consulte Crear una aplicación OAuth personalizada para un procedimiento.
Uso de una Cuenta de Servicio para Conectarse a Datos de Todo el Dominio¶
Puede usar una cuenta de servicio en este flujo de OAuth para acceder a las APIs de Google en nombre de los usuarios de un dominio. Un administrador de dominio puede delegar el acceso de todo el dominio a la cuenta de servicio.
Para completar el flujo de la cuenta de servicio, genere una clave privada en la consola de APIs de Google. En el flujo de la cuenta de servicio, el conector intercambia un token web JSON (JWT) por el OAuthAccessToken
. El OAuthAccessToken
autentica que el conector tiene los mismos permisos otorgados a la cuenta de servicio. Se requiere la clave privada para firmar el JWT.
Generar una Clave Privada¶
Siga los pasos a continuación para obtener las credenciales para su aplicación:
- Inicie sesión en la Consola API de Google.
- Haga clic en Crear proyecto o seleccione un proyecto existente.
- En el API Manager, haga clic en Credenciales -> Crear credenciales -> Clave de cuenta de servicio. En el menú Cuenta de servicio, seleccione Nueva cuenta de servicio o seleccione una cuenta de servicio existente. En la sección Tipo de clave, seleccione el tipo de clave P12.
- Haga clic en Crear para descargar el par de claves. Se muestra la contraseña de la clave privada: Configure esto en
OAuthJWTCertPassword
. - En la sección Claves de cuenta de servicio en la página Credenciales, haga clic en Administrar cuentas de servicio y configure
OAuthJWTIssuer
a la dirección de correo que se muestra en el campo ID de cuenta de servicio. - Haga clic en Biblioteca -> API de llave inglesa -> Habilitar API.
Autenticarse con una Cuenta de Servicio¶
Después de configurar las siguientes propiedades de conexión, está listo para conectarse:
InitiateOAuth
: Establézcalo en GETANDREFRESH. Puedes usarInitiateOAuth
para evitar generar manualmente elOAuthAccessToken
propiedad de conexión y repetición del intercambio OAuth.OAuthJWTCertType
: Ajústelo a "PFXFILE".OAuthJWTCertPassword
: establezca esto en la contraseña del archivo .p12.OAuthJWTCertSubject
: establezca esto en "*" para elegir el primer certificado en el almacén de certificados.OAuthJWTIssuer
: establezca esto en la dirección de correo de la cuenta de servicio.OAuthJWTCert
: Establézcalo en la ruta del archivo .p12.OAuthJWTSubject
: establezca esto en la dirección de correo del usuario para quien la aplicación solicita acceso de delegado.InstanceId
: establezca esto en el ID de la instancia a la que desea conectarse.Database
: establezca esto en el nombre de la base de datos a la que desea conectarse.ProjectId
: establezca esto en la ID del proyecto al que desea conectarse.
Cuando se conecta, el conector completa el flujo de OAuth para una cuenta de servicio:
- Crea y firma el JWT con el conjunto de notificaciones requerido por el conector.
- Intercambia el JWT por el token de acceso.
- Envía el JWT para un nuevo token de acceso cuando el token caduca.
Credenciales Integradas¶
Autenticarse con las Credenciales de OAuth Integradas¶
Autenticación de Escritorio con la Aplicación OAuth Integrada¶
Puede conectarse sin configurar ninguna propiedad de conexión para sus credenciales de usuario. Después de configurar lo siguiente, está listo para conectarse:
InitiateOAuth
: Establézcalo en GETANDREFRESH. Puede usar InitiateOAuth para evitar repetir el intercambio de OAuth y configurar manualmenteOAuthAccessToken
.InstanceId
: establezca esto en el ID de la instancia a la que desea conectarse.Database
: establezca esto en el nombre de la base de datos a la que desea conectarse.ProjectId
: establezca esto en la ID del proyecto al que desea conectarse.
Cuando se conecta, el conector abre el extremo de OAuth en su navegador predeterminado. Inicie sesión y otorgue permisos a la aplicación. Luego, el conector completa el proceso de OAuth.
- Extrae el token de acceso de la URL de devolución de llamada y autentica las solicitudes.
- Obtiene un nuevo token de acceso cuando caduca el antiguo.
- Guarda los valores de OAuth en
OAuthSettingsLocation
para persistir a través de las conexiones.
Credenciales Personalizadas¶
Cuándo Usar una Aplicación OAuth Personalizada¶
La creación de una aplicación OAuth personalizada es opcional, ya que el conector ya está registrado con Google Spanner y puede conectarse con sus credenciales integradas.
Es posible que desee crear una aplicación de OAuth personalizada para cambiar la información que se muestra cuando los usuarios inician sesión en Google Spanner para otorgar permisos al conector.
Autenticación de Escritorio con una Aplicación OAuth Personalizada¶
Siga los pasos a continuación para autenticarse con las credenciales de una aplicación OAuth personalizada. Consulte Crear una aplicación OAuth personalizada.
Obtenga y Actualice el Token de Acceso de OAuth¶
Después de configurar lo siguiente, está listo para conectarse:
OAuthClientId
: Establézcalo en el ID de cliente asignado cuando registró su aplicación.OAuthClientSecret
: establezca esto en el secreto de cliente asignado cuando registró su aplicación.InitiateOAuth
: Establézcalo en GETANDREFRESH. Puede usar InitiateOAuth para evitar repetir el intercambio de OAuth y configurar manualmenteOAuthAccessToken
.InstanceId
: establezca esto en el ID de la instancia a la que desea conectarse.Database
: establezca esto en el nombre de la base de datos a la que desea conectarse.ProjectId
: establezca esto en la ID del proyecto al que desea conectarse.
Cuando se conecta, el conector abre el extremo de OAuth en su navegador predeterminado. Inicie sesión y otorgue permisos a la aplicación. Luego, el conector completa el proceso de OAuth:
- Extrae el token de acceso de la URL de devolución de llamada y autentica las solicitudes.
- Actualiza el token de acceso cuando caduca.
- Guarda los valores de OAuth en
OAuthSettingsLocation
para persistir a través de las conexiones.
Máquinas Sin Cabeza¶
Uso de OAuth en una Máquina Sin Cabeza¶
Para crear fuentes de datos de Google Spanner en servidores autónomos u otras máquinas en las que el conector no puede abrir un navegador, debe autenticarse desde otra máquina. La autenticación es un proceso de dos pasos.
- En lugar de instalar el conector en otra máquina, puede seguir los pasos a continuación para obtener el
OAuthVerifier
valor. O bien, puede instalar el conector en otra máquina y transferir los valores de autenticación de OAuth, después de autenticarse a través del flujo habitual basado en el navegador. - A continuación, puede configurar el conector para actualizar automáticamente el token de acceso desde la máquina sin periféricos.
Puede seguir el flujo de autenticación de OAuth sin cabeza usando las credenciales de OAuth integradas del conector o usando las credenciales de OAuth para su aplicación de OAuth personalizada.
Uso de las Credenciales de OAuth Integradas¶
Obtenga un código verificador
Siga los pasos a continuación para autenticarse desde otra máquina y obtener el OAuthVerifier
propiedad de conexión:
- Haga clic en el siguiente enlace para abrir el extremo de OAuth de Google Spanner en su navegador.
- Inicie sesión y otorgue permisos al conector. A continuación, se le redirige a la URL de devolución de llamada, que contiene el código verificador.
- Guarde el valor del código verificador. Establecerá esto en el
OAuthVerifier
propiedad de conexión.
En la máquina sin periféricos, establezca las siguientes propiedades de conexión para obtener los valores de autenticación de OAuth.
OAuthVerifier
: Establézcalo en el código del verificador.InitiateOAuth
: Establézcalo en ACTUALIZAR.OAuthSettingsLocation
: configure esto para conservar los valores de autenticación OAuth cifrados en el archivo especificado.InstanceId
: establezca esto en el ID de la instancia a la que desea conectarse.Database
: establezca esto en el nombre de la base de datos a la que desea conectarse.ProjectId
: establezca esto en la ID del proyecto al que desea conectarse.
Después de generar el archivo de configuración de OAuth, configure las siguientes propiedades para conectarse a los datos:
OAuthSettingsLocation
: Establézcalo en el archivo que contiene los valores de autenticación de OAuth cifrados. Asegúrese de que este archivo otorgue permisos de lectura y escritura al conector para habilitar la actualización automática del token de acceso.InitiateOAuth
: Establézcalo en ACTUALIZAR.InstanceId
: establezca esto en el ID de la instancia a la que desea conectarse.Database
: establezca esto en el nombre de la base de datos a la que desea conectarse.ProjectId
: establezca esto en la ID del proyecto al que desea conectarse.
Transferir configuración de OAuth
Siga los pasos a continuación para instalar el conector en otra máquina, autenticar y luego transferir los valores de OAuth resultantes.
En una segunda máquina, instale el conector y conéctese con el siguiente conjunto de propiedades:
OAuthSettingsLocation
: establezca esto en un archivo de texto grabable.InitiateOAuth
: Establézcalo en GETANDREFRESH.InstanceId
: establezca esto en el ID de la instancia a la que desea conectarse.Database
: establezca esto en el nombre de la base de datos a la que desea conectarse.ProjectId
: establezca esto en la ID del proyecto al que desea conectarse.
Pruebe la conexión para autenticarse en el navegador. Los valores de autenticación resultantes se escriben, se cifran, en la ruta especificada por OAuthSettingsLocation
. Una vez que haya probado con éxito la conexión, copie el archivo de configuración de OAuth en su máquina sin periféricos. En la máquina sin periféricos, configure las siguientes propiedades de conexión para conectarse a los datos:
InitiateOAuth
: Establézcalo en ACTUALIZAR.OAuthSettingsLocation
: establezca esto en la ruta a su archivo de configuración de OAuth. Asegúrese de que este archivo otorgue permisos de lectura y escritura al conector para habilitar la actualización automática del token de acceso.InstanceId
: establezca esto en el ID de la instancia a la que desea conectarse.Database
: establezca esto en el nombre de la base de datos a la que desea conectarse.ProjectId
: establezca esto en la ID del proyecto al que desea conectarse.
Uso de las Credenciales para una Aplicación OAuth Personalizada¶
Cree una aplicación OAuth personalizada
La creación de una aplicación de OAuth personalizada es opcional en el flujo de OAuth sin interfaz; puede omitir la creación de una aplicación conectándose con las credenciales de OAuth integradas del conector. Es posible que desee crear una aplicación de OAuth personalizada para cambiar la información que se muestra cuando los usuarios inician sesión en Google Spanner para otorgar permisos al conector.
Consulte Crear una aplicación OAuth personalizada para un procedimiento. Luego puede seguir los procedimientos a continuación para autenticarse y conectarse a los datos.
Obtenga un código verificador
Establezca las siguientes propiedades en la máquina sin periféricos:
InitiateOAuth
: Ajústelo a APAGADO.OAuthClientId
: establezca esto en la ID del cliente en la configuración de su aplicación.OAuthClientSecret
: establezca esto en el secreto del cliente en la configuración de su aplicación.InstanceId
: establezca esto en el ID de la instancia a la que desea conectarse.Database
: establezca esto en el nombre de la base de datos a la que desea conectarse.ProjectId
: establezca esto en la ID del proyecto al que desea conectarse.
Luego puede seguir los pasos a continuación para autenticarse desde otra máquina y obtener el OAuthVerifier
propiedad de conexión.
- Llame a GetOAuthAuthorizationURL procedimiento almacenado* con el parámetro de entrada CallbackURL establecido en el URI de redirección exacto que especificó en la configuración de su aplicación.
- Abra la URL devuelta en un navegador. Inicie sesión y otorgue permisos al conector. A continuación, se le redirige a la URL de devolución de llamada, que contiene el código verificador.
- Guarde el valor del código verificador. Establecerá esto en el
OAuthVerifier
propiedad de conexión.
En la máquina sin periféricos, establezca las siguientes propiedades de conexión para obtener los valores de autenticación de OAuth:
OAuthClientId
: establezca esto en la clave de consumidor en la configuración de su aplicación.OAuthClientSecret
: establezca esto en el secreto del consumidor en la configuración de su aplicación.OAuthVerifier
: Establézcalo en el código del verificador.OAuthSettingsLocation
: configure esto para conservar los valores de autenticación OAuth cifrados en el archivo especificado.InitiateOAuth
: Establézcalo en ACTUALIZAR.InstanceId
: establezca esto en el ID de la instancia a la que desea conectarse.Database
: establezca esto en el nombre de la base de datos a la que desea conectarse.ProjectId
: establezca esto en la ID del proyecto al que desea conectarse.
Después de generar el archivo de configuración de OAuth, configure las siguientes propiedades para conectarse a los datos:
OAuthClientId
: establezca esto en la clave de consumidor en la configuración de su aplicación.OAuthClientSecret
: establezca esto en el secreto del consumidor en la configuración de su aplicación.OAuthSettingsLocation
: Establézcalo en el archivo que contiene los valores de autenticación de OAuth cifrados. Asegúrese de que este archivo otorgue permisos de lectura y escritura al proveedor para habilitar la actualización automática del token de acceso.InitiateOAuth
: Establézcalo en ACTUALIZAR.InstanceId
: establezca esto en el ID de la instancia a la que desea conectarse.Database
: establezca esto en el nombre de la base de datos a la que desea conectarse.ProjectId
: establezca esto en la ID del proyecto al que desea conectarse.
Transferir configuración de OAuth
Siga los pasos a continuación para instalar el conector en otra máquina, autenticar y luego transferir los valores de OAuth resultantes.
En una segunda máquina, instale el conector y conéctese con el siguiente conjunto de propiedades:
OAuthSettingsLocation
: establezca esto en un archivo de texto grabable.InitiateOAuth
: Establézcalo en GETANDREFRESH.OAuthClientId
: Establézcalo en el ID de cliente asignado cuando registró su aplicación.OAuthClientSecret
: establezca esto en el secreto de cliente asignado cuando registró su aplicación.InstanceId
: establezca esto en el ID de la instancia a la que desea conectarse.Database
: establezca esto en el nombre de la base de datos a la que desea conectarse.ProjectId
: establezca esto en la ID del proyecto al que desea conectarse.
Pruebe la conexión para autenticarse. Los valores de autenticación resultantes se escriben, se cifran, en la ruta especificada por OAuthSettingsLocation
. Una vez que haya probado con éxito la conexión, copie el archivo de configuración de OAuth en su máquina sin periféricos. En la máquina sin periféricos, configure las siguientes propiedades de conexión para conectarse a los datos:
InitiateOAuth
: Establézcalo en ACTUALIZAR.OAuthClientId
: establezca esto en la clave de consumidor en la configuración de su aplicación.OAuthClientSecret
: establezca esto en el secreto del consumidor en la configuración de su aplicación.OAuthSettingsLocation
: establezca esto en la ruta a su archivo de configuración de OAuth. Asegúrese de que este archivo otorgue permisos de lectura y escritura al conector para habilitar la actualización automática del token de acceso.InstanceId
: establezca esto en el ID de la instancia a la que desea conectarse.Database
: establezca esto en el nombre de la base de datos a la que desea conectarse.ProjectId
: establezca esto en la ID del proyecto al que desea conectarse.
Creación de una Aplicación OAuth Personalizada¶
Registro de Su Aplicación¶
El flujo de consentimiento del usuario de OAuth implica que el usuario que se autentica interactúe con Google mediante el navegador. Para facilitar esto, el conector ya está registrado como una aplicación OAuth, pero es posible que deba configurar valores específicos para su aplicación u organización. También es posible que desee mostrar su propia información en lugar de la de la aplicación cuando los usuarios inicien sesión para otorgar permisos.
-
Inicie sesión en la Consola API de Google.
-
Haga clic en Crear proyecto o seleccione un proyecto existente.
-
Abra el API Manager desde el menú principal y haga clic en Credenciales -> Crear credenciales -> ID de cliente de OAuth.
-
Si se conecta desde una aplicación de escritorio, seleccione Otro.
Si se conecta desde una aplicación web, seleccione Aplicación web. En el cuadro URI de redireccionamiento autorizado, ingrese la URL que desea que se use como una URL de redireccionamiento confiable, donde el usuario regresará con el token que verifica que le ha otorgado acceso a su aplicación.
-
Haga clic en Crear. El
OAuthClientId
yOAuthClientSecret
son mostrados. -
Haga clic en Biblioteca -> API de llave inglesa -> Habilitar API.
Cuándo Crear una Aplicación OAuth Personalizada¶
La creación de una aplicación OAuth personalizada es opcional, ya que el conector ya está registrado con Google Spanner y puede conectarse con sus credenciales integradas.
Es posible que desee crear una aplicación de OAuth personalizada para cambiar la información que se muestra cuando los usuarios inician sesión en el extremo de OAuth de Google Spanner para otorgar permisos al conector.
Siga los pasos a continuación para crear una aplicación OAuth personalizada y obtener las propiedades de conexión en un flujo de autenticación OAuth específico.
Crear una Aplicación OAuth Personalizada: Escritorio¶
Registre su aplicación Google Spanner en https://console.cloud.google.com/apis/credentials
para obtener las siguientes propiedades de conexión:
OAuthClientId
OAuthClientSecret
Características Avanzadas¶
Esta sección detalla una selección de funciones avanzadas del conector Google Spanner.
Vistas definidas por el usuario
El conector le permite definir tablas virtuales, llamadas vistas definidas por el usuario, cuyo contenido se decide mediante una consultar preconfigurada. Estas vistas son útiles cuando no puede controlar directamente las consultas que se envían a los controladores. Consulte Vistas definidas por el usuario para obtener una descripción general de la creación y configuración de vistas personalizadas.
Configuración SSL
Usar Configuración SSL para ajustar cómo el conector maneja las negociaciones de certificados TLS/SSL. Puede elegir entre varios formatos de certificado; ver el SSLServerCert
propiedad en "Opciones de cadena de conexión" para obtener más información.
Apoderado
Para configurar el conector mediante Configuración de proxy de Agente Privado, Selecciona el Use Proxy Settings
casilla de verificación en la pantalla de configuración de la conexión.
Vistas Definidas por el Usuario¶
El conector Jitterbit para Google Spanner le permite definir una tabla virtual cuyos contenidos se deciden mediante una consultar preconfigurada. Estas se denominan Vistas definidas por el usuario, que son útiles en situaciones en las que no puede controlar directamente la consultar que se envía al controlador, por ejemplo, cuando se utiliza el controlador de Jitterbit. Las vistas definidas por el usuario se pueden utilizar para definir predicados que siempre se aplican. Si especifica predicados adicionales en la consultar a la vista, se combinan con la consultar ya definida como parte de la vista.
Hay dos formas de crear vistas definidas por el usuario:
- Cree un archivo de configuración con formato JSON que defina las vistas que desea.
- Declaraciones DDL.
Definición de Vistas Usando un Archivo de Configuración¶
Las vistas definidas por el usuario se definen en un archivo de configuración con formato JSON llamado UserDefinedViews.json
. El conector detecta automáticamente las vistas especificadas en este archivo.
También puede tener múltiples definiciones de vista y controlarlas usando UserDefinedViews
propiedad de conexión. Cuando utiliza esta propiedad, el conector solo ve las vistas especificadas.
Este archivo de configuración de vista definida por el usuario tiene el siguiente formato:
- Cada elemento raíz define el nombre de una vista.
- Cada elemento raíz contiene un elemento hijo, llamado
query
, que contiene la consultar SQL personalizada para la vista.
Por ejemplo:
{
"MyView": {
"query": "SELECT * FROM [].[GoogleSpanner].Customer WHERE MyColumn = 'value'"
},
"MyView2": {
"query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
}
}
Utilizar el UserDefinedViews
propiedad de conexión para especificar la ubicación de su archivo de configuración JSON. Por ejemplo:
"UserDefinedViews", "C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json"
Esquema para Vistas Definidas por el Usuario¶
Las vistas definidas por el usuario se exponen en UserViews
esquema por defecto. Esto se hace para evitar que el nombre de la vista entre en conflicto con una entidad real en el modelo de datos. Puede cambiar el nombre del esquema utilizado para UserViews configurando UserViewsSchemaName
propiedad.
Trabajar con Vistas Definidas por el Usuario¶
Por ejemplo, una instrucción SQL con una vista definida por el usuario llamada UserViews.RCustomers
solo enumera clientes en Raleigh:
SELECT * FROM Customers WHERE City = 'Raleigh';
Un ejemplo de una consultar al controlador:
SELECT * FROM UserViews.RCustomers WHERE Status = 'Active';
Dando como resultado la consultar efectiva a la fuente:
SELECT * FROM Customers WHERE City = 'Raleigh' AND Status = 'Active';
Ese es un ejemplo muy simple de una consultar a una vista definida por el usuario que es efectivamente una combinación de la consultar de vista y la definición de vista. Es posible componer estas consultas en patrones mucho más complejos. Todas las operaciones de SQL están permitidas en ambas consultas y se combinan cuando corresponde.
Configuración SSL¶
Personalización de la Configuración SSL¶
De forma predeterminada, el conector intenta negociar SSL/TLS comparando el certificado del servidor con el almacén de certificados de confianza del sistema.
Para especificar otro certificado, consulte SSLServerCert
propiedad de los formatos disponibles para hacerlo.
Modelo de Datos¶
Jitterbit Connector for Google Spanner modela los datos tal como se definen en Google Spanner para el Proyecto y la Instancia configurados.
Procedimientos Almacenados¶
Procedimientos almacenados* están disponibles para complementar los datos disponibles del Modelo de datos. Puede ser necesario actualizar los datos disponibles desde una vista usando un procedimiento almacenado* porque los datos no proporcionan actualizaciones bidireccionales directas, similares a tablas. En estas situaciones, la recuperación de los datos se realiza utilizando la vista o tabla adecuada, mientras que la actualización se realiza llamando a un procedimiento almacenado. Procedimientos almacenados* toman una lista de parámetros y devuelven un conjunto de datos que contiene la colección de tuplas que constituyen la respuesta.
Conector Jitterbit para Procedimientos Almacenados de Google Spanner¶
Nombre | Descripción |
---|---|
GetOAuthAccessToken | Obtiene el token de acceso de OAuth que se utilizará para la autenticación con varios servicios de Google. |
GetOAuthAuthorizationURL | Obtiene la URL de autorización de OAuth utilizada para la autenticación con varios servicios de Google. |
RefreshOAuthAccessToken | Obtiene el token de acceso de OAuth que se utilizará para la autenticación con varios servicios de Google. |
Obtener Token de Acceso de OAuth¶
Obtiene el token de acceso de OAuth que se utilizará para la autenticación con varios servicios de Google.
Aporte¶
Nombre | Tipo | Descripción |
---|---|---|
AuthMode | String | El tipo de modo de autenticación a utilizar. Los valores permitidos son APP, WEB. El valor predeterminado es WEB. |
Verifier | String | El código verificador devuelto por Google después de que se haya otorgado el permiso para que la aplicación se conecte. Modo de autenticación WEB únicamente. |
Scope | String | El alcance del acceso a las APIs de Google. De forma predeterminada, se especificará el acceso a todas las APIs utilizadas por este proveedor de datos. El valor predeterminado es *https://www.googleapis.com/auth/cloud-platform https://www.googleapis.com/auth/spanner.admin https://www.googleapis.com/auth/spanner.data* . |
CallbackURL | String | Este campo determina dónde se envía la respuesta. El valor de este parámetro debe coincidir exactamente con uno de los valores registrados en la consola de APIs, incluidos los esquemas HTTP o HTTPS, las mayúsculas y la barra diagonal final ('/'). |
Prompt | String | Este campo indica el aviso para presentar al usuario. Acepta uno de los siguientes valores: NINGUNO, CONSENTIMIENTO, SELECCIONAR CUENTA. El valor predeterminado es SELECT_ACCOUNT, por lo que se le pedirá a un usuario determinado que seleccione la cuenta a la que conectarse. Si se establece en CONSENTIMIENTO, el usuario verá una página de consentimiento cada vez, incluso si previamente ha dado su consentimiento a la aplicación para un conjunto determinado de ámbitos. Por último, si se establece en NINGUNO, no se mostrarán pantallas de autenticación o consentimiento al usuario. El valor predeterminado es SELECT_ACCOUNT. |
AccessType | String | Este campo indica si su aplicación necesita acceder a una API de Google cuando el usuario no está presente en el navegador. Este parámetro está predeterminado en FUERA DE LÍNEA. Si su aplicación necesita actualizar los tokens de acceso cuando el usuario no está presente en el navegador, use OFFLINE. Esto hará que su aplicación obtenga un token de actualización la primera vez que intercambie un código de autorización para un usuario. Los valores permitidos son ONLINE, OFFLINE. El valor predeterminado es FUERA DE LÍNEA. |
State | String | Este campo indica cualquier estado que pueda ser de utilidad para su solicitud al recibir la respuesta. Su aplicación recibe el mismo valor que envió, ya que este parámetro realiza un viaje de ida y vuelta al servidor de autorización de Google y viceversa. Los usos incluyen redirigir al usuario al recurso correcto en su sitio, usar nonces y mitigar la falsificación de solicitudes entre sitios. |
Columnas del Conjunto de Resultados¶
Nombre | Tipo | Descripción |
---|---|---|
OAuthAccessToken | String | El token de autenticación devuelto por Google. Esto se puede usar en llamadas posteriores a otras operaciones para este servicio en particular. |
OAuthRefreshToken | String | Un token que puede usarse para obtener un nuevo token de acceso. |
ExpiresIn | String | El tiempo de vida restante en el token de acceso. |
Obtener URL de Autorización de OAuth¶
Obtiene la URL de autorización de OAuth utilizada para la autenticación con varios servicios de Google.
Aporte¶
Nombre | Tipo | Descripción |
---|---|---|
Scope | String | El alcance del acceso a las APIs de Google. De forma predeterminada, se especificará el acceso a todas las APIs utilizadas por este proveedor de datos. El valor predeterminado es *https://www.googleapis.com/auth/cloud-platform https://www.googleapis.com/auth/spanner.admin https://www.googleapis.com/auth/spanner.data* . |
CallbackURL | String | Este campo determina dónde se envía la respuesta. El valor de este parámetro debe coincidir exactamente con uno de los valores registrados en la consola de APIs, incluidos los esquemas HTTP o HTTPS, mayúsculas y minúsculas y barra diagonal final ('/'). |
Prompt | String | Este campo indica el aviso para presentar al usuario. Acepta uno de los siguientes valores: NINGUNO, CONSENTIMIENTO, SELECCIONAR CUENTA. El valor predeterminado es SELECT_ACCOUNT, por lo que se le pedirá a un usuario determinado que seleccione la cuenta a la que conectarse. Si se establece en CONSENTIMIENTO, el usuario verá una página de consentimiento cada vez, incluso si previamente ha dado su consentimiento a la aplicación para un conjunto determinado de ámbitos. Por último, si se establece en NINGUNO, no se mostrarán pantallas de autenticación o consentimiento al usuario. El valor predeterminado es SELECT_ACCOUNT. |
AccessType | String | Este campo indica si su aplicación necesita acceder a una API de Google cuando el usuario no está presente en el navegador. Este parámetro está predeterminado en FUERA DE LÍNEA. Si su aplicación necesita actualizar los tokens de acceso cuando el usuario no está presente en el navegador, use OFFLINE. Esto hará que su aplicación obtenga un token de actualización la primera vez que intercambie un código de autorización para un usuario. Los valores permitidos son ONLINE, OFFLINE. El valor predeterminado es FUERA DE LÍNEA. |
State | String | Este campo indica cualquier estado que pueda ser de utilidad para su solicitud al recibir la respuesta. Su aplicación recibe el mismo valor que envió, ya que este parámetro realiza un viaje de ida y vuelta al servidor de autorización de Google y viceversa. Los usos posibles incluyen redirigir al usuario al recurso correcto en su sitio, usar nonces y mitigar la falsificación de solicitudes entre sitios. |
Columnas del Conjunto de Resultados¶
Nombre | Tipo | Descripción |
---|---|---|
URL | String | La URL para completar la autenticación del usuario. |
RefreshOAuthAccessToken¶
Obtiene el token de acceso de OAuth que se utilizará para la autenticación con varios servicios de Google.
Aporte¶
Nombre | Tipo | Descripción |
---|---|---|
OAuthRefreshToken | String | El token de actualización devuelto del intercambio de código de autorización original. |
Columnas del Conjunto de Resultados¶
Nombre | Tipo | Descripción |
---|---|---|
OAuthAccessToken | String | El token de autenticación devuelto por Google. Esto se puede usar en llamadas posteriores a otras operaciones para este servicio en particular. |
OAuthRefreshToken | String | El token de autenticación devuelto por Google. Esto se puede usar en llamadas posteriores a otras operaciones para este servicio en particular. |
ExpiresIn | String | El tiempo de vida restante en el token de acceso. |
Tablas del Sistema¶
Puede consultar las tablas del sistema que se describen en esta sección para acceder a la información del esquema, la información sobre la funcionalidad del origen de datos y las estadísticas de operación lote.
Tablas de Esquema¶
Las siguientes tablas devuelven metadatos de la base de datos para Google Spanner:
- sys_catalogs: enumera las bases de datos disponibles.
- sys_schemas: enumera los esquemas disponibles.
- sys_tablas: enumera las tablas y vistas disponibles.
- sys_tablecolumns: Describe las columnas de las tablas y vistas disponibles.
- procedimientos_sys: describe los procedimientos almacenados disponibles.
- parámetros_procedimiento_sys: Describe procedimiento almacenado* parámetros.
- sys_keycolumns: describe las claves principal y externa.
- índices_sys: Describe los índices disponibles.
Tablas de Fuentes de Datos¶
Las siguientes tablas devuelven información sobre cómo conectarse y consultar la fuente de datos:
- sys_connection_props: Devuelve información sobre las propiedades de conexión disponibles.
- sys_sqlinfo: describe las consultas SELECT que el conector puede descargar al origen de datos.
Tablas de Información de Consulta¶
La siguiente tabla devuelve estadísticas de consultar para consultas de modificación de datos, incluidas las operaciones lote:
- identidad_sys: devuelve información sobre operaciones lote o actualizaciones individuales.
Sys_catalogs¶
Enumera las bases de datos disponibles.
La siguiente consultar recupera todas las bases de datos determinadas por la cadena de conexión:
SELECT * FROM sys_catalogs
Columnas¶
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos. |
Sys_schemas¶
Enumera los esquemas disponibles.
La siguiente consultar recupera todos los esquemas disponibles:
SELECT * FROM sys_schemas
Columnas¶
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos. |
SchemaName | String | El nombre del esquema. |
Sys_tables¶
Enumera las tablas disponibles.
La siguiente consultar recupera las tablas y vistas disponibles:
SELECT * FROM sys_tables
Columnas¶
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | La base de datos que contiene la tabla o vista. |
SchemaName | String | El esquema que contiene la tabla o vista. |
TableName | String | El nombre de la tabla o vista. |
TableType | String | El tipo de tabla (tabla o vista). |
Description | String | Una descripción de la tabla o vista. |
IsUpdateable | Boolean | Si la tabla se puede actualizar. |
Sys_tablecolumns¶
Describe las columnas de las tablas y vistas disponibles.
La siguiente consultar devuelve las columnas y los tipos de datos de la tabla [].[GoogleSpanner].Customer:
SELECT ColumnName, DataTypeName FROM sys_tablecolumns WHERE TableName='Customer' AND CatalogName='' AND SchemaName='GoogleSpanner'
Columnas¶
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene la tabla o vista. |
SchemaName | String | El esquema que contiene la tabla o vista. |
TableName | String | El nombre de la tabla o vista que contiene la columna. |
ColumnName | String | El nombre de la columna. |
DataTypeName | String | El nombre del tipo de datos. |
DataType | Int32 | Un número entero que indica el tipo de datos. Este valor se determina en tiempo de ejecución en función del ambiente. |
Length | Int32 | El tamaño de almacenamiento de la columna. |
DisplaySize | Int32 | El ancho máximo normal de la columna designada en caracteres. |
NumericPrecision | Int32 | El número máximo de dígitos en datos numéricos. La longitud de la columna en caracteres para datos de carácter y fecha y hora. |
NumericScale | Int32 | La escala de columna o número de dígitos a la derecha del punto decimal. |
IsNullable | Boolean | Si la columna puede contener nulo. |
Description | String | Una breve descripción de la columna. |
Ordinal | Int32 | El número de secuencia de la columna. |
IsAutoIncrement | String | Si el valor de la columna se asigna en incrementos fijos. |
IsGeneratedColumn | String | Si se genera la columna. |
IsHidden | Boolean | Si la columna está oculta. |
IsArray | Boolean | Si la columna es una matriz. |
Sys_procedimientos¶
Enumera los procedimientos almacenados disponibles.
La siguiente consultar recupera los procedimientos almacenados disponibles:
SELECT * FROM sys_procedures
Columnas¶
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | La base de datos que contiene el procedimiento almacenado. |
SchemaName | String | El esquema que contiene el procedimiento almacenado. |
ProcedureName | String | El nombre del procedimiento almacenado. |
Description | String | Una descripción del procedimiento almacenado. |
ProcedureType | String | El tipo de procedimiento, como PROCEDIMIENTO o FUNCIÓN. |
Sys_procedureparameters¶
Describe procedimiento almacenado* parámetros.
La siguiente consultar devuelve información sobre todos los parámetros de entrada para el procedimiento almacenado SelectEntries:
SELECT * FROM sys_procedureparameters WHERE ProcedureName='SelectEntries' AND Direction=1 OR Direction=2
Columnas¶
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene el procedimiento almacenado. |
SchemaName | String | El nombre del esquema que contiene el procedimiento almacenado. |
ProcedureName | String | El nombre del procedimiento almacenado* que contiene el parámetro. |
ColumnName | String | El nombre del procedimiento almacenado* parámetro. |
Direction | Int32 | Un número entero correspondiente al tipo de parámetro: entrada (1), entrada/salida (2) o salida (4). Los parámetros de tipo de entrada/salida pueden ser tanto parámetros de entrada como de salida. |
DataTypeName | String | El nombre del tipo de datos. |
DataType | Int32 | Un número entero que indica el tipo de datos. Este valor se determina en tiempo de ejecución en función del ambiente. |
Length | Int32 | El número de caracteres permitidos para los datos de caracteres. El número de dígitos permitidos para datos numéricos. |
NumericPrecision | Int32 | La máxima precisión para datos numéricos. La longitud de la columna en caracteres para datos de carácter y fecha y hora. |
NumericScale | Int32 | El número de dígitos a la derecha del punto decimal en datos numéricos. |
IsNullable | Boolean | Si el parámetro puede contener nulo. |
IsRequired | Boolean | Si el parámetro es necesario para la ejecución del procedimiento. |
IsArray | Boolean | Si el parámetro es una matriz. |
Description | String | La descripción del parámetro. |
Ordinal | Int32 | El índice del parámetro. |
Sys_keycolumns¶
Describe las claves primarias y foráneas. La siguiente consultar recupera la clave principal de la tabla [].[GoogleSpanner].Customer:
SELECT * FROM sys_keycolumns WHERE IsKey='True' AND TableName='Customer' AND CatalogName='' AND SchemaName='GoogleSpanner'
Columnas¶
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene la clave. |
SchemaName | String | El nombre del esquema que contiene la clave. |
TableName | String | El nombre de la tabla que contiene la clave. |
ColumnName | String | El nombre de la columna clave. |
IsKey | Boolean | Si la columna es una clave principal en la tabla a la que se hace referencia en el campo TableName. |
IsForeignKey | Boolean | Si la columna es una clave externa a la que se hace referencia en el campo TableName. |
PrimaryKeyName | String | El nombre de la clave principal. |
ForeignKeyName | String | El nombre de la clave foránea. |
ReferencedCatalogName | String | La base de datos que contiene la clave principal. |
ReferencedSchemaName | String | El esquema que contiene la clave principal. |
ReferencedTableName | String | La tabla que contiene la clave principal. |
ReferencedColumnName | String | El nombre de la columna de la clave principal. |
Sys_foreignkeys¶
Describe las claves foráneas. La siguiente consultar recupera todas las claves foráneas que hacen referencia a otras tablas:
SELECT * FROM sys_foreignkeys WHERE ForeignKeyType = 'FOREIGNKEY_TYPE_IMPORT'
Columnas¶
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene la clave. |
SchemaName | String | El nombre del esquema que contiene la clave. |
TableName | String | El nombre de la tabla que contiene la clave. |
ColumnName | String | El nombre de la columna clave. |
PrimaryKeyName | String | El nombre de la clave principal. |
ForeignKeyName | String | El nombre de la clave foránea. |
ReferencedCatalogName | String | La base de datos que contiene la clave principal. |
ReferencedSchemaName | String | El esquema que contiene la clave principal. |
ReferencedTableName | String | La tabla que contiene la clave principal. |
ReferencedColumnName | String | El nombre de la columna de la clave principal. |
ForeignKeyType | String | Designa si la clave externa es una clave de importación (apunta a otras tablas) o de exportación (hace referencia desde otras tablas). |
Sys_indexes¶
Describe los índices disponibles. Al filtrar en los índices, puede escribir consultas más selectivas con tiempos de respuesta de consultar más rápidos.
La siguiente consultar recupera todos los índices que no son claves principales:
SELECT * FROM sys_indexes WHERE IsPrimary='false'
Columnas¶
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene el índice. |
SchemaName | String | El nombre del esquema que contiene el índice. |
TableName | String | El nombre de la tabla que contiene el índice. |
IndexName | String | El nombre del índice. |
ColumnName | String | El nombre de la columna asociada con el índice. |
IsUnique | Boolean | True si el índice es único. Falso en caso contrario. |
IsPrimary | Boolean | True si el índice es una clave principal. Falso en caso contrario. |
Type | Int16 | Un valor entero correspondiente al tipo de índice: estadística (0), agrupado (1), hash (2) u otro (3). |
SortOrder | String | El orden de clasificación: A para ascender o D para descender. |
OrdinalPosition | Int16 | El número de secuencia de la columna en el índice. |
Sys_connection_props¶
Devuelve información sobre las propiedades de conexión disponibles y las establecidas en la cadena de conexión.
Al consultar esta tabla, se debe usar la cadena de conexión de configuración:
jdbc:cdata:googlespanner:config:
Esta cadena de conexión le permite consultar esta tabla sin una conexión válida.
La siguiente consultar recupera todas las propiedades de conexión que se han establecido en la cadena de conexión o se han establecido a través de un valor predeterminado:
SELECT * FROM sys_connection_props WHERE Value <> ''
Columnas¶
Nombre | Tipo | Descripción |
---|---|---|
Name | String | El nombre de la propiedad de conexión. |
ShortDescription | String | Una breve descripción. |
Type | String | El tipo de datos de la propiedad de conexión. |
Default | String | El valor predeterminado si no se establece uno explícitamente. |
Values | String | Una lista separada por comas de valores posibles. Se lanza un error de validación si se especifica otro valor. |
Value | String | El valor que establezca o un valor predeterminado preconfigurado. |
Required | Boolean | Si la propiedad es necesaria para conectarse. |
Category | String | La categoría de la propiedad de conexión. |
IsSessionProperty | String | Si la propiedad es una propiedad de sesión, utilizada para guardar información sobre la conexión actual. |
Sensitivity | String | El nivel de sensibilidad de la propiedad. Esto informa si la propiedad está ofuscada en los formularios de registro y autenticación. |
PropertyName | String | Una forma truncada en mayúsculas y minúsculas del nombre de la propiedad de conexión. |
Ordinal | Int32 | El índice del parámetro. |
CatOrdinal | Int32 | El índice de la categoría de parámetro. |
Hierarchy | String | Muestra las propiedades dependientes asociadas que deben configurarse junto con esta. |
Visible | Boolean | Informa si la propiedad está visible en la interfaz de usuario de la conexión. |
ETC | String | Diversa información miscelánea sobre la propiedad. |
Sys_sqlinfo¶
Describe el procesamiento de consultar SELECT que el conector puede descargar al origen de datos.
Procesamiento Colaborativo de Consultas¶
Al trabajar con fuentes de datos que no admiten SQL-92, puede consultar la vista sys_sqlinfo para determinar las capacidades de consultar de las APIs subyacentes, expresadas en sintaxis SQL.
Descubrimiento de las Capacidades SELECT de la Fuente de Datos¶
A continuación se muestra un conjunto de datos de ejemplo de las capacidades de SQL. Algunos aspectos de la funcionalidad SELECT se devuelven en una lista separada por comas si es compatible; de lo contrario, la columna contiene NO.
Nombre | Descripción | Valores posibles |
---|---|---|
AGGREGATE_FUNCTIONS | Funciones de agregación admitidas. | AVG , COUNT , MAX , MIN , SUM , DISTINCT |
COUNT | Si se admite la función COUNT. | YES , NO |
IDENTIFIER_QUOTE_OPEN_CHAR | El carácter de apertura utilizado para escapar de un identificador. | [ |
IDENTIFIER_QUOTE_CLOSE_CHAR | El carácter de cierre utilizado para escapar de un identificador. | ] |
SUPPORTED_OPERATORS | Una lista de operadores de SQL admitidos. | = , > , < , >= , <= , <> , != , LIKE , NOT LIKE , IN , NOT IN , IS NULL , IS NOT NULL , AND , OR |
GROUP_BY | Si se admite GROUP BY y, de ser así, el grado de compatibilidad. | NO , NO_RELATION , EQUALS_SELECT , SQL_GB_COLLATE |
STRING_FUNCTIONS | Funciones de cadena admitidas. | LENGTH , CHAR , LOCATE , REPLACE , SUBSTRING , RTRIM , LTRIM , RIGHT , LEFT , UCASE , SPACE , SOUNDEX , LCASE , CONCAT , ASCII , REPEAT , OCTET , BIT , POSITION , INSERT , TRIM , UPPER , REGEXP , LOWER , DIFFERENCE , CHARACTER , SUBSTR , STR , REVERSE , PLAN , UUIDTOSTR , TRANSLATE , TRAILING , TO , STUFF , STRTOUUID , STRING , SPLIT , SORTKEY , SIMILAR , REPLICATE , PATINDEX , LPAD , LEN , LEADING , KEY , INSTR , INSERTSTR , HTML , GRAPHICAL , CONVERT , COLLATION , CHARINDEX , BYTE |
NUMERIC_FUNCTIONS | Funciones numéricas compatibles. | ABS , ACOS , ASIN , ATAN , ATAN2 , CEILING , COS , COT , EXP , FLOOR , LOG , MOD , SIGN , SIN , SQRT , TAN , PI , RAND , DEGREES , LOG10 , POWER , RADIANS , ROUND , TRUNCATE |
TIMEDATE_FUNCTIONS | Funciones de fecha/hora admitidas. | NOW , CURDATE , DAYOFMONTH , DAYOFWEEK , DAYOFYEAR , MONTH , QUARTER , WEEK , YEAR , CURTIME , HOUR , MINUTE , SECOND , TIMESTAMPADD , TIMESTAMPDIFF , DAYNAME , MONTHNAME , CURRENT_DATE , CURRENT_TIME , CURRENT_TIMESTAMP , EXTRACT |
REPLICATION_SKIP_TABLES | Indica tablas omitidas durante la replicación. | |
REPLICATION_TIMECHECK_COLUMNS | Una matriz de cadenas que contiene una lista de columnas que se usarán para verificar (en el orden dado) para usar como una columna modificada durante la replicación. | |
IDENTIFIER_PATTERN | Valor de cadena que indica qué cadena es válida para un identificador. | |
SUPPORT_TRANSACTION | Indica si el proveedor admite transacciones como compromiso y reversión. | YES , NO |
DIALECT | Indica el dialecto SQL a usar. | |
KEY_PROPERTIES | Indica las propiedades que identifican la base de datos uniforme. | |
SUPPORTS_MULTIPLE_SCHEMAS | Indica si pueden existir varios esquemas para el proveedor. | YES , NO |
SUPPORTS_MULTIPLE_CATALOGS | Indica si pueden existir varios catálogos para el proveedor. | YES , NO |
DATASYNCVERSION | La versión de sincronización de datos necesaria para acceder a este controlador. | Standard , Starter , Professional , Enterprise |
DATASYNCCATEGORY | La categoría Sincronización de datos de este controlador. | Source , Destination , Cloud Destination |
SUPPORTSENHANCEDSQL | Si se admite la funcionalidad de SQL mejorada más allá de lo que ofrece la API. | TRUE , FALSE |
SUPPORTS_BATCH_OPERATIONS | Si se admiten las operaciones lote. | YES , NO |
SQL_CAP | Todas las funciones de SQL admitidas para este controlador. | SELECT , INSERT , DELETE , UPDATE , TRANSACTIONS , ORDERBY , OAUTH , ASSIGNEDID , LIMIT , LIKE , BULKINSERT , COUNT , BULKDELETE , BULKUPDATE , GROUPBY , HAVING , AGGS , OFFSET , REPLICATE , COUNTDISTINCT , JOINS , DROP , CREATE , DISTINCT , INNERJOINS , SUBQUERIES , ALTER , MULTIPLESCHEMAS , GROUPBYNORELATION , OUTERJOINS , UNIONALL , UNION , UPSERT , GETDELETED , CROSSJOINS , GROUPBYCOLLATE , MULTIPLECATS , FULLOUTERJOIN , MERGE , JSONEXTRACT , BULKUPSERT , SUM , SUBQUERIESFULL , MIN , MAX , JOINSFULL , XMLEXTRACT , AVG , MULTISTATEMENTS , FOREIGNKEYS , CASE , LEFTJOINS , COMMAJOINS , WITH , LITERALS , RENAME , NESTEDTABLES , EXECUTE , BATCH , BASIC , INDEX |
PREFERRED_CACHE_OPTIONS | Un valor de cadena especifica las cacheOptions preferidas. | |
ENABLE_EF_ADVANCED_QUERY | Indica si el controlador admite directamente consultas avanzadas provenientes de Entity Framework. De lo contrario, las consultas se manejarán del lado del cliente. | YES , NO |
PSEUDO_COLUMNS | Una matriz de cadenas que indica las pseudocolumnas disponibles. | |
MERGE_ALWAYS | Si el valor es verdadero, el modo de combinación se ejecuta a la fuerza en la sincronización de datos. | TRUE , FALSE |
REPLICATION_MIN_DATE_QUERY | Una consultar de selección para devolver la fecha y hora de inicio de la réplica. | |
REPLICATION_MIN_FUNCTION | Permite que un proveedor especifique el nombre de la fórmula que se usará para ejecutar un min del lado del servidor. | |
REPLICATION_START_DATE | Permite que un proveedor especifique una fecha de inicio de réplica. | |
REPLICATION_MAX_DATE_QUERY | Una consultar de selección para devolver la fecha y hora de finalización de la réplica. | |
REPLICATION_MAX_FUNCTION | Permite que un proveedor especifique el nombre de la fórmula que se usará para ejecutar un máx. del lado del servidor. | |
IGNORE_INTERVALS_ON_INITIAL_REPLICATE | Una lista de tablas que omitirán dividir la réplica en fragmentos en la réplica inicial. | |
CHECKCACHE_USE_PARENTID | Indica si la instrucción CheckCache debe realizarse en la columna de clave principal. | TRUE , FALSE |
CREATE_SCHEMA_PROCEDURES | Indica procedimientos almacenados* que se puede utilizar para generar archivos de esquema. |
La siguiente consultar recupera los operadores que se pueden usar en la cláusula WHERE:
SELECT * FROM sys_sqlinfo WHERE Name='SUPPORTED_OPERATORS'
Tenga en cuenta que las tablas individuales pueden tener diferentes limitaciones o requisitos en la cláusula WHERE; consulte el Modelo de datos para obtener más información.
Columnas¶
Nombre | Tipo | Descripción |
---|---|---|
NAME | String | Un componente de la sintaxis SQL o una capacidad que se puede procesar en el servidor. |
VALUE | String | Detalles sobre el SQL o la sintaxis de SQL admitidos. |
Sys_identidad¶
Devuelve información sobre los intentos de modificación.
La siguiente consultar recupera los Id. de las filas modificadas en una operación lote:
SELECT * FROM sys_identity
Columnas¶
Nombre | Tipo | Descripción |
---|---|---|
Id | String | El ID generado por la base de datos devuelto de una operación de modificación de datos. |
Batch | String | Un identificador para el lote. 1 para una sola operación. |
Operation | String | El resultado de la operación en el lote: INSERTADO, ACTUALIZADO o ELIMINADO. |
Message | String | ÉXITO o un mensaje de error si falla la actualización en el lote. |
Propiedades de Configuraciones Avanzadas¶
Las propiedades de configuraciones avanzadas son las diversas opciones que se pueden utilizar para establecer una conexión. Esta sección proporciona una lista completa de las opciones que puede configurar. Haga clic en los enlaces para obtener más detalles.
Propiedad | Descripción |
---|---|
AuthScheme | El tipo de autenticación que se utilizará al conectarse a Google Spanner. |
InstanceId | El ID de la instancia de Google Spanner a la que te estás conectando. |
Database | El nombre de la base de datos de Google Spanner a la que conectarse. |
ProjectId | El ID del proyecto donde reside su instancia de Google Spanner. |
UseGrpcEndpoint | Si usar o no el extremo de Grpc. |
Propiedad | Descripción |
---|---|
InitiateOAuth | Establezca esta propiedad para iniciar el proceso para obtener o actualizar el token de acceso de OAuth cuando se conecte. |
OAuthClientId | El ID de cliente asignado cuando registra su aplicación con un servidor de autorización de OAuth. |
OAuthClientSecret | El secreto del cliente asignado cuando registra su aplicación con un servidor de autorización de OAuth. |
OAuthAccessToken | El token de acceso para conectarse mediante OAuth. |
OAuthVerifier | El código verificador devuelto desde la URL de autorización de OAuth. |
OAuthRefreshToken | El token de actualización de OAuth para el token de acceso de OAuth correspondiente. |
OAuthExpiresIn | La vida útil en segundos del AccessToken de OAuth. |
OAuthTokenTimestamp | La marca de tiempo de la época de Unix en milisegundos cuando se creó el token de acceso actual. |
Propiedad | Descripción |
---|---|
OAuthJWTCert | El almacén de certificados JWT. |
OAuthJWTCertType | El tipo de almacén de claves que contiene el certificado JWT. |
OAuthJWTCertPassword | La contraseña para el certificado OAuth JWT. |
OAuthJWTCertSubject | El asunto del certificado OAuth JWT. |
OAuthJWTIssuer | El emisor del token web de Java. |
OAuthJWTSubject | El sujeto de usuario para el que la aplicación solicita acceso delegado. |
Propiedad | Descripción |
---|---|
SSLServerCert | El certificado que se aceptará del servidor al conectarse mediante TLS/SSL. |
Propiedad | Descripción |
---|---|
Location | Una ruta al directorio que contiene los archivos de esquema que definen tablas, vistas y procedimientos almacenados. |
BrowsableSchemas | Esta propiedad restringe los esquemas informados a un subconjunto de los esquemas disponibles. Por ejemplo, BrowsableSchemas=SchemaA, SchemaB, SchemaC. |
Tables | Esta propiedad restringe las tablas notificadas a un subconjunto de las tablas disponibles. Por ejemplo, Tablas=TablaA, TablaB, TablaC. |
Views | Restringe las vistas informadas a un subconjunto de las tablas disponibles. Por ejemplo, Vistas=VistaA, VistaB, VistaC. |
Schema | El esquema que se utilizará de forma predeterminada. |
Propiedad | Descripción |
---|---|
MaxRows | Limita el número de filas devueltas cuando no se usa agregación o agrupación en la consultar. Esto ayuda a evitar problemas de rendimiento en el momento del diseño. |
Other | Estas propiedades ocultas se usan solo en casos de uso específicos. |
PseudoColumns | Esta propiedad indica si incluir o no pseudocolumnas como columnas en la tabla. |
QueryPassthrough | Esta opción pasa la consultar al servidor de Google Spanner tal cual. |
Timeout | El valor en segundos hasta que se lanza el error de tiempo de espera, cancelando la operación. |
Autenticación¶
Esta sección proporciona una lista completa de las propiedades de autenticación que puede configurar.
Propiedad | Descripción |
---|---|
AuthScheme | El tipo de autenticación que se utilizará al conectarse a Google Spanner. |
InstanceId | El ID de la instancia de Google Spanner a la que te estás conectando. |
Database | El nombre de la base de datos de Google Spanner a la que conectarse. |
ProjectId | El ID del proyecto donde reside su instancia de Google Spanner. |
UseGrpcEndpoint | Si usar o no el extremo de Grpc. |
AuthScheme¶
El tipo de autenticación que se utilizará al conectarse a Google Spanner.
Valores Posibles¶
Auto
, OAuth
, OAuthJWT
, GCPInstanceAccount
Tipo de Datos¶
string
Valor por Defecto¶
"Auto"
Observaciones¶
- Automático: permite que el controlador decida automáticamente según las otras propiedades de conexión que haya establecido.
- OAuth: Configure esto para realizar la autenticación OAuth usando una cuenta de usuario estándar.
- OAuthJWT: Configure esto para realizar la autenticación OAuth usando una cuenta de servicio OAuth.
- GCPInstanceAccount: configure esto para obtener el token de acceso de la instancia de Google Cloud Platform.
ID de Instancia¶
El ID de la instancia de Google Spanner a la que te estás conectando.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
La dirección de la instancia de Google Spanner a la que te estás conectando. Puede encontrar este valor en la descripción general de la instancia. Las instancias se enumerarán una vez que seleccione Spanner en el menú de Google Cloud Console.
Base de Datos¶
El nombre de la base de datos de Google Spanner a la que conectarse.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
El nombre de la base de datos de Google Spanner a la que conectarse.
Projecto ID¶
El ID del proyecto donde reside su instancia de Google Spanner.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
El ID del proyecto donde reside su instancia de Google Spanner. Puede encontrar este valor yendo a Google Cloud Console y haciendo clic en el nombre del proyecto en la pantalla superior izquierda. El ProjectId se muestra en la columna de ID del proyecto coincidente.
UseGrpcEndpoint¶
Si usar o no el extremo de Grpc.
Tipo de Datos¶
bool
Valor por Defecto¶
true
Observaciones¶
Esta propiedad determina si se utilizará o no el extremo de Grpc. La mayoría de los proxies no funcionarán con el extremo de Grpc. Si se establece en false, se utilizará el extremo protobuf. Este último tiene problemas con los valores NULL, pero los proxies funcionarán.
OAuth¶
Esta sección proporciona una lista completa de las propiedades de OAuth que puede configurar.
Propiedad | Descripción |
---|---|
InitiateOAuth | Establezca esta propiedad para iniciar el proceso para obtener o actualizar el token de acceso de OAuth cuando se conecte. |
OAuthClientId | El ID de cliente asignado cuando registra su aplicación con un servidor de autorización de OAuth. |
OAuthClientSecret | El secreto del cliente asignado cuando registra su aplicación con un servidor de autorización de OAuth. |
OAuthAccessToken | El token de acceso para conectarse mediante OAuth. |
OAuthVerifier | El código verificador devuelto desde la URL de autorización de OAuth. |
OAuthRefreshToken | El token de actualización de OAuth para el token de acceso de OAuth correspondiente. |
OAuthExpiresIn | La vida útil en segundos del AccessToken de OAuth. |
OAuthTokenTimestamp | La marca de tiempo de la época de Unix en milisegundos cuando se creó el token de acceso actual. |
Iniciar OAuth¶
Establezca esta propiedad para iniciar el proceso para obtener o actualizar el token de acceso de OAuth cuando se conecte.
Valores Posibles¶
OFF
, GETANDREFRESH
, REFRESH
Tipo de Datos¶
string
Valor por Defecto¶
"OFF"
Observaciones¶
Las siguientes opciones están disponibles:
OFF
: Indica que el flujo de OAuth será manejado en su totalidad por el usuario. Se requerirá un OAuthAccessToken para la autenticación.GETANDREFRESH
: indica que el conector manejará todo el flujo de OAuth. Si actualmente no existe ningún token, se obtendrá solicitándolo al usuario a través del navegador. Si existe un token, se actualizará cuando corresponda.REFRESH
: indica que el conector solo manejará la actualización de OAuthAccessToken. El conector nunca le pedirá al usuario que se autentique a través del navegador. El usuario debe manejar la obtención de OAuthAccessToken y OAuthRefreshToken inicialmente.
OAuthClientId¶
El ID de cliente asignado cuando registra su aplicación con un servidor de autorización de OAuth.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
Como parte del registro de una aplicación OAuth, recibirá el OAuthClientId
valor, a veces también llamado clave de consumidor, y un secreto de cliente, el OAuthClientSecret.
OAuthClientSecretOAuthClientSecret¶
El secreto del cliente asignado cuando registra su aplicación con un servidor de autorización de OAuth.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
Como parte del registro de una aplicación OAuth, recibirá el OAuthClientId, también denominada clave de consumidor. También recibirá un secreto de cliente, también llamado secreto de consumidor. Establezca el secreto del cliente en OAuthClientSecret
propiedad.
Token de Acceso de OAuth¶
El token de acceso para conectarse mediante OAuth.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
El OAuthAccessToken
la propiedad se usa para conectarse usando OAuth. El OAuthAccessToken
se recupera del servidor OAuth como parte del proceso de autenticación. Tiene un tiempo de espera dependiente del servidor y se puede reutilizar entre solicitudes.
El token de acceso se utiliza en lugar de su nombre de usuario y contraseña. El token de acceso protege sus credenciales manteniéndolas en el servidor.
OAuthVerifier¶
El código verificador devuelto desde la URL de autorización de OAuth.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
El código verificador devuelto desde la URL de autorización de OAuth. Esto se puede usar en sistemas en los que no se puede iniciar un navegador, como los sistemas sin cabeza.
Autenticación en Máquinas Sin Cabeza¶
Ver para obtener el OAuthVerifier
valor.
Establezca OAuthSettingsLocation junto con OAuthVerifier
. Cuando se conecta, el conector intercambia el OAuthVerifier
para los tokens de autenticación de OAuth y los guarda, encriptados, en el archivo especificado. Establecer Iniciar OAuth para GETANDREFRESH automatizar el intercambio.
Una vez que se haya generado el archivo de configuración de OAuth, puede eliminar OAuthVerifier
desde las propiedades de conexión y conéctese con OAuthSettingsLocation colocar.
Para actualizar automáticamente los valores del token de OAuth, establezca OAuthSettingsLocation y además configure InitiateOAuth refrescar.
OAuthRefreshToken¶
El token de actualización de OAuth para el token de acceso de OAuth correspondiente.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
El OAuthRefreshToken
la propiedad se usa para actualizar el OAuthAccessToken al usar la autenticación OAuth.
OAuthExpiresIn¶
La vida útil en segundos del AccessToken de OAuth.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
Empareje con OAuthTokenTimestamp para determinar cuándo caducará el AccessToken.
OAuthTokenTimestamp¶
La marca de tiempo de la época de Unix en milisegundos cuando se creó el token de acceso actual.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
Emparéjese con OAuthExpiresIn para determinar cuándo expirará AccessToken.
JWT OAuth¶
Esta sección proporciona una lista completa de las propiedades de JWT OAuth que puede configurar.
Propiedad | Descripción |
---|---|
OAuthJWTCert | El almacén de certificados JWT. |
OAuthJWTCertType | El tipo de almacén de claves que contiene el certificado JWT. |
OAuthJWTCertPassword | La contraseña para el certificado OAuth JWT. |
OAuthJWTCertSubject | El asunto del certificado OAuth JWT. |
OAuthJWTIssuer | El emisor del token web de Java. |
OAuthJWTSubject | El sujeto de usuario para el que la aplicación solicita acceso delegado. |
OAuthJWTCert¶
El almacén de certificados JWT.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
El nombre del almacén de certificados para el certificado de cliente.
El OAuthJWTCertType especifica el tipo de almacén de certificados especificado por OAuthJWTCert
. Si la tienda está protegida con contraseña, especifique la contraseña en OAuthJWTCertPassword.
OAuthJWTCert
se usa junto con OAuthJWTCertSubject para especificar certificados de cliente. Si OAuthJWTCert
tiene un valor y OAuthJWTCertSubject, se inicia una búsqueda de un certificado. Consulte OAuthJWTCertSubject campo para más detalles.
Las designaciones de los almacenes de certificados dependen de la plataforma.
Las siguientes son designaciones de los almacenes de certificados de usuario y máquina más comunes en Windows:
Propiedad | Descripción |
---|---|
MY | Un almacén de certificados que contiene certificados personales con sus claves privadas asociadas. |
CA | Certificados de la autoridad certificadora. |
ROOT | Certificados raíz. |
SPC | Certificados de editor de software. |
En Java, el almacén de certificados normalmente es un archivo que contiene certificados y claves privadas opcionales.
Cuando el tipo de almacén de certificados es PFXFile, esta propiedad debe establecerse en el nombre del archivo. Cuando el tipo es PFXBlob, la propiedad debe establecerse en el contenido binario de un archivo PFX (es decir, almacén de certificados PKCS12).
OAuthJWTCertType¶
El tipo de almacén de claves que contiene el certificado JWT.
Valores Posibles¶
USER
, MACHINE
, PFXFILE
, PFXBLOB
, JKSFILE
, JKSBLOB
, PEMKEY_FILE
, PEMKEY_BLOB
, PUBLIC_KEY_FILE
, PUBLIC_KEY_BLOB
, SSHPUBLIC_KEY_FILE
, SSHPUBLIC_KEY_BLOB
, P7BFILE
, PPKFILE
, XMLFILE
, XMLBLOB
, GOOGLEJSON
, GOOGLEJSONBLOB
Tipo de Datos¶
string
Valor por Defecto¶
"USER"
Observaciones¶
Esta propiedad puede tomar uno de los siguientes valores:
Propiedad | Descripción |
---|---|
USER | Para Windows, esto especifica que el almacén de certificados es un almacén de certificados propiedad del usuario actual. Nota: Este tipo de tienda no está disponible en Java. |
MACHINE | Para Windows, esto especifica que el almacén de certificados es un almacén de máquinas. Nota: este tipo de tienda no está disponible en Java. |
PFXFILE | El almacén de certificados es el nombre de un archivo PFX (PKCS12) que contiene certificados. |
PFXBLOB | El almacén de certificados es una cadena (codificada en base 64) que representa un almacén de certificados en formato PFX (PKCS12). |
JKSFILE | El almacén de certificados es el nombre de un archivo de almacén de claves Java (JKS) que contiene certificados. Nota: este tipo de tienda solo está disponible en Java. |
JKSBLOB | El almacén de certificados es una cadena (codificada en base 64) que representa un almacén de certificados en formato de almacén de claves Java (JKS). Nota: este tipo de tienda solo está disponible en Java. |
PEMKEY_FILE | El almacén de certificados es el nombre de un archivo con codificación PEM que contiene una clave privada y un certificado opcional. |
PEMKEY_BLOB | El almacén de certificados es una cadena (codificada en base64) que contiene una clave privada y un certificado opcional. |
PUBLIC_KEY_FILE | El almacén de certificados es el nombre de un archivo que contiene un certificado de clave pública con codificación PEM o DER. |
PUBLIC_KEY_BLOB | El almacén de certificados es una cadena (codificada en base 64) que contiene un certificado de clave pública con codificación PEM o DER. |
SSHPUBLIC_KEY_FILE | El almacén de certificados es el nombre de un archivo que contiene una clave pública de estilo SSH. |
SSHPUBLIC_KEY_BLOB | El almacén de certificados es una cadena (codificada en base 64) que contiene una clave pública de estilo SSH. |
P7BFILE | El almacén de certificados es el nombre de un archivo PKCS7 que contiene certificados. |
PPKFILE | El almacén de certificados es el nombre de un archivo que contiene una PPK (clave privada PuTTY). |
XMLFILE | El almacén de certificados es el nombre de un archivo que contiene un certificado en formato XML. |
XMLBLOB | El almacén de certificados es una cadena que contiene un certificado en formato XML. |
GOOGLEJSON | El almacén de certificados es el nombre de un archivo JSON que contiene la información de la cuenta de servicio. Solo válido cuando se conecta a un servicio de Google. |
GOOGLEJSONBLOB | El almacén de certificados es una cadena que contiene la cuenta de servicio JSON. Solo válido cuando se conecta a un servicio de Google. |
OAuthJWTCertPassword¶
La contraseña para el certificado OAuth JWT.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
Si el almacén de certificados es de un tipo que requiere una contraseña, esta propiedad se usa para especificar esa contraseña para abrir el almacén de certificados.
Esto no es necesario cuando se usa GOOGLEJSON OAuthJWTCertType. Las claves JSON de Google no están cifradas.
OAuthJWTCertSubject¶
El asunto del certificado OAuth JWT.
Tipo de Datos¶
string
Valor por Defecto¶
"\*"
Observaciones¶
Al cargar un certificado, el asunto se utiliza para ubicar el certificado en el almacén.
Si no se encuentra una coincidencia exacta, se busca en la tienda temas que contengan el valor de la propiedad.
Si aún no se encuentra una coincidencia, la propiedad se establece en una cadena vacía y no se selecciona ningún certificado.
El valor especial "*" selecciona el primer certificado en el almacén de certificados.
El asunto del certificado es una lista separada por comas de valores y campos de nombre distinguido. Por ejemplo, "CN=www.server.com, OU=test, C=US, E=support@jitterbit.com". Los campos comunes y sus significados se muestran a continuación.
Campo | Significado |
---|---|
CN | Nombre común. Este es comúnmente un nombre de alojar como www.server.com. |
O | Organización |
OU | Unidad organizativa |
L | localidad |
S | Estado |
C | País |
E | Dirección de Correo |
Si un valor de campo contiene una coma, debe estar entre comillas.
OAuthJWTIssuer¶
El emisor del token web de Java.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
El emisor del token web de Java. Suele ser el ID del cliente o la dirección de Correo de la aplicación OAuth.
Esto no es necesario cuando se usa GOOGLEJSON OAuthJWTCertType. Las claves JSON de Google contienen una copia de la cuenta del emisor.
OAuthJWTAsunto¶
El sujeto de usuario para el que la aplicación solicita acceso delegado.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
El sujeto de usuario para el que la aplicación solicita acceso delegado. Por lo general, el nombre de la cuenta de usuario o la dirección de correo.
SSL¶
Esta sección proporciona una lista completa de las propiedades SSL que puede configurar.
Propiedad | Descripción |
---|---|
SSLServerCert | El certificado que se aceptará del servidor al conectarse mediante TLS/SSL. |
SSLServerCert¶
El certificado que se aceptará del servidor al conectarse mediante TLS/SSL.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
Si usa una conexión TLS/SSL, esta propiedad se puede usar para especificar el certificado TLS/SSL que se aceptará del servidor. Se rechaza cualquier otro certificado que no sea de confianza para la máquina.
Esta propiedad puede tomar las siguientes formas:
Descripción | Ejemplo |
---|---|
Un certificado PEM completo (ejemplo abreviado por brevedad) | -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE----- |
Una ruta a un archivo local que contiene el certificado | C:\cert.cer |
La clave pública (ejemplo abreviado por brevedad) | -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY----- |
La huella digital MD5 (los valores hexadecimales también pueden estar separados por espacios o dos puntos) | ecadbdda5a1529c58a1e9e09828d70e4 |
La huella digital SHA1 (los valores hexadecimales también pueden estar separados por espacios o dos puntos) | 34a929226ae0819f2ec14b4a3d904f801cbb150d |
Si no se especifica, se acepta cualquier certificado en el que confíe la máquina.
La máquina valida los certificados como confiables según el almacén de confianza del sistema. El almacén de confianza utilizado es el valor 'javax.net.ssl.trustStore' especificado para el sistema. Si no se especifica ningún valor para esta propiedad, se utiliza el almacén de confianza predeterminado de Java (por ejemplo, JAVA_HOME\lib\security\cacerts).
Use '*' para indicar que acepta todos los certificados. Tenga en cuenta que esto no se recomienda debido a problemas de seguridad.
Esquema¶
Esta sección proporciona una lista completa de propiedades de esquema que puede configurar.
Propiedad | Descripción |
---|---|
Location | Una ruta al directorio que contiene los archivos de esquema que definen tablas, vistas y procedimientos almacenados. |
BrowsableSchemas | Esta propiedad restringe los esquemas informados a un subconjunto de los esquemas disponibles. Por ejemplo, BrowsableSchemas=SchemaA, SchemaB, SchemaC. |
Tables | Esta propiedad restringe las tablas notificadas a un subconjunto de las tablas disponibles. Por ejemplo, Tablas=TablaA, TablaB, TablaC. |
Views | Restringe las vistas informadas a un subconjunto de las tablas disponibles. Por ejemplo, Vistas=VistaA, VistaB, VistaC. |
Schema | El esquema que se utilizará de forma predeterminada. |
Ubicación¶
Una ruta al directorio que contiene los archivos de esquema que definen tablas, vistas y procedimientos almacenados.
Tipo de Datos¶
string
Valor por Defecto¶
"%APPDATA%\\\GoogleSpanner Data Provider\\Schema"
Observaciones¶
La ruta a un directorio que contiene los archivos de esquema para el conector (archivos .rsd para tablas y vistas, archivos .rsb para procedimientos almacenados). La ubicación de la carpeta puede ser una ruta relativa desde la ubicación del ejecutable. El Location
La propiedad solo es necesaria si desea personalizar las definiciones (por ejemplo, cambiar el nombre de una columna, ignorar una columna, etc.) o ampliar el modelo de datos con nuevas tablas, vistas o procedimientos almacenados.
Si no se especifica, la ubicación predeterminada es "%APPDATA%\\GoogleSpanner Data Provider\Schema" con %APPDATA%
estando configurado en el directorio de configuración del usuario:
Plataforma | %APPDATA% |
---|---|
Windows | El valor de la variable de ambiente APPDATA |
Mac | ~/Biblioteca/Soporte de aplicaciones |
Linux | ~/.config |
Esquemas Navegables¶
Esta propiedad restringe los esquemas informados a un subconjunto de los esquemas disponibles. Por ejemplo, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
Enumerar los esquemas de las bases de datos puede resultar costoso. Proporcionar una lista de esquemas en la cadena de conexión mejora el rendimiento.
Mesas¶
Esta propiedad restringe las tablas notificadas a un subconjunto de las tablas disponibles. Por ejemplo, Tablas=TablaA,TablaB,TablaC.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
Listar las tablas de algunas bases de datos puede resultar costoso. Proporcionar una lista de tablas en la cadena de conexión mejora el rendimiento del conector.
Esta propiedad también se puede utilizar como una alternativa a la lista automática de vistas si ya sabe con cuáles quiere trabajar y, de lo contrario, habría demasiadas para trabajar.
Especifique las tablas que desea en una lista separada por comas. Cada tabla debe ser un identificador SQL válido con cualquier carácter especial escapado usando corchetes, comillas dobles o acentos graves. Por ejemplo, Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.
Tenga en cuenta que al conectarse a una fuente de datos con varios esquemas o catálogos, deberá proporcionar el nombre completo de la tabla en esta propiedad, como en el último ejemplo aquí, para evitar la ambigüedad entre las tablas que existen en varios catálogos o esquemas.
Puntos de Vista¶
Restringe las vistas informadas a un subconjunto de las tablas disponibles. Por ejemplo, Vistas=VistaA,VistaB,VistaC.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
Listar las vistas de algunas bases de datos puede ser costoso. Proporcionar una lista de vistas en la cadena de conexión mejora el rendimiento del conector.
Esta propiedad también se puede utilizar como una alternativa a la lista automática de vistas si ya sabe con cuáles quiere trabajar y, de lo contrario, habría demasiadas para trabajar.
Especifique las vistas que desee en una lista separada por comas. Cada vista debe ser un identificador SQL válido con cualquier carácter especial escapado usando corchetes, comillas dobles o acentos graves. Por ejemplo, Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.
Tenga en cuenta que al conectarse a una fuente de datos con varios esquemas o catálogos, deberá proporcionar el nombre completo de la tabla en esta propiedad, como en el último ejemplo aquí, para evitar la ambigüedad entre las tablas que existen en varios catálogos o esquemas.
Esquema¶
El esquema que se utilizará de forma predeterminada.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
El esquema que se utilizará de forma predeterminada.
Misceláneas¶
Esta sección proporciona una lista completa de propiedades misceláneas que puede configurar.
Propiedad | Descripción |
---|---|
MaxRows | Limita el número de filas devueltas cuando no se usa agregación o agrupación en la consultar. Esto ayuda a evitar problemas de rendimiento en el momento del diseño. |
Other | Estas propiedades ocultas se usan solo en casos de uso específicos. |
PseudoColumns | Esta propiedad indica si incluir o no pseudocolumnas como columnas en la tabla. |
QueryPassthrough | Esta opción pasa la consultar al servidor de Google Spanner tal cual. |
Timeout | El valor en segundos hasta que se lanza el error de tiempo de espera, cancelando la operación. |
Filas Máximas¶
Limita el número de filas devueltas cuando no se usa agregación o agrupación en la consultar. Esto ayuda a evitar problemas de rendimiento en el momento del diseño.
Tipo de Datos¶
int
Valor por Defecto¶
-1
Observaciones¶
Limita el número de filas devueltas cuando no se usa agregación o agrupación en la consultar. Esto ayuda a evitar problemas de rendimiento en el momento del diseño.
Otro¶
Estas propiedades ocultas se usan solo en casos de uso específicos.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
Las propiedades enumeradas a continuación están disponibles para casos de uso específicos. Los casos de uso y la funcionalidad normales del controlador no deberían requerir estas propiedades.
Especifique varias propiedades en una lista separada por punto y coma.
Integración y Formateo¶
Propiedad | Descripción |
---|---|
DefaultColumnSize | Establece la longitud predeterminada de los campos de cadena cuando la fuente de datos no proporciona la longitud de columna en los metadatos. El valor predeterminado es 2000. |
ConvertDateTimeToGMT | Determina si se convierten los valores de fecha y hora a GMT, en lugar de la hora local de la máquina. |
RecordToFile=filename | Registra la transferencia de datos del socket subyacente al archivo especificado. |
Pseudocolumnas¶
Esta propiedad indica si incluir o no pseudocolumnas como columnas en la tabla.
Tipo de Datos¶
string
Valor por Defecto¶
""
Observaciones¶
Esta configuración es particularmente útil en Entity Framework, que no le permite establecer un valor para una pseudocolumna a menos que sea una columna de tabla. El valor de esta configuración de conexión tiene el formato "Tabla1=Columna1, Tabla1=Columna2, Tabla2=Columna3". Puede usar el carácter "*" para incluir todas las tablas y todas las columnas; por ejemplo, "*=*".
Transferencia de Consulta¶
Esta opción pasa la consultar al servidor de Google Spanner tal cual.
Tipo de Datos¶
bool
Valor por Defecto¶
false
Observaciones¶
Cuando se configura, las consultas se envían directamente a Google Spanner.
Se Acabó el Tiempo¶
El valor en segundos hasta que se lanza el error de tiempo de espera, cancelando la operación.
Tipo de Datos¶
int
Valor por Defecto¶
60
Observaciones¶
Si Timeout
= 0, las operaciones no expiran. Las operaciones se ejecutan hasta que se completan correctamente o hasta que encuentran una condición de error.
Si Timeout
caduca y la operación aún no se ha completado, el conector genera una excepción.