running node.js API - node.js

I'm currently trying to run node.js API on my system with Oracle client 11g 64-bit installed and node version 6.9.2 64-bit but it throws the below error:
Error: NJS-045: cannot load the oracledb add-on binary for Node.js
6.9.2 (win32, x64) Node.js require() error was: DPI-1047: 64-bit Oracle Client library cannot be loaded:
"E:\app\Administrator\product\11.2.0\client_1\BIN\oci.dll is not the
correct architecture". See https://oracle.github.io/odpi/doc/
installation.html#windows for help
It also prompts to check the availability of 64-bit Oracle client libraries in the PATH environment variable, which I have already validated.
Node-oracledb installation instructions:
https://oracle.github.io/node-oracledb/INSTALL.html You must have
64-bit Oracle client libraries in your PATH environment variable. If
you do not have Oracle Database on this computer, then install the
Instant Client Basic or Basic Light package from
http://www.oracle.com/technetwork/topics/winx64soft-089540.html A
Microsoft Visual Studio Redistributable suitable for your Oracle
client library version must be available.
Also Microsoft Visual C++ Redistribitable 64bit 2012,2013,2015 are also installed.
Need help troubleshooting this problem as I do not know where is the link missing.

Do you have Oracle DB installed in your system?
Is Oracle client libraries installed in your system and added in your PATH environment variable?
Is Microsoft Visual Studio installed in your system?
Please check above dependencies then try again.

Related

NVM for Windows successfully installed but CMD prompt informs my version of Node.exe not compatible with my Windows version

I'm on a Microsoft Surface Pro X (it features Windows 10 Home on ARM 64-bit processor) trying to install Node.js. I've decided to use NVM for Windows. I can successfully install and get NVM for Windows running correctly. To my understanding, I'm able to install different versions of Node (i.e. 16.16.0 and 16.13.1, for example, both LTS) as shown in below graphic. But when I try to run Node, I get the error "This version of C:\Program Files\Nodejs\node.exe is not compatible with the version of Windows you're running. Check your computer's system information and then contact the software publisher."
I am not clear on the why this is happening. Am I not downloading a version of Node that is compatible on my ARM 64-bit processor? I've read through several closed issues on the GitHub page but I haven't encountered someone bringing up this same error. I'm pretty confident it does NOT have to do with the integrity of my symlinks too, or my system environment variables. See below:
Your help and insight is appreciated. Thanks.

Can't connect Excel to Oracle although I already installed the drivers. (Using Excel's PowerQuery)

I have been trying for a while now, to connect Excel to Oracle through PowerPivot, but unfortunately to no success.
I am currently getting this error: An error happened while reading data from the provider. 'Attempt to load Oracle client libraries threw BadImageFormatException. This problem will occur when running in 64 bit mode with the 32 bit Oracle client components installed.'.
I have so far done the following:
1. Installed Oracle Client x64
I installed Oracle Client x64 from https://www.oracle.com/database/technologies/112010-win64soft.html. I used file win64_11gR2_client.zip. In the installation proccess I went for the option InstantClient
2. Installed Oracle's ODBC Instant Client x64
I went to https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html and downloaded both instantclient-basic-windows.x64-19.6.0.0.0dbru.zip and instantclient-odbc-windows.x64-19.6.0.0.0dbru.zip. I 'installed' them by unziping them in the same folder, and running odbc_install.
Then, I added the directory to my path environment variables and then created a new one called TNS_ADMIN and added the same directory.
3. Installed Oracle's ODBC Instant Client x32
Finally I did the same for the x32 files, but I did not add that directory to my environment variables.
I validated the correct installation by finding the drivers here:
x64 Drivers:
x32 Drivers:
Help in Troubleshooting
It is frustrating that besides the error message I can't find any way to troubleshoot this issue. Any ideas on what could it be? Any ideas on how to troubleshoot?
Thanks!
With 32 bit Oracle Instant client
Option 1 with ODBC drivers
Option 2 without ODBC drivers and ODAC client
Option 1: After installing 32 bit odbc drivers try to add only 32 bit instant client to path or if you add both clients to system path make sure 32 bit client is above 64 bit client
If the order is set correctly in system path you can verify from command prompt with where command
C:\WINDOWS\system32>where sqlplus
D:\instantclient_19_6_x86\sqlplus.exe
D:\instantclient_19_6_x64\sqlplus.exe
or with command path
C:\WINDOWS\system32>path
PATH=D:\instantclient_19_6_x86;D:\instantclient_19_6_x64;xxxxx
If set correctly You can connect via odbc File--->From Other Sources --> From ODBC
Option 2: Enables you to connect to database via ODAC Client without ODBC driversFile--->From Database --> From Oracle Database
Download ODAC 32 bit from Oracle ODP.NET_Managed_ODAC122cR1.zip.
Unzip the folder and from elevated command prompt install
D:\ODP.NET_Managed_ODAC122cR1>install_odpm.bat D:\instantclient_19_6_x86 x86 true
Here I set target directory to 32 bit instant client i.e D:\instantclient_19_6_x86
Edit: Add tns name entry in tnsnames.ora and tns_admin system variable
i,e TNS_ADMIN= D:\instantclient_19_6_x86\network\admin

