2016-09-20 2 views
1

ich ein Tutorial bin nach und unten ist der Code:MySQL mit Sequelize: ER_BAD_DB_ERROR: Unbekannt Datenbank

var Sequelize = require('sequelize') 
var sequelize = new Sequelize('basic-mysql-database.mysql', 'root', 'password', { 
    'dialect': 'mysql', 
    'host': "localhost", 
    "port": "3306" 
}); 

var Todo = sequelize.define('todo', { 
    description: { 
     type: Sequelize.STRING 
    }, 
    completed: { 
     type: Sequelize.BOOLEAN 

    } 
}) 

sequelize.sync().then(function(){ 
    console.log('Everything is synced') 

    Todo.create({ 
     description: 'Walking my dog', 
     completed: false 
    }).then(function (todo){ 
     console.log('Finished!') 
     console.log(todo) 
    }) 
}); 

ich MySQL installiert haben. Wenn ich in Settings>MySQL und sagt, es MySQL Server instance is running

Als ich node testDB.js betreibe ich die folgende Fehlermeldung erhalten:

Unhandled rejection SequelizeConnectionError: ER_BAD_DB_ERROR: Unknown database 'basic-mysql-database.mysql' 
    at Handshake._callback (/Users/Kausi/Documents/Development/todo-api/node_modules/sequelize/lib/dialects/mysql/connection-manager.js:63:20) 
    at Handshake.Sequence.end (/Users/Kausi/Documents/Development/todo-api/node_modules/mysql/lib/protocol/sequences/Sequence.js:85:24) 
    at Handshake.ErrorPacket (/Users/Kausi/Documents/Development/todo-api/node_modules/mysql/lib/protocol/sequences/Handshake.js:105:8) 
    at Protocol._parsePacket (/Users/Kausi/Documents/Development/todo-api/node_modules/mysql/lib/protocol/Protocol.js:280:23) 
    at Parser.write (/Users/Kausi/Documents/Development/todo-api/node_modules/mysql/lib/protocol/Parser.js:74:12) 
    at Protocol.write (/Users/Kausi/Documents/Development/todo-api/node_modules/mysql/lib/protocol/Protocol.js:39:16) 
    at Socket.<anonymous> (/Users/Kausi/Documents/Development/todo-api/node_modules/mysql/lib/Connection.js:109:28) 
    at emitOne (events.js:77:13) 
    at Socket.emit (events.js:169:7) 
    at readableAddChunk (_stream_readable.js:153:18) 
    at Socket.Readable.push (_stream_readable.js:111:10) 
    at TCP.onread (net.js:536:20) 

ich nie schema/Tabelle erstellt haben. Ich habe MySQL Workbench, dass ich das Schema und "Todo" -Tabelle mit erstellen kann; aber ich hatte den Eindruck, dass Sequelize dies im laufenden Betrieb tut? Was mache ich falsch?

+1

Ich glaube nicht, dass Sequelize eine Datenbank für Sie erstellen kann. Es wird nur Tische für dich machen. Erstellen Sie zuerst diese Datenbank, dann lassen Sie den Sequelizer Ihre Tabelle erstellen (erstellen Sie einfach Ihre Datenbank) – Beginner

Antwort

1

Es gibt eine winzige kleine Zeile im Setup, das sagt:

The credentials for the respective database

Sync werden die Tabellen für Sie erstellen, aber es ist nicht die Datenbank gehen zu erstellen.