[英]How to utilize this MySQL javascript code to create a database / write a query
刚开始学习使用nodejs和javascript制作一些基本的服务器和数据库,我们可以使用以下代码:
var mysql = require('mysql');
var connection = mysql.createConnection(
{
host : 'stusql.dcs.shef.ac.uk',
port : '3306',
user : 'USERNAME',
password : '********',
database : 'DBNAME'
}
);
connection.connect();
var query = connection.query('SELECT * FROM device');
query.on('error', function(err) {
throw err;
});
query.on('fields', function(fields) {
console.log(fields);
});
query.on('result', function(row) {
console.log(row);
});
connection.end();
然后我们应该将登录名和密码放入此代码中(在我的版本中已完成),然后创建一个小型数据库并编写查询 。 我该怎么做?
我是否要去主机,以及如何使用此代码创建一个小型数据库并编写查询...没有解释,我在webstorm IDE上运行了此代码,它运行了,但过了一会儿,它抛出了代码错误。 任何帮助将不胜感激!
尽管您可以执行所需的所有查询,但我认为不需要动态创建数据库或表。 我仅将connection.query()
用于CRUD操作 。
但是仍然可以做到。请参见代码。
我添加了setTimeout()
以便您在运行代码时可以清楚地看到发生了什么。
var mysql = require('mysql');
var config={
host : 'localhost',
port : '3306',
user : 'root',
password : 'root',
}
var connection = mysql.createConnection();
connection.connect(config);
connection.query('drop database if exists mydb',function(err){
if(err)
return console.log(err);
console.log('deleted db');
setTimeout(function(){
connection.query('create database if not exists mydb',function(err){
if(err)
return console.log(err);
console.log('DB Created successfully');
setTimeout(function(){
var qstring='CREATE TABLE mydb.table1 '+
'(id INT NOT NULL,name VARCHAR(45)'+
' NULL,PRIMARY KEY (id));'
connection.query(qstring,function(err){
if(err)
return console.log(err);
console.log('table created successfully');
setTimeout(function(){
var qstring="INSERT INTO mydb.table1 (`id`, `name`) VALUES ('1', 'abc'),('2', 'bcd'),('3','cde')"
connection.query(qstring,function(err){
if(err)
return console.log(err);
console.log('Rows added successfully');
setTimeout(function(){
var query = connection.query('SELECT * FROM mydb.table1');
query.on('error', function(err) {
throw err;
});
query.on('fields', function(fields) {
console.log(fields);
});
query.on('result', function(row) {
console.log(row);
});
},2000);
});
},2000);
});
},2000);
})
},2000);
});
所以我想那是您想要的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.