AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Administrar bases de datos / Funciones SQL
  • Búsqueda tabla entre los diferentes tipos de bases de datos, sus fuentes y sus bases de datos
  • Fallo o éxito de la conexión
  • Conexión a un análisis HFSQL
  • ODBC y OLE DB: Conexiones de anidamiento
  • Conexión a una base de datos mediante ODBC
  • Conectores nativos MySQL, MariaDB y PostgreSQL
  • Conectores nativos MySQL, MariaDB y PHP
  • Conexión a una base de datos ISAM a través de ACCESS
  • Uso de una conexión con autenticación NT
  • Conector Nativo Oracle: gestión de la autenticación externa
  • Consulta SQL (HExecuteSQLQuery o consultas creadas en el editor de consultas)
  • Conexión a una base de datos HFSQL en Java
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Conecta la aplicación actual a una base de datos que debe ser interrogada mediante SQL.
PHP Las funciones SQL se utilizan para manipular las bases de datos MySQL y MariaDB y las bases de datos accesibles por ODBC (HFSQL por ejemplo).
Linux La función SQLConnect permite conectarse a una base de datos HFSQL Classic, HFSQL Client/Server o una base de datos accesible a través de ODBC.
Java Para obtener más información, consulte Java y base de datos.
WEBDEV - Código Navegador Las funciones SQL se utilizan para manipular las bases de datos locales (como las bases de datos Web SQL).. Sólo está disponible el modo de navegación SQLFetch/SQLGetCol.. Para obtener más información, consulte Acceso a una base de datos en modo local (SQLite).
WINDEVWEBDEV - Código ServidorReportes y ConsultasCódigo de Usuario (UMC)AjaxODBC
// Example of connection via ODBC
ConnectionNum is int
SourceName is string
// Connection to a specific data source via ODBC MS ACCESS
// (note: some drivers open a file picker
// if no file is associated with this source)
SourceName = "MS Access 97 Database"
ConnectionNum = SQLConnect(SourceName, "", "", "", "ODBC")
IF ConnectionNum <> 0 THEN
// The connection was successful
...
ELSE
// The connection failed: display an error message
SQLInfo()
Error("The connection to the data source " + SourceName + " failed." + CR + ...
"Error code: " + SQL.Error + CR + SQL.MesError)
END
// In any case (connection OK or not)
SQLDisconnect()
WINDEVWEBDEV - Código ServidorCódigo de Usuario (UMC)PHPAjaxConectores Nativos
// Connection to a MySQL database:
// apollon computer, login "superv", test customer database
ConnectionNum is int
ConnectionNum = SQLConnect("apollon", "superv", "", "test")
WINDEVJavaCódigo de Usuario (UMC)
// Connection to a MySQL database using a JDBC driver:
SQLConnect("jdbc:mysql://" + myServer + "/" + mydatabase, "myself", "mypwd", "", ...
"JDBC", "com.mysql.jdbc.Driver")
 
// Connection using an ODBC database:
SQLConnect("jdbc:odbc:MySource", "myself", "mypwd", "", "JDBC", "sun.jdbc.odbc.JdbcOdbcDriver")
 
// Connection using an HFSQL database:
SQLConnect("MyAnalysis.WDD", "", "mypwd", "", "HFSQL")
 
// Connection using HFSQL with a Client/Server database:
SQLConnect("ServerName:port", "User", "Password", "DatabaseName", "HFSQLCS")
Sintaxis
<Result> = SQLConnect(<Source> , <User> , <Password> [, <Database name> [, <Database type> [, <OLE DB provider> [, <Optional information>]]]])
<Result>: Integro
  • Identificador de la conexión: este identificador es utilizado por SQLChangeConnection.
  • 0 si se produce un error. Para conocer los detalles del error, utilice SQLInfo.
<Source>: Cadena de caracteres
Nombre de la fuente de datos (también llamado Nombre de la fuente de datos). Si la fuente de datos contiene varias "Bases de datos", se debe especificar el nombre de la "Base de datos" utilizada (<Nombre de la base de datos> parámetro).. Para obtener más información, consulte observaciones.
PHPConectores Nativos MySQL y MariaDB: Este parámetro corresponde al nombre o IP Address de el equipo que contiene la base de datos. Por ejemplo, "Apollon".
Java URL para conectarse a la base de datos. Esta URL es específica para cada controlador. Por ejemplo:
  • Conexión a una base de datos MySQL utilizando un controlador JDBC: "jdbc:mysql://" + myServer + "/" + mydatabase
  • Conexión mediante una base de datos ODBC: "jdbc:odbc:MySource"
  • Conexión mediante HFSQL: "MyAnalysis.WDD"
