(11-08-2020, 19:35)tincho escribió: Hola omoreno.
Como no especificas para que entorno de programación, SO o lenguaje, supongo que cualquier ejemplo te vale.
https://docs.microsoft.com/es-es/sql/ssm...rver-ver15
Saludos.
if hconn <> null then return
hconn = new connection
with hconn
.host = "la ip del Servidor"
.port = "el puerto abierto del servidor"
.login = "tu login"
.password = "pues eso tu contraseña"
.Name = "Nombre de la base de datos"
. type = "Formato de la base de datos", yo usaba Mysql pues lo pones y haber que sale
end with
try hconn.open() 'la abres
y si no te sale ningun error ya la tienes abierta y lista para recibir comandos
(11-08-2020, 20:01)omoreno escribió: 1- Gambas 3.15.1.Es ese caso, que yo sepa, solo te queda conectarte por medio de ODBC ya que gambas no tiene un driver para ms-sqlserver
2- Ejecutando un servidor WEBFORM en Linux MINT 20.0.
3-La base de datos de prueba MS SQL SERVER esta en otra PC con windows 10 que he conectado al PC con Linux.
Public Sub Button1_Click()
Dim con As New Connection
con.Type = "odbc"
con.Host = "" ' pone el servidor
con.Name = "" ' Pone nombre de la base de datos
'con.port ' Tal vez haga fata especificarlo tambien
'con.User ' Tal vez haga fata especificarlo tambien
'con.Password ' Tal vez haga fata especificarlo tambien
con.Open
If con.Opened Then
Message.Info("Conectado")
Else
Message.Info("Error")
Endif
End
(11-08-2020, 20:49)tincho escribió:(11-08-2020, 20:01)omoreno escribió: 1- Gambas 3.15.1.Es ese caso, que yo sepa, solo te queda conectarte por medio de ODBC ya que gambas no tiene un driver para ms-sqlserver
2- Ejecutando un servidor WEBFORM en Linux MINT 20.0.
3-La base de datos de prueba MS SQL SERVER esta en otra PC con windows 10 que he conectado al PC con Linux.
El tema es interesante, nunca use ODBC con gambas pero en lo que pueda te ayudare.
En principio este código valdría para conectarte a cualquier base de datos a través de ODBC
Proba con algo así a ver que sucede y lo vamos desarrollando.Código:Public Sub Button1_Click()
Dim con As New Connection
con.Type = "odbc"
con.Host = "" ' pone el servidor
con.Name = "" ' Pone nombre de la base de datos
'con.port ' Tal vez haga fata especificarlo tambien
'con.User ' Tal vez haga fata especificarlo tambien
'con.Password ' Tal vez haga fata especificarlo tambien
con.Open
If con.Opened Then
Message.Info("Conectado")
Else
Message.Info("Error")
Endif
End
Saludos.
# [DSN name]
[MSSQLTest]
Driver = ODBC Driver 17 for SQL Server
# Server = [protocol:]server[,port]
Server = tcp:192.168.0.1,1433
#Note:
# Port is not a valid keyword in the odbc.ini file
# for the Microsoft ODBC driver on Linux or macOS
(11-08-2020, 22:31)tincho escribió: Acá hay hay algo mas de información, tal vez sirva.
https://gambaswiki.org/wiki/howto/odbcdatabase#t3
https://gambaswiki.org/wiki/doc/odbc
http://www.unixodbc.org/
Supuestamente ODBC es un estándar que permite acceder a una base de datos desde otros sistemas diferentes al que sirve los datos.
Si tenes que instalar tanto ms-driver ya me huele mal el asunto.
Saludos
#
[global]
# TDS protocol version
tds version = auto
# Whether to write a TDSDUMP file for diagnostic purposes
# (setting this to /tmp is insecure on a multi-user system)
; dump file = /tmp/freetds.log
; debug flags = 0xffff
# Command and connection timeouts
; timeout = 100
; connect timeout = 100
# To reduce data sent from server for BLOBs (like TEXT or
# IMAGE) try setting 'text size' to a reasonable limit
; text size = 64512
# If you experience TLS handshake errors and are using openssl,
# try adjusting the cipher list (don't surround in double or single quotes)
# openssl ciphers = HIGH:!SSLv2:!aNULL:-DH
#Microsoft SQL server
[tracking]
host = <host>.database.windows.net
port = 1433
tds version = 7.3
[FreeTDS]
Description = FreeTDS
Driver = /usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so
[<DATA_SOURCE_NAME>]
Driver = FreeTDS
Server = <SERVERNAME>
Port = 1433
Database = <DBNAME>
isql -v <DATA_SOURCE_NAME> <USER> <PASSWORD>
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL> select current_timestamp
+------------------------+
| |
+------------------------+
| 2015-01-02 09:05:55.593|
+------------------------+
SQLRowCount returns 1
1 rows fetched
SQL>
Public conn As Connection
Public Function ConectarODBC() As Boolean
'
conn = New Connection
conn.Type = "odbc" 'Define el tipo de conexión
conn.Host = "odbcxyz" 'Nombre de la conexión ODBC del sistema o del usuario actual: el DSN
conn.Login = "user" 'Usuario para la conexión la algunos odbc no permite definirlo en el odbc.ini
conn.Password = "123" 'Clave de Usuario de la conexión, algunos odbc no lo permite en el odbc.ini
conn.Open() 'Activamos y Abrimos la conexión
'
Return True
'
Catch
If String.InStr(Error.Text, "Access denied for user") <> 0 Then
Message.Error("No se conecto<br>Error: Verificar los datos de conexion del sistema...", "OK")
Else
Message.Error("No se conecto<br>Error: " & Error.Code & "<br>" & Error.Text, "OK")
Endif
Return False
'
End