Jump to content

Error While Connecting MS SQL DB from MacBook

Recommended Posts

Hi all,

I am having issues connecting to an MSSQL DB from a MacBook. The following code works fine from Windows 7 and Windows 10, but it is not working from MacBook.

#include <file.au3>

$obj_ErrorHandling = ObjEvent ("AutoIt.Error", "f_ErrorHandling")

Const $c_SCRIPTNAME     = StringLeft(@ScriptName, StringLen(@ScriptName) - 4)
Const $c_EAILogFile     = @ScriptDir & "\" & $c_SCRIPTNAME & "_" & StringUpper (@UserName) & ".log"
Const $c_SCRIPTLOGFILE  = FileOpen ($c_EAILogFile, $FO_OVERWRITE)

FileWrite ($c_SCRIPTLOGFILE, "[INFORMATION] Variables definition" & @CRLF)
$txt_UserId = "User123"
$txt_Password = "Password123"
$txt_ProviderDatasource = "Provider=SQLOLEDB;Data Source=server.companyname.com\ss123; Initial Catalog=MyTools; User ID=" & $txt_UserId & "; Password=" & $txt_Password

FileWrite ($c_SCRIPTLOGFILE, "[INFORMATION] Creating object" & @CRLF)
$conn_Database = ObjCreate ("ADODB.Connection")
FileWrite ($c_SCRIPTLOGFILE, "[INFORMATION] Initializing connection string" & @CRLF)
$conn_Database.ConnectionString = $txt_ProviderDatasource
FileWrite ($c_SCRIPTLOGFILE, "[INFORMATION] Connecting to Database" & @CRLF)
FileWrite ($c_SCRIPTLOGFILE, "[INFORMATION] Database connected" & @CRLF)

Func f_ErrorHandling ($obj_ErrorHandling)
   $HexNumber = Hex ($obj_ErrorHandling.number, 8)

   FileWrite ($c_SCRIPTLOGFILE, "[INFORMATION] Error occured while connecting Database!" & @CRLF)
   MsgBox (0, $c_SCRIPTNAME, "We intercepted a COM Error !"            & @CRLF  & @CRLF & _
         "Error Number: "          & $obj_ErrorHandling.Number         & @CRLF & _
         "Error Description: "     & $obj_ErrorHandling.description    & @CRLF & _
         "Error WinDescription:"   & $obj_ErrorHandling.windescription & @CRLF & _
         "Error Last DLLL Error: " & $obj_ErrorHandling.lastdllerror   & @CRLF & _
         "Error Script Line: "     & $obj_ErrorHandling.scriptline     & @CRLF & _
         "Error Source: "          & $obj_ErrorHandling.source)
   Exit (1)

After executing it in a MacBook, the log file contains:

[INFORMATION] Variables definition
[INFORMATION] Creating object
[INFORMATION] Error occured while connecting Database!

And the error message is attached to this post.


Can anyone guide me how to resolve this issue?

Thanks in Advance.


Link to post
Share on other sites

AutoIt isn't designed to work on anything other than Windows, good luck getting it to work on something that's not Windows.

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Arual
      We have AutoIt code that performs a connection to an MS SQL database running SQL server 2012, tls 1.0. It has worked successfully for years.
      Today, our IT department migrated our database to a new server that is running SQL server 2016, tls 1.2. Now our connection string is no longer working.
      Here is the original that was working in SQL server 2012
      $sConnStr = "DRIVER={SQL Server};SERVER=servername,port;DATABASE=dbname;UID=user;PWD=pass" When that would run on the new server in SQL server 2016. We are getting the error [Microsoft][ODBC SQL Server Driver][DBNETLIB]SSL Security error
      We tried changing the connection string to 
      $sConnStr = "DRIVER={SQL Server Native Client 11.0};SERVER=servername,port;DATABASE=dbname;UID=user;PWD=pass" The new error we received is [Microsoft]
      TCP Provider: An existing connection was forcibly closed by the remote host. We can log in successfully using SSMS using the server name, port and user/pass.
      Any suggestions on what we need to change in order to get the connection to work again?
    • By argumentum
      I'm with MS SQL Express 2014.
      Went to the wiki - Databases_and_web_connections but I can't find a way =/
      the strings I've got are:
      ODBC;DSN=eFilmWorkstation;Trusted_Connection=Yes ODBC;DSN=eFilmWorkstation;UID=sa;PWD=eFilmWS30 "SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE';" A working example ? ( that would run if you had the db )
      Or, advise in a UDF to use and how to use it ?
      I don't care to write, just to read.
    • By Graeme
      Hi, I'm trying to open a Firefox window with this code -
      If _ffstart() Then If _ffconnect() Then ;_ffstart() If _ff_openurl("http://english.documentation.ff-au3.thorsten-willert.de/ff_functions/_FFOpenURL.php") Then MsgBox(0,"","It's open") Else MsgBox(0,"","Is there a problem") EndIf Else MsgBox(0,"","Couldn't connect") EndIf EndIf And I get this as a result =
      __FFStartProcess ==> General Error: Error reading registry entry for FireFox.
      HKEY_LOCAL_MACHINESOFTWAREWow6432NodeMozillaMozilla Firefox*CurrentVersion*MainPathToExe
      Error from RegRead: 1
      The problem is that the registry entry does oint to the right place for Firefox so what's wrong?? Any ideas please?
    • By gritts
      I am attempting to create a script which will poll a SQL database that is part of our internal server monitoring application. The results would then be pushed to the local growl client on my desktop. I am successful at querying the SQL database using the SQL UDF and can send growl notifications fine as well...

      What I run into is "Syntax error converting datetime from character string." when I try to query the database with the value from a previous query. (My appologies for making this sound confusing)

      For example, I query the database and return the results into a 2D array. I can display the results fine with "_ArrayDisplay". I then take the results from the query and using the next to last row from the results, get the value from the datetime column.

      $tmpDate = String($aData[$iRows-1][1]) MsgBox(0,"Date",$tmpDate)

      It is when I take the value in $tmpDate and attempt to search with it that I get the syntax error above.

      $iRval = _SQL_GetTable2D(-1, "select * from dbo.AllpagesToday WHERE PageRecip = 'SERVER_OC1' OR PageRecip = 'SERVER_ONCALL' AND Date > '" & $tmpDate & "' ORDER BY Date;", $aData, $iRows, $iColumns)
      I have also attempted to convert the date format from: 20120319090303 to 2012-03-19 09:03:03.000 to no avail.

      My conversion pieced together from other posts:

      Func _convertToDateTime($dtString) Local $newdt $newdt = StringRegExpReplace($dtString, "A(d{4})(d{2})(d{2})(d{2})(d{2})(d{2})(?:.*)","$1-$2-$3 $4:$5:$6") MsgBox(0,"Convert Results",$newdt) Return($newdt) EndFunc
      When I search using the converted datetime, it is as if the query ignored the datetime value and returns all values of the 2D array.

      $iRval = _SQL_GetTable2D(-1, "select * from dbo.AllpagesToday WHERE PageRecip = 'SERVER_OC1' OR PageRecip = 'SERVER_ONCALL' AND Date > '" & _convertToDateTime($tmpDate) & "' ORDER BY Date;", $aData, $iRows, $iColumns)
      Any suggestions? If more information is needed, let me know.
    • By mdthanh

      I have completed a script to export data from MSSQL or MSACCESS to Excel
      Hope it useful for someone.


      Support database: MSSQL, MSACCESS
      Export speed of MSSQL: arround 15 seconds for 700,000 records with more than 30 fields.

      Will support more databases on next time and allow to select existing tables/views if any.

  • Create New...