Linux La fuente puede ser una base de datos HFSQL Classic o HFSQL Client/Server.
WEBDEV - Código Navegador Este parámetro corresponde a una cadena vacía ("").
<User>: Cadena de caracteres
Nombre de usuario. Este nombre es opcional para algunas fuentes de datos: en este caso, use una cadena vacía ("") para este parámetro.
WEBDEV - Código Navegador Este parámetro no se tiene en cuenta.
<Password>: Cadena de caracteres
Contraseña correspondiente al usuario especificado. Esta contraseña es opcional para algunas fuentes de datos: en este caso, use una cadena vacía ("") para este parámetro.
WEBDEV - Código Navegador Este parámetro no se tiene en cuenta.
<Database name>: Cadena de caracteres opcional
Nombre de la base de datos a utilizar. Para más detalles, consulte la página web de Observaciones.
  • Si se especifica este parámetro, se muestra un cuadro de diálogo específico para el controlador durante la conexión.. Es posible que este cuadro de diálogo no se muestre según el controlador utilizado.
  • Si no se especifica este parámetro, no se visualiza ninguna ventana de diálogo.
PHPConectores Nativos MySQL y MariaDB: Con Native MariaDB Connector, el nombre de la base de datos es obligatorio.
Java Este parámetro no se tiene en cuenta. La base de datos debe especificarse en la URL de conexión. Esta URL es específica de cada controlador JDBC.
<Database type>: Cadena de caracteres opcional
Tipo de base de datos a la que se ha accedido. Los tipos de bases de datos instalados en el ordenador actual son devueltos por Fuente de SQLList. Para obtener más información, consulte observaciones.
Java Sólo las bases de datos HFSQL y JDBC son accesibles en esta versión.. Las bases de datos a las que se accede a través del controlador JDBC están reservadas a una aplicación de Java.
WEBDEV - Código Navegador Sólo se puede acceder a las bases de datos disponibles a través de un navegador.
<OLE DB provider>: Cadena de caracteres opcional o constante
Nombre del proveedor OLE DB utilizado. Los más comunes son los siguientes:
"SQLOLEDB"SQLServer
"MSDASQL"ODBC
"Microsoft.Jet.OLEDB.3.51"Acceso
"Microsoft.Jet.OLEDB.4.0"Acceso
"MSDAORA"Oracle (Microsoft)
"Oraoledb. Oracle"Oracle
o una de las siguientes constantes:
hODBCProveedor OLE DB para ODBC. Permite acceder a una fuente ODBC declarada en las fuentes de datos ODBC de Windows.
hOledbAccess97Proveedor OLE DB para Access 97.
hOledbAccess2000Proveedor OLE DB para Access 2000.
hOledbAccess2007Proveedor OLE DB para Access 2007.
hOledbAccess2010Proveedor OLE DB para Access 2010.
hOledbDBase5Proveedor OLE DB para dBase 5.
hOledbExcel97Proveedor OLE DB para Excel 97.
hOledbExcel2000Proveedor OLE DB para Excel 2000.
hOledbExcel2007Proveedor OLE DB para Excel 2007.
hOledbLotus4Proveedor OLE DB para Lotus 4.
hOledbOracleProveedor OLE DB para Oracle.
hOledbSQLServerProveedor OLE DB para SQL Server.

Atención: Para utilizar una conexión OLE DB, es necesario:
  • instalar MDAC versión 2.6 o posterior (instalación realizada por WINDEV o WEBDEV al instalar la aplicación)
  • instalar el proveedor OLE DB que corresponde a la base de datos utilizada.
Java Nombre completo del controlador JDBC a utilizar.
PHP Este parámetro no se tiene en cuenta.
WEBDEV - Código Navegador Este parámetro no se tiene en cuenta.
<Optional information>: Cadena de caracteres opcional (no se debe usar con HFSQL o ODBC directo)
Se utiliza para especificar la información opcional. Por ejemplo, puede especificar "Trusted_Connection=YES" para utilizar una conexión con autenticación mediante el inicio de sesión NT.. Si es necesario especificar varias informaciones opcionales, éstas deben agruparse en una sola cadena de caracteres y deben estar separadas por el carácter ";"..
OLE DBConectores Nativos Las palabras clave reconocidas por OLE DB y Conectores Nativos se muestran en Información opcional de conexión.
Java Este parámetro no se tiene en cuenta. La información opcional debe especificarse en la URL de conexión. Esta URL es específica de cada controlador JDBC.
PHP Este parámetro no se tiene en cuenta.
WEBDEV - Código Navegador Este parámetro no se tiene en cuenta.
Observaciones

