Unable to download msnodesql-0.2.1-v0.10-x64.msi

This problem occurs because in the target packege in scripts/install.js there's invalid url to the driver. Actually on Microsoft Download you will find msnodesql-0.2.1-v0.8-x64.msi but not msnodesql-0.2.1-v0.10-x64.msi which is pointed in script. The only way to correct it is to install it from local drive.

Download the Drive separately from http://www.microsoft.com/en-us/download/details.aspx?id=29995. Then I advise you the following:

  1. download from Git Hub (msnodesql) Zipped package. Unzip it to the local drive
  2. In the unzipped directory replace the contents of the

    scripts/install.js
    

    as the following:

    var assert=require('assert');
    var subprocess=require('child_process');
    var package=require('../package.json');
    
    function log( msg ) {
        console.log( "install.js: " + msg );
    }
    console.log( "You are installing driver locally." );
    
    var msiName = 'HERE_IS_THE_PATH_TO_YOUR_DOWNLOADED_DRIVER\\msnodesql-0.2.1-v0.8-x64.msi';
    // run the msi to extract the driver inside
    var msiCmd = [ 'cmd', '/c', 'msiexec', '/i', msiName, '/quiet','IACCEPTMSNODESQLLICENSETERMS=Yes', 'NPMINSTALL=Yes' ].join(' ');
    subprocess.exec( msiCmd, function( error, stdout, stderr ) {
        if( error !== null ) {
        log( error );
        log( stdout );
        process.exit( 1 );
        }
    });
    

Then just run

npm install FULL_PATH_TO_UNZIPPED_PACKAGE_DIR

The install process should not fail. And in you app's modules folder will be a

      msnodesql

package. Then you should download (if you are not building by your self) the

sqlserver.node

from Git Hub (my reputation doesn't allow to post me link to it, so I'll reply with it if you need it) and place it to the

lib folder of your msnodesql module directory. This should help you.


This worked to install from here:

http://www.microsoft.com/en-us/download/details.aspx?id=29995

... not from npm:

npm install msnodesql