views:

39

answers:

1

Hello,

I am trying to connect to a MS-SQL server on the internet. What should I put on the ServerName parameter of SQLConnect?

I've tried this, but it fails:

"DRIVER=SQL Server;SERVER=SERVER_IP;DATABASE=sales"

SERVER_IP is something like 111.111.111.111,9999

EDIT: I followed Johns advice and here is my current code:

SQLCHAR OutConnStr[255];
SQLSMALLINT OutConnStrLen;
SQLTCHAR *srv = (SQLTCHAR *)"Provider=SQLOLEDB.1;Password=pw;Persist Security Info=True;User ID=me;Initial Catalog=mydb;Data Source=1.2.3.4,9999";
rc = SQLDriverConnect(conn_h, NULL, srv, strlen((char*)srv), OutConnStr, 255, &OutConnStrLen, SQL_DRIVER_PROMPT);

But now I get this error HY024 - Invalid attribute value

+3  A: 

Here is a trick with SQL Server Connection Strings. Create a file on you desktop called test.udl. Once created, double click and open the file. You will be prompted to set up the Database Connection. Configure the connection as needed. When Finished, test the connection. Finally close the wizard. Then right click the test.udl file and open with notepad. You will see the connection string you created.

John Hartsock
Thank you. I edited my first post.
Cornwell
Now I changed SQL_DRIVER_PROMPT to SQL_DRIVER_COMPLETE and it shows a dialog where I input connection parameters, after I do that it works. But I don't want the dialog to show up.
Cornwell
Nevermind. I solved the problem. Thanks, couldn't do it without your help!
Cornwell
+1 for a cool trick
Brian Vander Plaats