Búsqueda tabla entre los diferentes tipos de bases de datos, sus fuentes y sus bases de datos

Tipo de base de datosFuenteNombre de la base de datos
ACCESONombre del archivo de Access"" (cadena vacía)
AS400Conector Nativo AS/400 (módulo opcional)
DB2Conector Nativo DB2 (módulo opcional)
Fuente definida en Administrador ODBC.
"" (cadena vacía) o Base de datos
HYPER FICHERO
HFSQL
Nombre de la base de datos"" (cadena vacía)
HFSQLCSNombre o Address del servidorNombre de la base de datos
INFORMIXConector Nativo Informix (módulo opcional)
JDBCURL para conectarse a la base de datos. Esta URL es específica para cada controlador.La base de datos debe especificarse en la URL de conexión. Esta URL es específica de cada controlador JDBC.
HIVEURL para conectarse al servidor de Hive.Base de datos
MariaDBConector nativo MariaDB (módulo opcional)
Nombre de la base de datos
Base de datos
MySQLConector Nativo MySQL (módulo opcional)
Nombre de la base de datos
Base de datos
POSTGRESQLConector PostgreSQL nativo (módulo opcional)
Nombre de la base de datos
Base de datos
ODBCFuente definida en el Administrador ODBC"" (cadena vacía) o Base de datos
OLEDBNombre de la fuente"" (cadena vacía)
ORACLEConector Nativo Oracle (módulo opcional)
Nombre del alias definido en la configuración de SQL NET Easy y en WDORAINS.
"" (cadena vacía)
PROGRESOConector Nativo Progress (módulo opcional)
Fuente definida en Administrador ODBC.
"" (cadena vacía) o Base de datos
AZURE SQLConector Native SQL Azure (módulo opcional suministrado con Conector Nativo SQL Server)
Nombre del servidor.
Si el nombre del servidor es tal como: NombreServidor.base de datos.windows.net, el login debe tener el siguiente formato: login@NombreServidor.
Base de datos
SQL SERVERConector SQL SERVER nativo (módulo opcional)
Nombre del servidor.
"" (cadena vacía)
SYBASEConector Nativo Sybase (módulo opcional)
Nombre del servidor o su alias.
"" (cadena vacía)
xBaseConector xBase nativo (suministrado con el producto)
WEBDEV - Código Navegador "Base de datos Web SQL"
Database disponible a través de un navegador
(disponible sólo en Chrome y Safari)
"" (cadena vacía)
"" (cadena vacía)

PHP Se soportan los siguientes tipos de bases de datos: MySQL, MariaDB, ODBC, HYPER FILE, ORACLE o POSTGRESQL. Recomendamos que utilice el hAccesoxxx constante.
Java Se soportan los siguientes tipos de bases de datos: JDBC, ARCHIVO HIPERACTIVO.
Linux Se soportan los siguientes tipos de bases de datos: HYPER FILE.

Fallo o éxito de la conexión

Si la conexión tiene éxito, el identificador de la conexión puede utilizarse para cambiar la conexión (SQLChangeConnection).
Si la conexión falla, las variables SQL.Error y SQL.MesError no se inicializan.. Para obtener más detalles sobre el fallo de conexión, utilice SQLInfo.
En cualquier caso (fallo o éxito), la conexión debe cerrarse (SQLDisconnect).
PHP La desconexión no es necesaria si la conexión falla.
WINDEVWEBDEV - Código ServidorReportes y ConsultasJavaCódigo de Usuario (UMC)AjaxHFSQL ClassicHFSQL Client/ServerHyper File 5.5

Conexión a un análisis HFSQL

Para conectarse a un análisis HFSQL, utilice la siguiente sintaxis:
SQLConnect("<Drive>:<Full path of analysis WDD>", "", "<Analysis password>")
Por ejemplo:
SQLConnect("D:\WINDEV\WDSTOCK\WDSTOCK.WDD", "", "")
Observaciones:
  • Después de la conexión a un análisis HFSQL, SQL.Connection devuelve -1.
  • Para el análisis HFSQL, se puede establecer una sola conexión a la vez en el mismo proyecto..
    Si ya se abrió el análisis con la función HOpenAnalysis o si el proyecto está asociado al análisis, SQLConnect no vuelve a abrir el análisis.
    Por el contrario, si aún no se ha abierto el análisis, este se abre automáticamente con la función SQLConnect.
  • Si los archivos de datos HFSQL no se encuentran en el directorio actual del programa o en el directorio descrito en el análisis, el directorio debe ser modificado por HChangeDir.
  • Si se ha set una contraseña para el análisis, debe especificarse en el tercer parámetro pasado a SQLConnect.
