HTML、JavaScript连接MySQL数据库以及对数据库的表进行修改

要使用HTML和JavaScript连接到MySQL数据库并进行表的修改,通常需要使用一个后端服务器来处理数据库的连接和操作,因为HTML和JavaScript在浏览器中运行,不适合直接连接数据库。常用的后端服务器语言包括Node.js、PHP、Python等。这里我们将使用Node.js作为后端服务器来实现这一功能。

步骤

1.安装Node.js和相关包

  • 确保你已经安装了Node.js。

  • 使用npm安装必要的包:mysqlexpress

    复制代码
    npm install express mysql

    2.设置Node.js服务器

  • 创建一个server.js文件,用于设置Express服务器并连接到MySQL数据库。

    javascript 复制代码
    const express = require('express');
    const mysql = require('mysql');
    const bodyParser = require('body-parser');
    const app = express();
    
    app.use(bodyParser.json());
    
    // 配置MySQL连接
    const db = mysql.createConnection({
        host: 'localhost',
        user: 'your_username',
        password: 'your_password',
        database: 'your_database'
    });
    
    // 连接到MySQL
    db.connect((err) => {
        if (err) {
            throw err;
        }
        console.log('MySQL connected...');
    });
    
    // 创建一个简单的API来处理数据库操作
    app.post('/modify-table', (req, res) => {
        let sql = req.body.query;
        db.query(sql, (err, result) => {
            if (err) {
                res.status(500).send(err);
            }
            res.send(result);
        });
    });
    
    // 启动服务器
    const PORT = process.env.PORT || 3000;
    app.listen(PORT, () => {
        console.log(`Server started on port ${PORT}`);
    });

    3.设置HTML和JavaScript前端

  • 创建一个简单的HTML文件,并使用JavaScript来发送请求到Node.js服务器。

    html 复制代码
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Modify MySQL Table</title>
    </head>
    <body>
        <h1>Modify MySQL Table</h1>
        <form id="query-form">
            <textarea id="query" placeholder="Enter SQL query" rows="4" cols="50"></textarea><br>
            <button type="submit">Submit</button>
        </form>
        <div id="result"></div>
    
        <script>
            document.getElementById('query-form').addEventListener('submit', function (e) {
                e.preventDefault();
                const query = document.getElementById('query').value;
                fetch('/modify-table', {
                    method: 'POST',
                    headers: {
                        'Content-Type': 'application/json'
                    },
                    body: JSON.stringify({ query })
                })
                .then(response => response.json())
                .then(data => {
                    document.getElementById('result').textContent = JSON.stringify(data, null, 2);
                })
                .catch(error => {
                    document.getElementById('result').textContent = 'Error: ' + error;
                });
            });
        </script>
    </body>
    </html>

    运行步骤

  • 确保MySQL服务器正在运行,并且你有一个可用的数据库。

  • your_usernameyour_passwordyour_database替换为实际的MySQL凭据。

  • 启动Node.js服务器:

html 复制代码
node server.js
  • 打开浏览器并访问http://localhost:3000

  • 在文本框中输入SQL查询并提交,例如CREATE TABLE test (id INT, name VARCHAR(50))

这样,你就可以使用HTML和JavaScript通过Node.js服务器连接到MySQL数据库并进行表的修改。请注意,直接在前端输入和执行SQL查询存在安全风险,建议在实际应用中进行适当的安全验证和权限控制。 但是这样的步骤会遇到一个问题:已拦截跨源请求:同源策略禁止读取位于 file:///modify-table 的远程资源。(原因:CORS 请求不是 http)下一篇我将把解决方法发出来遇到相同问题的可以参考参考

我的个人博客

相关推荐
馨谙5 分钟前
SELinux 文件上下文管理详解:从基础到实战
jvm·数据库·oracle
ClouGence11 分钟前
百草味数据架构升级实践:打造 Always Ready 的企业级数据平台
大数据·数据库·数据分析
soda_yo17 分钟前
JavaScripe中你所不知道的"变量提升"
javascript
www_stdio33 分钟前
JavaScript 执行机制详解:从 V8 引擎到执行上下文
前端·javascript
川石课堂软件测试34 分钟前
Python | 高阶函数基本应用及Decorator装饰器
android·开发语言·数据库·python·功能测试·mysql·单元测试
我命由我123451 小时前
HTML - 换行标签的 3 种写法(<br>、<br/>、<br />)
前端·javascript·css·html·css3·html5·js
.又是新的一天.1 小时前
08-Jmeter数据驱动、数据库的操作、命令行执行方式
数据库·jmeter
icebreaker1 小时前
重新思考 weapp-tailwindcss 的未来
前端·javascript·css
LilySesy2 小时前
ABAP+如果在join的时候需要表1的字段某几位等于表2的字段的某几位,需要怎么做?
服务器·前端·数据库·sap·abap·alv
口_天_光健2 小时前
制造企业的数据目录编写
大数据·数据库·数据仓库·数据分析