<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                [TOC] # mysql 操作 ## 安裝 mysql 模塊 - `cnpm install mysql` - `const mysql = require('mysql')` ## 建立數據庫連接 ```js // 連接數據庫 function connect() { return mysql.createConnection({ // 這里將常量統一維護在constant對象中 host: constant.dbHost, // ip user: constant.dbUser, // mysql用戶名 password: constant.dbPwd, // mysql密碼 database: 'book' // 數據庫名 }) } const conn = connect() ``` 或者 ```js const mysql = require('mysql') let connection = mysql.createConnection({ host: 'localhost', user: 'root', password: '123456', database: 'test' }) 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) }) ``` ## 增、刪、查、改 ### 查詢數據 step1:建立連接 step2:創建 sql 語句字符串 step3: ```js conn.query(sql, (err, results) => { if(err) { } else { } }) ``` ```js app.get('/book/detail', (req, res) => { const conn = connect() const fileName = req.query.fileName const sql = `select * from book where fileName='${fileName}'` conn.query(sql, (err, results) => { if (err) { res.json({ error_code: 1, msg: '電子書詳情獲取失敗' }) } else { if (results && results.length === 0) { res.json({ error_code: 1, msg: '電子書詳情獲取失敗' }) } else { const book = handleData(results[0]) res.json({ error_code: 0, msg: '獲取成功', data: book }) } } conn.end() // 注意關閉數據庫鏈接 }) }) ``` results返回的數據格式是怎樣的? ![](https://box.kancloud.cn/7b2d6e8cc81ee8b76ca93d9d4415a24a_339x94.png) 查詢結果如下圖 ![](https://box.kancloud.cn/c6da28eb8374b52f372a4adc16370be5_554x72.png) 返回一個數組,results\[0\]可以直接獲取到第一個對象的引用,results\[0\].Sno 可以直接獲取到這個對象的 Sno 屬性對應的值。 ## 插入數據 ```js // ...建立連接的過程省略 const addSql = 'INSERT INTO websites(Id, name, url, alexa, country) VALUES(0, ?, ?, ?, ?)' const addSqlParams = ['菜鳥工具', 'https://c.runoob.com', '23453', 'CN'] connection.connect() connection.query(addSql, addSqlParams, function (err, result) { if (err) { console.log('[INSERT ERROR] - ', err.message) return } console.log('INSERT ID: ', result) }) connection.end() ``` 或者 ```js const sql= 'INSERT INTO websites(Id, name, url, alexa, country) VALUES(0, '菜鳥工具', 'https://c.runoob.com', '23453', 'CN')' connection.query(sql, (err, result) => { // do something... }) ``` 一般都會使用模板字符串: ```js const query = req.query // 獲取URL中的參數 const sql = `SELECT * FROM ${query.table}` ``` 插入成功后返回的信息格式如下: ```js OKPacket { fieldCount: 0, affectedRows: 1, insertId: 3, serverStatus: 2, warningCount: 0, message: '', protocol41: true, changedRows: 0 } ``` ## 更新數據 ```js // ...建立連接的過程省略 const addSql = 'UPDATE websites SET name = ?, url = ? WHERE Id = ?' const addSqlParams = ['菜鳥移動站', 'https://m.runoob.com', 6] connection.connect() connection.query(addSql, addSqlParams, function (err, result) { if (err) { console.log('[UPDATE ERROR] - ', err.message) return } console.log('UPDATE affectedRows: ', result.affectedRows) }) connection.end() ``` 更新成功返回的信息格式如下:與 insert 操作一樣 ```js OKPacket { fieldCount: 0, affectedRows: 1, insertId: 3, serverStatus: 34, warningCount: 0, message: '(Rows matched: 1 Changed: 1 Warnings: 0)', protocol41: true, changedRows: 1 } ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看