oracledb 5.5.0 → 6.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -1875
- package/LICENSE.txt +8 -222
- package/NOTICE.txt +1 -1
- package/README.md +38 -30
- package/SECURITY.md +38 -0
- package/build/Release/oracledb-6.0.1-darwin-x64.node +0 -0
- package/build/Release/oracledb-6.0.1-darwin-x64.node-buildinfo.txt +1 -0
- package/build/Release/oracledb-6.0.1-js-buildinfo.txt +1 -0
- package/build/Release/oracledb-6.0.1-linux-arm64.node +0 -0
- package/build/Release/oracledb-6.0.1-linux-arm64.node-buildinfo.txt +1 -0
- package/build/Release/oracledb-6.0.1-linux-x64.node +0 -0
- package/build/Release/oracledb-6.0.1-linux-x64.node-buildinfo.txt +1 -0
- package/build/Release/oracledb-6.0.1-win32-x64.node +0 -0
- package/build/Release/oracledb-6.0.1-win32-x64.node-buildinfo.txt +1 -0
- package/examples/README.md +113 -0
- package/examples/dbconfig.js +100 -0
- package/examples/example.js +156 -0
- package/index.js +26 -0
- package/lib/aqDeqOptions.js +148 -8
- package/lib/aqEnqOptions.js +59 -7
- package/lib/aqMessage.js +118 -7
- package/lib/aqQueue.js +243 -53
- package/lib/connection.js +1326 -465
- package/lib/constants.js +203 -0
- package/lib/dbObject.js +346 -32
- package/lib/errors.js +785 -0
- package/lib/impl/aqDeqOptions.js +197 -0
- package/lib/impl/aqEnqOptions.js +89 -0
- package/lib/impl/aqMessage.js +134 -0
- package/lib/impl/aqQueue.js +81 -0
- package/lib/impl/connection.js +529 -0
- package/lib/impl/dbObject.js +159 -0
- package/lib/impl/index.js +59 -0
- package/lib/impl/lob.js +85 -0
- package/lib/impl/pool.js +195 -0
- package/lib/impl/resultset.js +223 -0
- package/lib/impl/sodaCollection.js +174 -0
- package/lib/impl/sodaDatabase.js +81 -0
- package/lib/impl/sodaDocCursor.js +63 -0
- package/lib/impl/sodaDocument.js +98 -0
- package/lib/impl/sodaOperation.js +109 -0
- package/lib/lob.js +157 -68
- package/lib/oracledb.js +1047 -345
- package/lib/pool.js +654 -465
- package/lib/poolStatistics.js +24 -9
- package/lib/queryStream.js +16 -8
- package/lib/resultset.js +291 -183
- package/lib/settings.js +191 -0
- package/lib/sodaCollection.js +214 -201
- package/lib/sodaDatabase.js +108 -71
- package/lib/sodaDocCursor.js +44 -32
- package/lib/sodaDocument.js +76 -14
- package/lib/sodaOperation.js +131 -118
- package/lib/thin/connection.js +1043 -0
- package/lib/thin/dbObject.js +630 -0
- package/lib/thin/index.js +40 -0
- package/lib/thin/lob.js +189 -0
- package/lib/thin/pool.js +481 -0
- package/lib/thin/protocol/buffer.js +1043 -0
- package/lib/thin/protocol/capabilities.js +121 -0
- package/lib/thin/protocol/constants.js +765 -0
- package/lib/thin/protocol/encryptDecrypt.js +185 -0
- package/lib/thin/protocol/messages/auth.js +349 -0
- package/lib/thin/protocol/messages/base.js +476 -0
- package/lib/thin/protocol/messages/commit.js +56 -0
- package/lib/thin/protocol/messages/dataType.js +391 -0
- package/lib/thin/protocol/messages/execute.js +312 -0
- package/lib/thin/protocol/messages/fetch.js +60 -0
- package/lib/thin/protocol/messages/index.js +53 -0
- package/lib/thin/protocol/messages/lobOp.js +201 -0
- package/lib/thin/protocol/messages/logOff.js +53 -0
- package/lib/thin/protocol/messages/ping.js +56 -0
- package/lib/thin/protocol/messages/protocol.js +78 -0
- package/lib/thin/protocol/messages/rollback.js +56 -0
- package/lib/thin/protocol/messages/sessionRelease.js +60 -0
- package/lib/thin/protocol/messages/withData.js +812 -0
- package/lib/thin/protocol/oson.js +661 -0
- package/lib/thin/protocol/packet.js +519 -0
- package/lib/thin/protocol/protocol.js +202 -0
- package/lib/thin/protocol/utils.js +89 -0
- package/lib/thin/resultSet.js +122 -0
- package/lib/thin/sqlnet/connStrategy.js +175 -0
- package/lib/thin/sqlnet/constants.js +199 -0
- package/lib/thin/sqlnet/ezConnectResolver.js +488 -0
- package/lib/thin/sqlnet/navNodes.js +870 -0
- package/lib/thin/sqlnet/networkSession.js +621 -0
- package/lib/thin/sqlnet/ntTcp.js +527 -0
- package/lib/thin/sqlnet/nvStrToNvPair.js +783 -0
- package/lib/thin/sqlnet/packet.js +405 -0
- package/lib/thin/sqlnet/paramParser.js +206 -0
- package/lib/thin/sqlnet/sessionAtts.js +160 -0
- package/lib/thin/statement.js +300 -0
- package/lib/thin/util.js +289 -0
- package/lib/transformer.js +252 -0
- package/lib/types.js +357 -0
- package/lib/util.js +196 -110
- package/lib/version.js +36 -0
- package/package/README.md +33 -30
- package/package/install.js +89 -64
- package/package/prunebinaries.js +60 -12
- package/package.json +3 -3
- package/build/Release/oracledb-5.5.0-darwin-x64.node +0 -0
- package/build/Release/oracledb-5.5.0-darwin-x64.node-buildinfo.txt +0 -1
- package/build/Release/oracledb-5.5.0-linux-x64.node +0 -0
- package/build/Release/oracledb-5.5.0-linux-x64.node-buildinfo.txt +0 -1
- package/build/Release/oracledb-5.5.0-win32-x64.node +0 -0
- package/build/Release/oracledb-5.5.0-win32-x64.node-buildinfo.txt +0 -1
package/LICENSE.txt
CHANGED
|
@@ -1,218 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
node-oracledb
|
|
3
|
-
-------------------------------------------------------------------------------
|
|
1
|
+
Copyright (c) 2015, 2023 Oracle and/or its affiliates.
|
|
4
2
|
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
This software is dual-licensed to you under the Universal Permissive License
|
|
4
|
+
(UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl and Apache License
|
|
5
|
+
2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose
|
|
6
|
+
either license.
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
also reproduced below.
|
|
11
|
-
|
|
12
|
-
Unless required by applicable law or agreed to in writing, software
|
|
13
|
-
distributed under the License is distributed on an "AS IS" BASIS,
|
|
14
|
-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
15
|
-
implied.
|
|
16
|
-
|
|
17
|
-
See the License for the specific language governing permissions and
|
|
18
|
-
limitations under the License.
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
Apache License
|
|
22
|
-
Version 2.0, January 2004
|
|
23
|
-
http://www.apache.org/licenses/
|
|
24
|
-
|
|
25
|
-
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
26
|
-
|
|
27
|
-
1. Definitions.
|
|
28
|
-
|
|
29
|
-
"License" shall mean the terms and conditions for use, reproduction,
|
|
30
|
-
and distribution as defined by Sections 1 through 9 of this document.
|
|
31
|
-
|
|
32
|
-
"Licensor" shall mean the copyright owner or entity authorized by
|
|
33
|
-
the copyright owner that is granting the License.
|
|
34
|
-
|
|
35
|
-
"Legal Entity" shall mean the union of the acting entity and all
|
|
36
|
-
other entities that control, are controlled by, or are under common
|
|
37
|
-
control with that entity. For the purposes of this definition,
|
|
38
|
-
"control" means (i) the power, direct or indirect, to cause the
|
|
39
|
-
direction or management of such entity, whether by contract or
|
|
40
|
-
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
41
|
-
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
42
|
-
|
|
43
|
-
"You" (or "Your") shall mean an individual or Legal Entity
|
|
44
|
-
exercising permissions granted by this License.
|
|
45
|
-
|
|
46
|
-
"Source" form shall mean the preferred form for making modifications,
|
|
47
|
-
including but not limited to software source code, documentation
|
|
48
|
-
source, and configuration files.
|
|
49
|
-
|
|
50
|
-
"Object" form shall mean any form resulting from mechanical
|
|
51
|
-
transformation or translation of a Source form, including but
|
|
52
|
-
not limited to compiled object code, generated documentation,
|
|
53
|
-
and conversions to other media types.
|
|
54
|
-
|
|
55
|
-
"Work" shall mean the work of authorship, whether in Source or
|
|
56
|
-
Object form, made available under the License, as indicated by a
|
|
57
|
-
copyright notice that is included in or attached to the work
|
|
58
|
-
(an example is provided in the Appendix below).
|
|
59
|
-
|
|
60
|
-
"Derivative Works" shall mean any work, whether in Source or Object
|
|
61
|
-
form, that is based on (or derived from) the Work and for which the
|
|
62
|
-
editorial revisions, annotations, elaborations, or other modifications
|
|
63
|
-
represent, as a whole, an original work of authorship. For the purposes
|
|
64
|
-
of this License, Derivative Works shall not include works that remain
|
|
65
|
-
separable from, or merely link (or bind by name) to the interfaces of,
|
|
66
|
-
the Work and Derivative Works thereof.
|
|
67
|
-
|
|
68
|
-
"Contribution" shall mean any work of authorship, including
|
|
69
|
-
the original version of the Work and any modifications or additions
|
|
70
|
-
to that Work or Derivative Works thereof, that is intentionally
|
|
71
|
-
submitted to Licensor for inclusion in the Work by the copyright owner
|
|
72
|
-
or by an individual or Legal Entity authorized to submit on behalf of
|
|
73
|
-
the copyright owner. For the purposes of this definition, "submitted"
|
|
74
|
-
means any form of electronic, verbal, or written communication sent
|
|
75
|
-
to the Licensor or its representatives, including but not limited to
|
|
76
|
-
communication on electronic mailing lists, source code control systems,
|
|
77
|
-
and issue tracking systems that are managed by, or on behalf of, the
|
|
78
|
-
Licensor for the purpose of discussing and improving the Work, but
|
|
79
|
-
excluding communication that is conspicuously marked or otherwise
|
|
80
|
-
designated in writing by the copyright owner as "Not a Contribution."
|
|
81
|
-
|
|
82
|
-
"Contributor" shall mean Licensor and any individual or Legal Entity
|
|
83
|
-
on behalf of whom a Contribution has been received by Licensor and
|
|
84
|
-
subsequently incorporated within the Work.
|
|
85
|
-
|
|
86
|
-
2. Grant of Copyright License. Subject to the terms and conditions of
|
|
87
|
-
this License, each Contributor hereby grants to You a perpetual,
|
|
88
|
-
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
89
|
-
copyright license to reproduce, prepare Derivative Works of,
|
|
90
|
-
publicly display, publicly perform, sublicense, and distribute the
|
|
91
|
-
Work and such Derivative Works in Source or Object form.
|
|
92
|
-
|
|
93
|
-
3. Grant of Patent License. Subject to the terms and conditions of
|
|
94
|
-
this License, each Contributor hereby grants to You a perpetual,
|
|
95
|
-
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
96
|
-
(except as stated in this section) patent license to make, have made,
|
|
97
|
-
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
98
|
-
where such license applies only to those patent claims licensable
|
|
99
|
-
by such Contributor that are necessarily infringed by their
|
|
100
|
-
Contribution(s) alone or by combination of their Contribution(s)
|
|
101
|
-
with the Work to which such Contribution(s) was submitted. If You
|
|
102
|
-
institute patent litigation against any entity (including a
|
|
103
|
-
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
104
|
-
or a Contribution incorporated within the Work constitutes direct
|
|
105
|
-
or contributory patent infringement, then any patent licenses
|
|
106
|
-
granted to You under this License for that Work shall terminate
|
|
107
|
-
as of the date such litigation is filed.
|
|
108
|
-
|
|
109
|
-
4. Redistribution. You may reproduce and distribute copies of the
|
|
110
|
-
Work or Derivative Works thereof in any medium, with or without
|
|
111
|
-
modifications, and in Source or Object form, provided that You
|
|
112
|
-
meet the following conditions:
|
|
113
|
-
|
|
114
|
-
(a) You must give any other recipients of the Work or
|
|
115
|
-
Derivative Works a copy of this License; and
|
|
116
|
-
|
|
117
|
-
(b) You must cause any modified files to carry prominent notices
|
|
118
|
-
stating that You changed the files; and
|
|
119
|
-
|
|
120
|
-
(c) You must retain, in the Source form of any Derivative Works
|
|
121
|
-
that You distribute, all copyright, patent, trademark, and
|
|
122
|
-
attribution notices from the Source form of the Work,
|
|
123
|
-
excluding those notices that do not pertain to any part of
|
|
124
|
-
the Derivative Works; and
|
|
125
|
-
|
|
126
|
-
(d) If the Work includes a "NOTICE" text file as part of its
|
|
127
|
-
distribution, then any Derivative Works that You distribute must
|
|
128
|
-
include a readable copy of the attribution notices contained
|
|
129
|
-
within such NOTICE file, excluding those notices that do not
|
|
130
|
-
pertain to any part of the Derivative Works, in at least one
|
|
131
|
-
of the following places: within a NOTICE text file distributed
|
|
132
|
-
as part of the Derivative Works; within the Source form or
|
|
133
|
-
documentation, if provided along with the Derivative Works; or,
|
|
134
|
-
within a display generated by the Derivative Works, if and
|
|
135
|
-
wherever such third-party notices normally appear. The contents
|
|
136
|
-
of the NOTICE file are for informational purposes only and
|
|
137
|
-
do not modify the License. You may add Your own attribution
|
|
138
|
-
notices within Derivative Works that You distribute, alongside
|
|
139
|
-
or as an addendum to the NOTICE text from the Work, provided
|
|
140
|
-
that such additional attribution notices cannot be construed
|
|
141
|
-
as modifying the License.
|
|
142
|
-
|
|
143
|
-
You may add Your own copyright statement to Your modifications and
|
|
144
|
-
may provide additional or different license terms and conditions
|
|
145
|
-
for use, reproduction, or distribution of Your modifications, or
|
|
146
|
-
for any such Derivative Works as a whole, provided Your use,
|
|
147
|
-
reproduction, and distribution of the Work otherwise complies with
|
|
148
|
-
the conditions stated in this License.
|
|
149
|
-
|
|
150
|
-
5. Submission of Contributions. Unless You explicitly state otherwise,
|
|
151
|
-
any Contribution intentionally submitted for inclusion in the Work
|
|
152
|
-
by You to the Licensor shall be under the terms and conditions of
|
|
153
|
-
this License, without any additional terms or conditions.
|
|
154
|
-
Notwithstanding the above, nothing herein shall supersede or modify
|
|
155
|
-
the terms of any separate license agreement you may have executed
|
|
156
|
-
with Licensor regarding such Contributions.
|
|
157
|
-
|
|
158
|
-
6. Trademarks. This License does not grant permission to use the trade
|
|
159
|
-
names, trademarks, service marks, or product names of the Licensor,
|
|
160
|
-
except as required for reasonable and customary use in describing the
|
|
161
|
-
origin of the Work and reproducing the content of the NOTICE file.
|
|
162
|
-
|
|
163
|
-
7. Disclaimer of Warranty. Unless required by applicable law or
|
|
164
|
-
agreed to in writing, Licensor provides the Work (and each
|
|
165
|
-
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
166
|
-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
167
|
-
implied, including, without limitation, any warranties or conditions
|
|
168
|
-
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
169
|
-
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
170
|
-
appropriateness of using or redistributing the Work and assume any
|
|
171
|
-
risks associated with Your exercise of permissions under this License.
|
|
172
|
-
|
|
173
|
-
8. Limitation of Liability. In no event and under no legal theory,
|
|
174
|
-
whether in tort (including negligence), contract, or otherwise,
|
|
175
|
-
unless required by applicable law (such as deliberate and grossly
|
|
176
|
-
negligent acts) or agreed to in writing, shall any Contributor be
|
|
177
|
-
liable to You for damages, including any direct, indirect, special,
|
|
178
|
-
incidental, or consequential damages of any character arising as a
|
|
179
|
-
result of this License or out of the use or inability to use the
|
|
180
|
-
Work (including but not limited to damages for loss of goodwill,
|
|
181
|
-
work stoppage, computer failure or malfunction, or any and all
|
|
182
|
-
other commercial damages or losses), even if such Contributor
|
|
183
|
-
has been advised of the possibility of such damages.
|
|
184
|
-
|
|
185
|
-
9. Accepting Warranty or Additional Liability. While redistributing
|
|
186
|
-
the Work or Derivative Works thereof, You may choose to offer,
|
|
187
|
-
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
188
|
-
or other liability obligations and/or rights consistent with this
|
|
189
|
-
License. However, in accepting such obligations, You may act only
|
|
190
|
-
on Your own behalf and on Your sole responsibility, not on behalf
|
|
191
|
-
of any other Contributor, and only if You agree to indemnify,
|
|
192
|
-
defend, and hold each Contributor harmless for any liability
|
|
193
|
-
incurred by, or claims asserted against, such Contributor by reason
|
|
194
|
-
of your accepting any such warranty or additional liability.
|
|
195
|
-
|
|
196
|
-
END OF TERMS AND CONDITIONS
|
|
197
|
-
|
|
198
|
-
APPENDIX: How to apply the Apache License to your work.
|
|
199
|
-
|
|
200
|
-
To apply the Apache License to your work, attach the following
|
|
201
|
-
boilerplate notice, with the fields enclosed by brackets "[]"
|
|
202
|
-
replaced with your own identifying information. (Don't include
|
|
203
|
-
the brackets!) The text should be enclosed in the appropriate
|
|
204
|
-
comment syntax for the file format. We also recommend that a
|
|
205
|
-
file or class name and description of purpose be included on the
|
|
206
|
-
same "printed page" as the copyright notice for easier
|
|
207
|
-
identification within third-party archives.
|
|
208
|
-
|
|
209
|
-
Copyright [yyyy] [name of copyright owner]
|
|
8
|
+
If you elect to accept the software under the Apache License, Version 2.0,
|
|
9
|
+
the following applies:
|
|
210
10
|
|
|
211
11
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
212
12
|
you may not use this file except in compliance with the License.
|
|
213
13
|
You may obtain a copy of the License at
|
|
214
14
|
|
|
215
|
-
|
|
15
|
+
https://www.apache.org/licenses/LICENSE-2.0
|
|
216
16
|
|
|
217
17
|
Unless required by applicable law or agreed to in writing, software
|
|
218
18
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
@@ -220,20 +20,6 @@ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
220
20
|
See the License for the specific language governing permissions and
|
|
221
21
|
limitations under the License.
|
|
222
22
|
|
|
223
|
-
-------------------------------------------------------------------------------
|
|
224
|
-
ODPI-C
|
|
225
|
-
-------------------------------------------------------------------------------
|
|
226
|
-
|
|
227
|
-
Copyright (c) 2016, 2022 Oracle and/or its affiliates.
|
|
228
|
-
|
|
229
|
-
This program is free software: you can modify it and/or redistribute it under
|
|
230
|
-
the terms of:
|
|
231
|
-
|
|
232
|
-
(i) the Universal Permissive License v 1.0 or at your option, any
|
|
233
|
-
later version (<http://oss.oracle.com/licenses/upl>); and/or
|
|
234
|
-
|
|
235
|
-
(ii) the Apache License v 2.0. (<http://www.apache.org/licenses/LICENSE-2.0>)
|
|
236
|
-
|
|
237
23
|
|
|
238
24
|
The Universal Permissive License (UPL), Version 1.0
|
|
239
25
|
===================================================
|
package/NOTICE.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Copyright (c) 2015,
|
|
1
|
+
Copyright (c) 2015, 2023, Oracle and/or its affiliates.
|
package/README.md
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
# node-oracledb version
|
|
1
|
+
# node-oracledb version 6.0.1
|
|
2
2
|
|
|
3
3
|
The node-oracledb add-on for Node.js powers high performance Oracle Database
|
|
4
4
|
applications. Applications can be written in TypeScript, or directly in
|
|
5
5
|
JavaScript.
|
|
6
6
|
|
|
7
|
-
Use node-oracledb
|
|
8
|
-
Older versions of node-oracledb may work with older versions of
|
|
7
|
+
Use node-oracledb 6.0.1 to connect Node.js 14.6, or later, to Oracle
|
|
8
|
+
Database. Older versions of node-oracledb may work with older versions of
|
|
9
|
+
Node.js.
|
|
9
10
|
|
|
10
11
|
Node-oracledb supports basic and advanced features of Oracle Database
|
|
11
12
|
and Oracle Client. See the [homepage][4] for a list.
|
|
@@ -13,19 +14,19 @@ and Oracle Client. See the [homepage][4] for a list.
|
|
|
13
14
|
The node-oracledb module is open source and maintained by Oracle Corp.
|
|
14
15
|
It is stable, well documented, and has a comprehensive test suite.
|
|
15
16
|
|
|
16
|
-
##
|
|
17
|
+
## Installation
|
|
17
18
|
|
|
18
19
|
See [Getting Started with Node-oracledb][1] and [Quick Start Node-oracledb Installation][2].
|
|
19
20
|
|
|
20
|
-
##
|
|
21
|
+
## Documentation
|
|
21
22
|
|
|
22
23
|
See [Documentation for the Oracle Database Node.js Add-on][32] and the [CHANGELOG][33].
|
|
23
24
|
|
|
24
|
-
##
|
|
25
|
+
## Examples
|
|
25
26
|
|
|
26
27
|
See the [examples][30] directory. Start with [examples/example.js][31].
|
|
27
28
|
|
|
28
|
-
##
|
|
29
|
+
## Help
|
|
29
30
|
|
|
30
31
|
Issues and questions about node-oracledb can be posted on [GitHub][3] or
|
|
31
32
|
[Slack][5] ([link to join Slack][6]).
|
|
@@ -34,45 +35,52 @@ Issues and questions about node-oracledb can be posted on [GitHub][3] or
|
|
|
34
35
|
|
|
35
36
|
To run the test suite see [test/README][34].
|
|
36
37
|
|
|
37
|
-
##
|
|
38
|
+
## Contributing
|
|
38
39
|
|
|
39
|
-
|
|
40
|
-
|
|
40
|
+
This project welcomes contributions from the community. Before submitting a
|
|
41
|
+
pull request, please [review our contribution guide][35].
|
|
41
42
|
|
|
42
|
-
Oracle gratefully acknowledges the contributions to node-oracledb that
|
|
43
|
-
|
|
43
|
+
Oracle gratefully acknowledges the contributions to node-oracledb that have
|
|
44
|
+
been made by the community.
|
|
44
45
|
|
|
45
|
-
##
|
|
46
|
+
## Security
|
|
46
47
|
|
|
47
|
-
|
|
48
|
+
Please consult the [security guide](./SECURITY.md) for our responsible security
|
|
49
|
+
vulnerability disclosure process.
|
|
48
50
|
|
|
49
|
-
|
|
50
|
-
License, Version 2.0 (the "License.")
|
|
51
|
+
## License
|
|
51
52
|
|
|
53
|
+
Copyright (c) 2015, 2023, Oracle and/or its affiliates.
|
|
54
|
+
|
|
55
|
+
This software is dual-licensed to you under the Universal Permissive License
|
|
56
|
+
(UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl and Apache License
|
|
57
|
+
2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose
|
|
58
|
+
either license.
|
|
59
|
+
|
|
60
|
+
If you elect to accept the software under the Apache License, Version 2.0,
|
|
61
|
+
the following applies:
|
|
62
|
+
|
|
63
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
64
|
+
you may not use this file except in compliance with the License.
|
|
52
65
|
You may obtain a copy of the License at
|
|
53
|
-
[http://www.apache.org/licenses/LICENSE-2.0][36]. Unless required by
|
|
54
|
-
applicable law or agreed to in writing, software distributed under the
|
|
55
|
-
License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
|
|
56
|
-
CONDITIONS OF ANY KIND, either express or implied.
|
|
57
66
|
|
|
67
|
+
https://www.apache.org/licenses/LICENSE-2.0
|
|
68
|
+
|
|
69
|
+
Unless required by applicable law or agreed to in writing, software
|
|
70
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
71
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
58
72
|
See the License for the specific language governing permissions and
|
|
59
73
|
limitations under the License.
|
|
60
74
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
notices for the third-party code used in order to ensure compliance with their
|
|
64
|
-
respective open source licenses.
|
|
65
|
-
|
|
66
|
-
[1]: https://oracle.github.io/node-oracledb/doc/api.html#getstarted
|
|
67
|
-
[2]: https://oracle.github.io/node-oracledb/INSTALL.html#quickstart
|
|
75
|
+
[1]: https://node-oracledb.readthedocs.io/en/latest/user_guide/introduction.html#getstarted
|
|
76
|
+
[2]: https://node-oracledb.readthedocs.io/en/latest/user_guide/installation.html#quickstart
|
|
68
77
|
[3]: https://github.com/oracle/node-oracledb/issues
|
|
69
78
|
[4]: https://oracle.github.io/node-oracledb
|
|
70
79
|
[5]: https://node-oracledb.slack.com/
|
|
71
80
|
[6]: https://join.slack.com/t/node-oracledb/shared_invite/enQtNDU4Mjc2NzM5OTA2LWMzY2ZlZDY5MDdlMGZiMGRkY2IzYjI5OGU4YTEzZWM5YjQ3ODUzMjcxNWQyNzE4MzM5YjNkYjVmNDk5OWU5NDM
|
|
72
81
|
[30]: https://github.com/oracle/node-oracledb/blob/main/examples
|
|
73
|
-
[31]: https://github.com/oracle/node-oracledb/blob/main/examples/example.js
|
|
74
|
-
[32]: https://
|
|
82
|
+
[31]: https://github.com/oracle/node-oracledb/blob/main/examples/example.js
|
|
83
|
+
[32]: https://node-oracledb.readthedocs.io/en/latest/
|
|
75
84
|
[33]: https://github.com/oracle/node-oracledb/blob/main/CHANGELOG.md
|
|
76
85
|
[34]: https://github.com/oracle/node-oracledb/blob/main/test/README.md
|
|
77
86
|
[35]: https://github.com/oracle/node-oracledb/blob/main/CONTRIBUTING.md
|
|
78
|
-
[36]: http://www.apache.org/licenses/LICENSE-2.0
|
package/SECURITY.md
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Reporting security vulnerabilities
|
|
2
|
+
|
|
3
|
+
Oracle values the independent security research community and believes that
|
|
4
|
+
responsible disclosure of security vulnerabilities helps us ensure the security
|
|
5
|
+
and privacy of all our users.
|
|
6
|
+
|
|
7
|
+
Please do NOT raise a GitHub Issue to report a security vulnerability. If you
|
|
8
|
+
believe you have found a security vulnerability, please submit a report to
|
|
9
|
+
[secalert_us@oracle.com][1] preferably with a proof of concept. Please review
|
|
10
|
+
some additional information on [how to report security vulnerabilities to Oracle][2].
|
|
11
|
+
We encourage people who contact Oracle Security to use email encryption using
|
|
12
|
+
[our encryption key][3].
|
|
13
|
+
|
|
14
|
+
We ask that you do not use other channels or contact the project maintainers
|
|
15
|
+
directly.
|
|
16
|
+
|
|
17
|
+
Non-vulnerability related security issues including ideas for new or improved
|
|
18
|
+
security features are welcome on GitHub Issues.
|
|
19
|
+
|
|
20
|
+
## Security updates, alerts and bulletins
|
|
21
|
+
|
|
22
|
+
Security updates will be released on a regular cadence. Many of our projects
|
|
23
|
+
will typically release security fixes in conjunction with the
|
|
24
|
+
[Oracle Critical Patch Update][3] program. Additional
|
|
25
|
+
information, including past advisories, is available on our [security alerts][4]
|
|
26
|
+
page.
|
|
27
|
+
|
|
28
|
+
## Security-related information
|
|
29
|
+
|
|
30
|
+
We will provide security related information such as a threat model, considerations
|
|
31
|
+
for secure use, or any known security issues in our documentation. Please note
|
|
32
|
+
that labs and sample code are intended to demonstrate a concept and may not be
|
|
33
|
+
sufficiently hardened for production use.
|
|
34
|
+
|
|
35
|
+
[1]: mailto:secalert_us@oracle.com
|
|
36
|
+
[2]: https://www.oracle.com/corporate/security-practices/assurance/vulnerability/reporting.html
|
|
37
|
+
[3]: https://www.oracle.com/security-alerts/encryptionkey.html
|
|
38
|
+
[4]: https://www.oracle.com/security-alerts/
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
oracledb-6.0.1-darwin-x64.node v16.20.0 628884c63240a6680e2dd5a9ff5006cbf373348f ccbaddf0256153ecfa6702c6ae1a4e5003e3775e Fri, 02 Jun 2023 22:13:14 GMT
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
628884c63240a6680e2dd5a9ff5006cbf373348f
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
oracledb-6.0.1-linux-arm64.node v16.19.1 628884c63240a6680e2dd5a9ff5006cbf373348f ccbaddf0256153ecfa6702c6ae1a4e5003e3775e Fri, 02 Jun 2023 16:31:07 GMT
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
oracledb-6.0.1-linux-x64.node v16.20.0 628884c63240a6680e2dd5a9ff5006cbf373348f ccbaddf0256153ecfa6702c6ae1a4e5003e3775e Sat, 03 Jun 2023 06:55:38 GMT
|
|
Binary file
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
oracledb-6.0.1-win32-x64.node v16.19.0 628884c63240a6680e2dd5a9ff5006cbf373348f ccbaddf0256153ecfa6702c6ae1a4e5003e3775e Fri, 02 Jun 2023 16:39:59 GMT
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
# Node-oracledb Examples
|
|
2
|
+
|
|
3
|
+
The directory in node-oracledb's [Github repository](https://github.com/oracle/node-oracledb/tree/main/examples) contains a lot of [node-oracledb](https://www.npmjs.com/package/oracledb)
|
|
4
|
+
examples. Documentation is
|
|
5
|
+
[here](https://node-oracledb.readthedocs.io/en/latest/).
|
|
6
|
+
|
|
7
|
+
To run the examples:
|
|
8
|
+
|
|
9
|
+
- [Install node-oracledb](https://node-oracledb.readthedocs.io/en/latest/user_guide/installation.html#quickstart).
|
|
10
|
+
|
|
11
|
+
- Ensure that you navigate to the `examples` directory in your terminal window
|
|
12
|
+
or IDE, where you are running the samples.
|
|
13
|
+
|
|
14
|
+
- Review `dbconfig.js`. In your terminal window or IDE, set the environment
|
|
15
|
+
variables. For example, set `NODE_ORACLEDB_PASSWORD` to the value of your
|
|
16
|
+
database password.
|
|
17
|
+
|
|
18
|
+
- Review the samples and then run them individually. For example, to see what
|
|
19
|
+
the file `example.js` does, use:
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
node example.js
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
- After running examples, the demonstration objects can be dropped with
|
|
26
|
+
`demodrop.js`:
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
node demodrop.js
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Many examples can be run in either node-oracledb Thin (the default) or Thick
|
|
33
|
+
modes. Thin mode is a pure JavaScript implementation of node-oracledb.
|
|
34
|
+
Setting the environment variable `NODE_ORACLEDB_DRIVER_MODE` to `'thick'` will
|
|
35
|
+
make examples use Thick mode.
|
|
36
|
+
|
|
37
|
+
## Example Overview
|
|
38
|
+
|
|
39
|
+
If this is your first time with node-oracledb, start with
|
|
40
|
+
[`example.js`](example.js).
|
|
41
|
+
|
|
42
|
+
File Name | Description
|
|
43
|
+
----------------------------------------------------------|----------------------------------------------------------------------------------
|
|
44
|
+
[`aqmulti.js`](aqmulti.js) | Oracle Advanced Queuing (AQ) example passing multiple messages
|
|
45
|
+
[`aqobject.js`](aqobject.js) | Oracle Advanced Queuing (AQ) example passing an Oracle Database object
|
|
46
|
+
[`aqoptions.js`](aqoptions.js) | Oracle Advanced Queuing (AQ) example setting options and message attributes
|
|
47
|
+
[`aqraw.js`](aqraw.js) | Basic Oracle Advanced Queuing (AQ) example passing text messages
|
|
48
|
+
[`blobhttp.js`](blobhttp.js) | Simple web app that streams an image
|
|
49
|
+
[`calltimeout.js`](calltimeout.js) | Shows how to cancel a SQL statement if it doesn't complete in a specified time
|
|
50
|
+
[`connect.js`](connect.js) | Basic example for creating a standalone (non-pooled) connection
|
|
51
|
+
[`connectionpool.js`](connectionpool.js) | Basic example creating a pool of connections
|
|
52
|
+
[`cqn1.js`](cqn1.js) | Basic Continuous Query Notification (CQN) example
|
|
53
|
+
[`cqn2.js`](cqn2.js) | Continuous Query Notification with notification grouping
|
|
54
|
+
[`date_timestamp1.js`](date_timestamp1.js) | Show some basic DATE and TIMESTAMP behaviors
|
|
55
|
+
[`date_timestamp2.js`](date_timestamp2.js) | Show some DATE and TIMESTAMP behaviors with timezones
|
|
56
|
+
[`dbconfig.js`](dbconfig.js) | Common file used by examples for setting connection credentials
|
|
57
|
+
[`dbmsoutputgetline.js`](dbmsoutputgetline.js) | Show fetching DBMS_OUTPUT by binding buffers
|
|
58
|
+
[`dbmsoutputpipe.js`](dbmsoutputpipe.js) | Show fetching DBMS_OUTPUT by using a pipelined table
|
|
59
|
+
[`demodrop.js`](demodrop.js) | Drops the schema objects created by the examples
|
|
60
|
+
[`demosetup.js`](demosetup.js) | Used to create common schema objects for the examples
|
|
61
|
+
[`dmlrupd.js`](dmlrupd.js) | Example of DML RETURNING where multiple rows are matched
|
|
62
|
+
[`em_batcherrors.js`](em_batcherrors.js) | `executeMany()` example showing handling data errors
|
|
63
|
+
[`em_dmlreturn1.js`](em_dmlreturn1.js) | `executeMany()` example of DML RETURNING that returns single values
|
|
64
|
+
[`em_dmlreturn2.js`](em_dmlreturn2.js) | `executeMany()` example of DML RETURNING that returns multiple values
|
|
65
|
+
[`em_insert1.js`](em_insert1.js) | Array DML example using `executeMany()` with bind-by-name syntax
|
|
66
|
+
[`em_insert2.js`](em_insert2.js) | Array DML example using `executeMany()` with bind by position
|
|
67
|
+
[`em_plsql.js`](em_plsql.js) | `executeMany()` example calling PL/SQL multiple times with one call
|
|
68
|
+
[`em_rowcounts.js`](em_rowcounts.js) | `executeMany()` example showing how to find the number of rows affected by each input row
|
|
69
|
+
[`endtoend.js`](endtoend.js) | Example showing setting tracing attributes
|
|
70
|
+
[`example.js`](example.js) | Basic example showing creating a table, inserting multiple rows, and querying rows
|
|
71
|
+
[`impres.js`](impres.js) | Shows PL/SQL 'Implict Results' returning multiple query results from PL/SQL code.
|
|
72
|
+
[`insert1.js`](insert1.js) | Basic example creating a table and inserting data. Shows DDL and DML
|
|
73
|
+
[`insert2.js`](insert2.js) | Basic example showing auto commit behavior
|
|
74
|
+
[`lastinsertid.js`](lastinsertid.js) | Shows inserting a row and getting its ROWID.
|
|
75
|
+
[`lobbinds.js`](lobbinds.js) | Demonstrates how to bind and query LOBs
|
|
76
|
+
[`lobinsert1.js`](lobinsert1.js) | Shows inserting a file into a CLOB column
|
|
77
|
+
[`lobinsert2.js`](lobinsert2.js) | Inserts text into a CLOB column using the RETURNING INTO method.
|
|
78
|
+
[`lobinserttemp.js`](lobinserttemp.js) | Writes data to a Temporary CLOB and then inserts it into the database
|
|
79
|
+
[`lobplsqltemp.js`](lobplsqltemp.js) | Streams data into a Temporary CLOB and then passes it to PL/SQL
|
|
80
|
+
[`lobselect.js`](lobselect.js) | Shows basic, non-streaming CLOB and BLOB queries
|
|
81
|
+
[`lobstream1.js`](lobstream1.js) | Shows how to stream LOBs to files
|
|
82
|
+
[`lobstream2.js`](lobstream2.js) | Shows using Stream data events to fetch a CLOB
|
|
83
|
+
[`lowercasecolumns.js`](lowercasecolumns.js) | Shows how a type handler can convert column names to lower case
|
|
84
|
+
[`metadata.js`](metadata.js) | Shows the metadata available after executing SELECT statements
|
|
85
|
+
[`plsqlarray.js`](plsqlarray.js) | Examples of binding PL/SQL "INDEX BY" tables
|
|
86
|
+
[`plsqlfunc.js`](plsqlfunc.js) | How to call a PL/SQL function
|
|
87
|
+
[`plsqlproc.js`](plsqlproc.js) | How to call a PL/SQL procedure
|
|
88
|
+
[`plsqlrecord.js`](plsqlrecord.js) | Shows binding of PL/SQL RECORDS
|
|
89
|
+
[`plsqlvarrayrecord.js`](plsqlvarrayrecord.js) | Shows binding a VARRAY of RECORD in PL/SQL
|
|
90
|
+
[`raw.js`](raw.js) | Shows using a Buffer to insert and select a RAW
|
|
91
|
+
[`refcursor.js`](refcursor.js) | Shows using a ResultSet to fetch rows from a REF CURSOR
|
|
92
|
+
[`refcursortoquerystream.js`](refcursortoquerystream.js) | Converts a REF CURSOR returned from `execute()` to a query stream.
|
|
93
|
+
[`resultset1.js`](resultset1.js) | Executes a query and uses a ResultSet to fetch rows with `getRow()`
|
|
94
|
+
[`resultset2.js`](resultset2.js) | Executes a query and uses a ResultSet to fetch batches of rows with `getRows()`
|
|
95
|
+
[`resultsettoquerystream.js`](resultsettoquerystream.js) | Converts a ResultSet returned from `execute()` into a Readable Stream.
|
|
96
|
+
[`rowlimit.js`](rowlimit.js) | Shows ways to limit the number of records fetched by queries
|
|
97
|
+
[`select1.js`](select1.js) | Executes a basic query without using a connection pool or ResultSet
|
|
98
|
+
[`select2.js`](select2.js) | Executes queries to show array and object output formats
|
|
99
|
+
[`selectgeometry.js`](selectgeometry.js) | Insert and query Oracle Spatial geometries
|
|
100
|
+
[`selectjson.js`](selectjson.js) | Shows some JSON features of Oracle Database 21c
|
|
101
|
+
[`selectjsonblob.js`](selectjsonblob.js) | Shows how to use a BLOB as a JSON column store
|
|
102
|
+
[`selectobject.js`](selectobject.js) | Insert and query a named Oracle database object
|
|
103
|
+
[`selectnestedcursor.js`](selectnestedcursor.js) | Shows selecting from a nested cursor
|
|
104
|
+
[`selectstream.js`](selectstream.js) | Executes a basic query using a Readable Stream
|
|
105
|
+
[`selectvarray.js`](selectvarray.js) | Shows inserting and selecting from a VARRAY column
|
|
106
|
+
[`sessionfixup.js`](sessionfixup.js) | Shows a pooled connection callback to efficiently set session state
|
|
107
|
+
[`sessiontagging1.js`](sessiontagging1.js) | Simple pooled connection tagging for setting session state
|
|
108
|
+
[`sessiontagging2.js`](sessiontagging2.js) | More complex example of pooled connection tagging for setting session state
|
|
109
|
+
[`soda1.js`](soda1.js) | Basic Simple Oracle Document Access (SODA) example
|
|
110
|
+
[`typehandlerdate.js`](typehandlerdate.js) | Show how a type handler can format a queried date in a locale-specific way
|
|
111
|
+
[`typehandlernum.js`](typehandlernum.js) | Show how a type handler can alter queried numbers
|
|
112
|
+
[`version.js`](version.js) | Shows the node-oracledb version attributes
|
|
113
|
+
[`webapp.js`](webapp.js) | A simple web application using a connection pool
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/* Copyright (c) 2015, 2023, Oracle and/or its affiliates. */
|
|
2
|
+
|
|
3
|
+
/******************************************************************************
|
|
4
|
+
*
|
|
5
|
+
* This software is dual-licensed to you under the Universal Permissive License
|
|
6
|
+
* (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl and Apache License
|
|
7
|
+
* 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose
|
|
8
|
+
* either license.
|
|
9
|
+
*
|
|
10
|
+
* If you elect to accept the software under the Apache License, Version 2.0,
|
|
11
|
+
* the following applies:
|
|
12
|
+
*
|
|
13
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
14
|
+
* you may not use this file except in compliance with the License.
|
|
15
|
+
* You may obtain a copy of the License at
|
|
16
|
+
*
|
|
17
|
+
* https://www.apache.org/licenses/LICENSE-2.0
|
|
18
|
+
*
|
|
19
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
20
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
21
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
22
|
+
* See the License for the specific language governing permissions and
|
|
23
|
+
* limitations under the License.
|
|
24
|
+
*
|
|
25
|
+
* NAME
|
|
26
|
+
* dbconfig.js
|
|
27
|
+
*
|
|
28
|
+
* DESCRIPTION
|
|
29
|
+
* Holds the credentials used by node-oracledb examples to connect
|
|
30
|
+
* to the database. Production applications should consider using
|
|
31
|
+
* External Authentication to avoid hard coded credentials.
|
|
32
|
+
*
|
|
33
|
+
* To create a database user see
|
|
34
|
+
* https://blogs.oracle.com/sql/post/how-to-create-users-grant-them-privileges-and-remove-them-in-oracle-database
|
|
35
|
+
*
|
|
36
|
+
* Applications can set the connectString value to an Easy Connect
|
|
37
|
+
* string, or a Net Service Name from a tnsnames.ora file or
|
|
38
|
+
* external naming service, or it can be the name of a local Oracle
|
|
39
|
+
* database instance.
|
|
40
|
+
*
|
|
41
|
+
* If node-oracledb is linked with Instant Client, then an Easy
|
|
42
|
+
* Connect string is generally appropriate. The basic syntax is:
|
|
43
|
+
*
|
|
44
|
+
* [//]host_name[:port][/service_name][:server_type][/instance_name]
|
|
45
|
+
*
|
|
46
|
+
* Commonly just the host_name and service_name are needed
|
|
47
|
+
* e.g. "localhost/orclpdb1" or "example.com/XEPDB1"
|
|
48
|
+
*
|
|
49
|
+
* The Easy Connect syntax was enhanced in Oracle Database 19c to
|
|
50
|
+
* allow more options, refer to the documentation:
|
|
51
|
+
* https://www.oracle.com/pls/topic/lookup?ctx=dblatest&id=GUID-B0437826-43C1-49EC-A94D-B650B6A4A6EE
|
|
52
|
+
*
|
|
53
|
+
* If using a tnsnames.ora file, the file can be in a default
|
|
54
|
+
* location such as $ORACLE_HOME/network/admin/tnsnames.ora or
|
|
55
|
+
* /etc/tnsnames.ora. Alternatively set the TNS_ADMIN environment
|
|
56
|
+
* variable and put the file in $TNS_ADMIN/tnsnames.ora.
|
|
57
|
+
*
|
|
58
|
+
* If connectString is not specified, the empty string "" is used
|
|
59
|
+
* which indicates to connect to the local, default database.
|
|
60
|
+
*
|
|
61
|
+
* External Authentication can be used by setting the optional
|
|
62
|
+
* property externalAuth to true. External Authentication allows
|
|
63
|
+
* applications to use an external password store such as Oracle
|
|
64
|
+
* Wallet so passwords do not need to be hard coded into the
|
|
65
|
+
* application. The user and password properties for connecting or
|
|
66
|
+
* creating a pool should not be set when externalAuth is true.
|
|
67
|
+
*
|
|
68
|
+
* TROUBLESHOOTING
|
|
69
|
+
* Errors like:
|
|
70
|
+
* ORA-12541: TNS:no listener
|
|
71
|
+
* or
|
|
72
|
+
* ORA-12154: TNS:could not resolve the connect identifier specified
|
|
73
|
+
* indicate connectString is invalid.
|
|
74
|
+
*
|
|
75
|
+
* The error:
|
|
76
|
+
* ORA-12514: TNS:listener does not currently know of requested in connect descriptor
|
|
77
|
+
* indicates connectString is invalid. You are reaching a computer
|
|
78
|
+
* with Oracle installed but the service name isn't known.
|
|
79
|
+
* Use 'lsnrctl services' on the database server to find available services
|
|
80
|
+
*
|
|
81
|
+
*****************************************************************************/
|
|
82
|
+
|
|
83
|
+
module.exports = {
|
|
84
|
+
user : process.env.NODE_ORACLEDB_USER,
|
|
85
|
+
|
|
86
|
+
// Get the password from the environment variable
|
|
87
|
+
// NODE_ORACLEDB_PASSWORD. The password could also be a hard coded
|
|
88
|
+
// string (not recommended), or it could be prompted for.
|
|
89
|
+
// Alternatively use External Authentication so that no password is
|
|
90
|
+
// needed.
|
|
91
|
+
password : process.env.NODE_ORACLEDB_PASSWORD,
|
|
92
|
+
|
|
93
|
+
// For information on connection strings see:
|
|
94
|
+
// https://node-oracledb.readthedocs.io/en/latest/user_guide/connection_handling.html#connectionstrings
|
|
95
|
+
connectString : process.env.NODE_ORACLEDB_CONNECTIONSTRING,
|
|
96
|
+
|
|
97
|
+
// Setting externalAuth is optional. It defaults to false. See:
|
|
98
|
+
// https://node-oracledb.readthedocs.io/en/latest/user_guide/connection_handling.html#extauth
|
|
99
|
+
externalAuth : process.env.NODE_ORACLEDB_EXTERNALAUTH ? true : false,
|
|
100
|
+
};
|