# mysql
[![NPM Version][npm-version-image]][npm-url]
[![NPM Downloads][npm-downloads-image]][npm-url]
[![Node.js Version][node-image]][node-url]
[![Linux Build][travis-image]][travis-url]
[![Windows Build][appveyor-image]][appveyor-url]
[![Test Coverage][coveralls-image]][coveralls-url]
## Table of Contents
- [Install](#install)
- [Introduction](#introduction)
- [Contributors](#contributors)
- [Sponsors](#sponsors)
- [Community](#community)
- [Establishing connections](#establishing-connections)
- [Connection options](#connection-options)
- [SSL options](#ssl-options)
- [Connection flags](#connection-flags)
- [Terminating connections](#terminating-connections)
- [Pooling connections](#pooling-connections)
- [Pool options](#pool-options)
- [Pool events](#pool-events)
- [acquire](#acquire)
- [connection](#connection)
- [enqueue](#enqueue)
- [release](#release)
- [Closing all the connections in a pool](#closing-all-the-connections-in-a-pool)
- [PoolCluster](#poolcluster)
- [PoolCluster options](#poolcluster-options)
- [Switching users and altering connection state](#switching-users-and-altering-connection-state)
- [Server disconnects](#server-disconnects)
- [Performing queries](#performing-queries)
- [Escaping query values](#escaping-query-values)
- [Escaping query identifiers](#escaping-query-identifiers)
- [Preparing Queries](#preparing-queries)
- [Custom format](#custom-format)
- [Getting the id of an inserted row](#getting-the-id-of-an-inserted-row)
- [Getting the number of affected rows](#getting-the-number-of-affected-rows)
- [Getting the number of changed rows](#getting-the-number-of-changed-rows)
- [Getting the connection ID](#getting-the-connection-id)
- [Executing queries in parallel](#executing-queries-in-parallel)
- [Streaming query rows](#streaming-query-rows)
- [Piping results with Streams](#piping-results-with-streams)
- [Multiple statement queries](#multiple-statement-queries)
- [Stored procedures](#stored-procedures)
- [Joins with overlapping column names](#joins-with-overlapping-column-names)
- [Transactions](#transactions)
- [Ping](#ping)
- [Timeouts](#timeouts)
- [Error handling](#error-handling)
- [Exception Safety](#exception-safety)
- [Type casting](#type-casting)
- [Number](#number)
- [Date](#date)
- [Buffer](#buffer)
- [String](#string)
- [Custom type casting](#custom-type-casting)
- [Debugging and reporting problems](#debugging-and-reporting-problems)
- [Security issues](#security-issues)
- [Contributing](#contributing)
- [Running tests](#running-tests)
- [Running unit tests](#running-unit-tests)
- [Running integration tests](#running-integration-tests)
- [Todo](#todo)
## Install
This is a [Node.js](https://nodejs.org/en/) module available through the
[npm registry](https://www.npmjs.com/).
Before installing, [download and install Node.js](https://nodejs.org/en/download/).
Node.js 0.6 or higher is required.
Installation is done using the
[`npm install` command](https://docs.npmjs.com/getting-started/installing-npm-packages-locally):
```sh
$ npm install mysql
```
For information about the previous 0.9.x releases, visit the [v0.9 branch][].
Sometimes I may also ask you to install the latest version from Github to check
if a bugfix is working. In this case, please do:
```sh
$ npm install mysqljs/mysql
```
[v0.9 branch]: https://github.com/mysqljs/mysql/tree/v0.9
## Introduction
This is a node.js driver for mysql. It is written in JavaScript, does not
require compiling, and is 100% MIT licensed.
Here is an example on how to use it:
```js
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'localhost',
user : 'me',
password : 'secret',
database : 'my_db'
});
connection.connect();
connection.query('SELECT 1 + 1 AS solution', function (error, results, fields) {
if (error) throw error;
console.log('The solution is: ', results[0].solution);
});
connection.end();
```
From this example, you can learn the following:
* Every method you invoke on a connection is queued and executed in sequence.
* Closing the connection is done using `end()` which makes sure all remaining
queries are executed before sending a quit packet to the mysql server.
## Contributors
Thanks goes to the people who have contributed code to this module, see the
[GitHub Contributors page][].
[GitHub Contributors page]: https://github.com/mysqljs/mysql/graphs/contributors
Additionally I'd like to thank the following people:
* [Andrey Hristov][] (Oracle) - for helping me with protocol questions.
* [Ulf Wendel][] (Oracle) - for helping me with protocol questions.
[Ulf Wendel]: http://blog.ulf-wendel.de/
[Andrey Hristov]: http://andrey.hristov.com/
## Sponsors
The following companies have supported this project financially, allowing me to
spend more time on it (ordered by time of contribution):
* [Transloadit](http://transloadit.com) (my startup, we do file uploading &
video encoding as a service, check it out)
* [Joyent](http://www.joyent.com/)
* [pinkbike.com](http://pinkbike.com/)
* [Holiday Extras](http://www.holidayextras.co.uk/) (they are [hiring](http://join.holidayextras.co.uk/))
* [Newscope](http://newscope.com/) (they are [hiring](https://newscope.com/unternehmen/jobs/))
## Community
If you'd like to discuss this module, or ask questions about it, please use one
of the following:
* **Mailing list**: https://groups.google.com/forum/#!forum/node-mysql
* **IRC Channel**: #node.js (on freenode.net, I pay attention to any message
including the term `mysql`)
## Establishing connections
The recommended way to establish a connection is this:
```js
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'example.org',
user : 'bob',
password : 'secret'
});
connection.connect(function(err) {
if (err) {
console.error('error connecting: ' + err.stack);
return;
}
console.log('connected as id ' + connection.threadId);
});
```
However, a connection can also be implicitly established by invoking a query:
```js
var mysql = require('mysql');
var connection = mysql.createConnection(...);
connection.query('SELECT 1', function (error, results, fields) {
if (error) throw error;
// connected!
});
```
Depending on how you like to handle your errors, either method may be
appropriate. Any type of connection error (handshake or network) is considered
a fatal error, see the [Error Handling](#error-handling) section for more
information.
## Connection options
When establishing a connection, you can set the following options:
* `host`: The hostname of the database you are connecting to. (Default:
`localhost`)
* `port`: The port number to connect to. (Default: `3306`)
* `localAddress`: The source IP address to use for TCP connection. (Optional)
* `socketPath`: The path to a unix domain socket to connect to. When used `host`
and `port` are ignored.
* `user`: The MySQL user to authenticate as.
* `password`: The password of that MySQL user.
* `database`: Name of the database to use for this connection (Optional).
* `charset`: The charset for the connection. This is called "collation" in the SQL-level
of MySQL (like `utf8_general_ci`). If a SQL-level charset is specified (like `utf8mb4`)
then the default collation for that charset is used. (Default: `'UTF8_GENERAL_CI'`)
* `timezone`: The timezone configured on the MySQL server. This is used to type cast server date/time values to JavaScript `Date` object and vice versa. This can be `'local'`, `'Z'`, or an offset in the form `+HH:MM` or `-HH:MM`. (Default: `'local'`)
* `connectTimeout`: The milliseconds before a timeout occurs during the initial connection
to the MySQL server. (Default: `10000`)
* `stringifyObjects`: Stringify objects instead of converting to values. See
issue [#501](https://github.com/mysqljs/mysql/issues/501). (Default: `false`)
* `insecureAuth`: Allow connecting to MySQL instances that ask for the old
(insecure) authentica
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
1、旅游指南:旅游小程序为会根据当下旅游市场情况,为用户提供当下最新的旅游指南。 2、旅游方案:系统会根据不同的不同需求,提供相对应的旅游方案,帮助用户解决相应的旅游需求。 3、公司服务:旅游小程序公司会为帮助用户解决旅游路上的衣食住行等需求。 4、景点介绍:用户可以将自己制作好的旅游攻略发送给自己的用户观看,从而实现查看自己喜欢的景点的目的。 5、旅游社区:在旅游社区中,每个人都可以分享自己的旅游经历与经验,从而为他人增长旅游经验。 6、在线咨询:通过在线打电话功能,用户可以在线购买门票、车票、预订餐饮等服务。
资源推荐
资源详情
资源评论
收起资源包目录
基于Node Express +MySQL微信小程序的设计与开发(旅游小程序) (524个子文件)
mime.cmd 271B
.editorconfig 399B
.eslintignore 5B
.eslintrc 647B
.eslintrc 422B
.eslintrc 180B
API.html 85KB
b3.jpg 426KB
baotuquan.jpg 220KB
baotuquan.jpg 220KB
b1.jpg 217KB
dingtu2.jpg 168KB
dingtu1.jpg 162KB
fangte.jpg 112KB
fangte.jpg 112KB
b2.jpg 62KB
hongyegu.jpg 62KB
hongyegu.jpg 62KB
goods1.jpg 62KB
JghWXF.jpg 50KB
daminghu.jpg 49KB
daminghu.jpg 49KB
Jg4Q3V.jpg 44KB
Jg5tsS.jpg 42KB
Jg4vvT.jpg 40KB
JgfOds.jpg 30KB
dongwuyuan.jpg 25KB
dongwuyuan.jpg 25KB
qianfoshan.jpg 16KB
qianfoshan.jpg 16KB
errors.js 172KB
bignumber.js 87KB
ssl_profiles.js 81KB
sbcs-data-generated.js 31KB
_stream_readable.js 31KB
parse.js 27KB
response.js 26KB
qs.js 24KB
stringify.js 24KB
index.js 23KB
dbcs-codec.js 21KB
_stream_writable.js 20KB
ipaddr.js 19KB
bignumber.min.js 18KB
tests.js 15KB
index.js 15KB
application.js 14KB
Connection.js 14KB
Parser.js 13KB
request.js 12KB
Protocol.js 11KB
charsets.js 11KB
index.js 10KB
index.js 10KB
ipaddr.min.js 10KB
string_decoder.js 9KB
utf7.js 9KB
extend-node.js 8KB
app.js 8KB
parse.js 8KB
dbcs-data.js 8KB
stringify.js 8KB
_stream_transform.js 8KB
Pool.js 7KB
ConnectionConfig.js 6KB
index.js 6KB
PoolCluster.js 6KB
index.js 6KB
utils.js 6KB
internal.js 6KB
index.js 6KB
node.js 6KB
index.js 6KB
utils.js 6KB
index.js 6KB
SqlString.js 6KB
urlencoded.js 6KB
Query.js 6KB
index.js 5KB
PacketWriter.js 5KB
mediaType.js 5KB
index.js 5KB
index.js 5KB
utils.js 5KB
utf16.js 5KB
json.js 5KB
index.js 5KB
browser.js 5KB
sbcs-data.js 5KB
index.js 4KB
index.js 4KB
debug.js 4KB
Auth.js 4KB
route.js 4KB
RowDataPacket.js 4KB
index.js 4KB
_stream_duplex.js 4KB
HandshakeInitializationPacket.js 4KB
read.js 4KB
Handshake.js 4KB
共 524 条
- 1
- 2
- 3
- 4
- 5
- 6
资源评论
年轻就是资本Pluto
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 通信拓扑图标,包括数通、接入网、核心网等图标
- 课设毕设基于SSM的贝儿米幼儿教育管理系统-LW+PPT+源码可运行.zip
- M2M开发套件程序 2024-5-16
- 课设毕设基于SSM的宜佰丰超市进销存管理系统-LW+PPT+源码可运行.zip
- 课设毕设基于SSM的医院远程诊断系统-LW+PPT+源码可运行.zip
- 编码解码,(UTF16+UTF32+UTF8+ANSI)获取文本文件编码类型易语言源码
- 课设毕设基于SSM的网络视频播放器-LW+PPT+源码可运行.zip
- 课设毕设基于SSM的农产品供销服务系统-LW+PPT+源码可运行.zip
- 课设毕设基于SSM的高校四六级报名管理系统-LW+PPT+源码可运行.zip
- 课设毕设基于SSM的高校二手交易平台-LW+PPT+源码可运行.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功