gpt4 book ai didi

mysql - 使用 Node.js、express 和 MySQL

转载 作者:行者123 更新时间:2023-11-29 12:13:18 27 4
gpt4 key购买 nike

我目前正在创建一个应用程序,我正在使用node.js、express 和 MySQL。我觉得在将服务器连接到数据库方面我有点墨守成规。这是我目前的看法

server.js

var express = require('express');
var app = express();

//These are just my static finals so this can be ignored for now
app.use(express.static(__dirname + '/public'));
app.use(express.static(__dirname + '/public/views'));
app.use(express.static(__dirname + '/public/controlers'));

app.listen(3000);

console.log("Listening at 3000")

在这里,我在我的计算机上设置了一个本地服务器,该服务器正在监听端口 3000。我希望最终在这里做的是处理 post 请求。我的目标是确保将发布请求插入到数据库中。所以我意识到我需要做两件事来创建数据库和数据库架构。现在我只想创建一个包含 ID 和 first_name 列的简单表。我正在使用这个驱动程序https://github.com/felixge/node-mysql/

所以我的下一步是创建连接

dbconnection.js

var mysql = require('mysql')
var app = require('../server.js');

var connection = mysql.createConnection({
host : 'localhost',
port : 3000,
user : 'username',
password : 'password',
database : 'liveDatabase'
});

connection.connect()
//queries and error handling go here
connection.end()

这是我与我的程序失去联系的地方。

这是我不明白的地方:

  • 我不明白如何创建到我的 localhost:3000 的连接。我看到 hostpost 的键值被分配给 localhost 和 3000,并且我需要在 db.js 文件中使用我的服务器(var app = require('../server.js');。这是创建连接所需的全部吗?它如何找到 localhost:3000?我猜这一切都发生在hood,但我感觉有点卡在这里。
  • 我也对数据库感到困惑。我的数据库应该在哪里创建和使用,以便 .createConnection 能够找到它。我是否创建一个单独的 .sql 文件,然后在其中创建我的数据库和表,并在我的 dbconnection.js< 中创建 require(/database/path)/

感谢任何帮助。谢谢!

最佳答案

这只是一个开始,但这似乎是误解的症结所在:

  • 您的 server.js 正在创建一个监听端口 3000 的 Web 服务器。您的 dbconnection.js 正在尝试通过端口 3000 连接到该服务器。那是不对的。您希望它连接到您的 MySQL 服务器。

  • server.js 需要 dbconnection.js 似乎更符合逻辑,而不是相反。然后server.js可以通过所需的模块与数据库发送/接收信息。

关于mysql - 使用 Node.js、express 和 MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30291330/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com