How to add Oracle ODBC 64 bit to 32bit Oracle client

Having a question on Oracle. Computer has Oracle 11.2 32bit Client installed(win is 64bit) However, downloaded Office x64 and want to connect to OracleDB.
I have tried to download from Oracle page Oracle Instant Client Basic, inserted into it x64 ODBC Instant Client, made a path in environments to it and launched CMD installation, and got message that it was successfully installed. However, when i launch ODBC Administrator, and try to add System DSN of OraClient , i do not see possible options for 64bit ODBC connection.
Where can be the problem? Oracle client is installed in C:\oracle\product\11.2.0\client_1 and x64 ODBC connection with Instant Client i have put in C:\oracle\instantclient_11_2
Windows has two versions of odbcad32.exe:
The 32-bit version of the odbcad32.exe is located in the %systemdrive%\Windows\SysWoW64.
The 64-bit version of the odbcad32.exe is located in the %systemdrive%\Windows\System32.
To add a 64-bit DSN, you need to start odbcad32.exe from %systemdrive%\Windows\System32.

SqlSrv driver isn't loading with IIS 10 & PHP 5.6

I've installed a fresh IIS 10 server on a fresh Windows 10 machine with PHP 5.6.31 VC11 x64 Non Thread Safe (can't use PHP7 just yet). PHP is now working well and phpinfo() is displaying everything correctly.
I just installed the PHP SQL driver but it isn't being loaded. It's not showing up in phpinfo() and when I try to use it in code I get the following PHP error:
PHP Fatal error: Uncaught exception 'PDOException' with message 'could not find driver' in test.php:3
Stack trace:
#0 test.php(3): PDO->__construct('sqlsrv:server=...', '', '')
To install the PHP SQL driver, I did the following:
Downloaded and installed the Microsoft ODBC Driver 11 for SQL Server (x64)
Downloaded and installed the Microsoft Driver for PHP for SQL Server (SQLSRV32.EXE)
Enabled the extensions in PHP manager (php_sqlsrv_56_nts.dll and php_sqlsrv_56_nts.dll)
Restarted the IIS server
[PHP_XDEBUG-2.5.5-5.6-VC11-NTS-X86_64]
extension=php_xdebug-2.5.5-5.6-vc11-nts-x86_64.dll
[PHP_PDO_ODBC]
extension=php_pdo_odbc.dll
[PHP_PDO_SQLSRV_56_NTS]
extension=php_sqlsrv_56_nts.dll
[PHP_SQLSRV_56_NTS]
extension=php_sqlsrv_56_nts.dll
It all looks correct to me and I've done this successfully on other machines before. I feel like I'm missing something simple.
A few other notes:
The PHP error log is empty.
I've tried loading all other dll files that I downloaded (such as the ones aimed at 5.5, 5.4 etc) but it doesn't change anything.
It's worth noting that I installed Xdebug just fine and it is showing up in phpinfo().
I have resolved this problem by using PHP for x86 and not x64. I'm guessing that the SQL drivers are not designed for x64 (although I couldn't see this anywhere).
As soon as I changed to PHP 5.6 VC11 x86 Non Thread Safe everything worked much better.
Note that you need Visual C++ Redistributable for Visual Studio 2012 x86 for this to work. If you already installed the x64 redistributable you will need to install the version that is designed for x86.
or use this library : php_pdo_sqlsrv_73_nts.dll

node.js + azure sql database

i'm struggling with the microsoft's node.js sql client.
I've installed it, without any errors using the guide at the github page, and everything works perfect locally. but when i use git to push it to azure, i get the error:
Native sqlserver module not found. Did you remember to run node-gyp configure build?
Application has thrown an uncaught exception and is terminated:
Error: Unable to load shared library C:\DWASFiles\Sites\bid110\VirtualDirectory0\site\wwwroot\node_modules\msnodesql\build\Release\sqlserver.node
I've also looked at this guide, even though some parts is outdated. I've also cheked that all the files are uploaded to the server. the node_modules/msnodesql and node_modules\msnodesql\build\Release\ folders with all its subfolders are there as well.
Any ideas what I might be doing wrong here?
Please check if your msnodesql is x86 or x64. If your local machine was x64 with x64 Python, and you installed msnodesql through npm install msnodesql then you should get a x64 version. But on Windows Azure Web Site your application will be running in x86, so you might need to a x86 version of msnodesql. You can install through NPM from a x86 machine, or you can download the compiled version at http://www.microsoft.com/en-us/download/details.aspx?id=29995
I also have a blog post about this hope that helps. http://blogs.shaunxu.me/archive/2012/09/18/node.js-adventure---when-node.js-meets-windows-azure.aspx

Resources