WINDEVWEBDEV - Código ServidorReportes y ConsultasCódigo de Usuario (UMC)AjaxOLE DBODBC

ODBC y OLE DB: Conexiones de anidamiento

Para ODBC y OLE DB, puede anidar múltiples llamadas a SQLConnect (precaución: esto no está permitido con las bases de datos HFSQL).
La última conexión abierta es la conexión actual. SQLChangeConnection se utiliza para modificar la conexión actual.
SQLDisconnect desconecta la conexión actual.
WINDEVWEBDEV - Código ServidorReportes y ConsultasCódigo de Usuario (UMC)AjaxODBC

Conexión a una base de datos mediante ODBC

Para conectarse a una base de datos mediante ODBC, siga estos pasos:
  1. Configure la fuente de datos ODBC en el administrador de ODBC (en el ordenador de desarrollo o en el de implementación).
  2. Utilice SQLConnect con el parámetro "ODBC".
Observación: Tiene la posibilidad de utilizar un proveedor de OLE DB en ODBC. MDAC debe ser instalado (en la computadora de desarrollo y en la computadora implementación). Se debe utilizar la siguiente sintaxis:
<Result> = SQLConnect(<Source>, <User>, <Password>, ...
<Database name>, "OLE DB", hODBC)
Observación: El SQL.ODBCHandle Variable se utiliza para averiguar el manipular de la conexión ODBC para las otras funciones SQL en ODBC. Se asigna un valor a esta Variable la última vez que se llama a SQLConnect. SQL.ODBCHandle es set a -1 para las otras conexiones.
WINDEVWEBDEV - Código ServidorCódigo de Usuario (UMC)PHPAjaxConectores Nativos

Conectores nativos MySQL, MariaDB y PostgreSQL

Para abrir una conexión a una base de datos MySQL, MariaDB o PostgreSQL a través de un Conector Nativo (también llamado Native Access), es necesario pasar los siguientes elementos como parámetros a SQLConnect:
  • el tipo de base de datos utilizada, MySQL, MariaDB o POSTGRESQL.
  • el nombre de la base de datos: corresponde al nombre dado por el administrador de la base de datos MySQL/MariaDB/PostgreSQL.
Observación: El nombre de la fuente de datos MySQL o PostgreSQL puede sustituirse por el nombre o la IP Address de el equipo donde está disponible la base de datos. En cualquier caso, debe especificarse el nombre de la "Base de datos.
// Connection to a local MySQL database
ConnectionNum = SQLConnect("MySQLDatabase", "", "", "", "MySQL")
// or ConnectionNum = SQLConnect("MySQLDatabase", "User", "Password", "MyDatabase", "MySQL")

// Connection to a remote MySQL database
ConnectionNum = SQLConnect("192.168.1.51", "User", "Password", "test", "MySQL")
WEBDEV - Código ServidorCódigo de Usuario (UMC)PHPAjaxConectores Nativos

Conectores nativos MySQL, MariaDB y PHP

Para abrir una conexión en PHP:
  • a una base de datos MySQL, se recomienda pasar la constante hNativeAccessMySQL como parámetro a SQLConnect.
  • a una base de datos MariaDB, se recomienda pasar la constante hNativeAccessMariaDB como parámetro a SQLConnect.
El Conector Nativo (MySQL o MariaDB) es necesario para desarrollar el sitio WEBDEV, pero no es necesario para que el sitio funcione.: no es necesario instalar Conector Nativo en la empresa de hosting. De hecho, en tiempo de ejecución, es el cliente MySQL/MariaDB del motor PHP actual el que se utiliza.
WINDEVWEBDEV - Código ServidorReportes y ConsultasCódigo de Usuario (UMC)AjaxConectores Nativos

Conexión a una base de datos ISAM a través de ACCESS

La siguiente sintaxis se utiliza para conectarse a una base de datos ISAM:
SQLConnect(<Database path>, <User>, <Password>,
<Database type>, "ACCESS")
<Ruta de la base de datos>Ruta o nombre completo (según el caso) de la base de datos a la que se ha accedido.
<Usuario>Nombre de usuario. Es opcional para algunas bases de datos.
<Contraseña>Contraseña para este usuario. Es opcional para algunas bases de datos.
<Tipo de base de datosTipo de base de datos en la que se debe establecer la conexión (se debe haber instalado el controlador ISAM correspondiente).
Tipo de base de datos<Tipo de base de datos<Ruta de la base de datos>
dBASE III"dBASE III"Drive:\directorio
dBASE IV"dBASE IV"Drive:\directorio
dBASE 5"dBASE 5.0"Drive:\directorio
Paradox 3.x"Paradox 3.x"Drive:\directorio
Paradoja 4.x"Paradox 4.x"Drive:\directorio
Paradoja 5.x"Paradox 5.x"Drive:\directorio
FoxPro 2.0"FoxPro 2.0"Drive:\directorio
FoxPro 2.5"FoxPro 2.5"Drive:\directorio
FoxPro 2.6"FoxPro 2.6"Drive:\directorio
Excel 3.0"Excel 3.0"Drive:\directorio\archivo.xls
Excel 4.0"Excel 4.0"Drive:\directorio\archivo.xls
Excel 5.0 or Excel 95"Excel 5.0"Drive:\directorio\archivo.xls
Excel 97"Excel 8.0"Drive:\directorio\archivo.xls
HTML Import"Importación de HTML"Drive:\directorio\nombre de fichero
Exportación de HTML"HTML Export"Drive:\directorio
texto"Text"Drive:\directorio

Observaciones:
  • Para que se establezca la conexión solicitada, debe haberse instalado el controlador ISAM correspondiente. El programa instalación de MS OFFICE 97 propone varios conductores ISAM.
  • Las bases de datos ACCESS e ISAM son accesibles sólo en modo de 32 bits.
  • La palabra clave WDMemoBinary WLanguage, utilizada para añadir o modificar un memo binario a través de una consulta SQL, no está soportada por el motor HFSQL y el controlador ACCESS. Para una base de datos HFSQL, utilice las funciones específicas de memo.
    También se puede utilizar la función:
    • la función SQL "UNHEX" con contenido hexadecimal
    • la función WL.Decode con la constante encodeBASE64NoCR y una cadena codificada en Base64.
WINDEVWEBDEV - Código ServidorReportes y ConsultasCódigo de Usuario (UMC)AjaxOLE DB

Uso de una conexión con autenticación NT

La siguiente sintaxis le permite establecer una conexión con la autenticación NT:
SQLConnect(<MyDatabase>, Null, Null, Null, "OLEDB",
<OLE DB provider>, "Trusted_Connection=YES")
WINDEVWEBDEV - Código ServidorConectores Nativos

Conector Nativo Oracle: gestión de la autenticación externa

Para conectarse mediante una autenticación externa, se deben utilizar los siguientes parámetros de conexión:
  • <Usuario> = / (barra oblicua)
  • <Contraseña> = "" (cadena vacía)
Observación: La autenticación externa consiste en utilizar el nombre de usuario de Windows y su contraseña para conectarse a la base de datos. La autenticación externa requiere una configuración del servidor. Consulte la documentación de Oracle para saber cómo autorizar las autenticaciones externas en el servidor.
WINDEVWEBDEV - Código ServidorCódigo de Usuario (UMC)AjaxHFSQL ClassicHFSQL Client/ServerHyper File 5.5OLE DBODBCConectores Nativos

Consulta SQL (HExecuteSQLQuery o consultas creadas en el editor de consultas)

Cuando se utilizan las instrucciones SQL DELETE, INSERT o UPDATE, no se realiza ninguna comprobación de integridad ni de duplicados en una base de datos HFSQL.. Esta funcionalidad no está disponible en esta versión.
Solución: Utilice las funciones HFSQL (HDelete, HAdd o HModify) en sus archivos de datos. La comprobación de integridad y la comprobación de duplicados se realizarán automáticamente.
Java

Conexión a una base de datos HFSQL en Java

Para conectarse a una base de datos HFSQL en Java, debe utilizar la siguiente sintaxis:
<Result> = SQLConnect(<MyAnalysis.WDD>, <User>, <Password>, "", "HYPERFILE")
Los siguientes archivos y el archivo Java generado deben encontrarse en el mismo directorio: <MyAnalysis.WDD>, WD29 0jav.dll, wd29 0hf.dll y wd29 0sql.dll.
Para obtener más información, consulte Java y base de datos.
Componente: wd290hf.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Exemplo de conexao em outra porta do Postgresql
nDBConnection = SQLConnect("127.0.0.1",sUser,sPassword,sDBName,"PostgreSQL","","Server Port = 15433")

by Ronei Heck
Boller
12 04 2023

Última modificación: 13/01/2023

Señalar un error o enviar una sugerencia | Ayuda local