How to define an index, within a Sequelize model?
I'm trying to create a simple non-unique index for one of my SQL columns, inside a Sequelize model. I tried to follow this post :How to define unique index on multiple columns in sequelize .
This is my code:
module.exports = (sequelize, DataTypes) => {
const Item = sequelize.define('Item', {
itemId: DataTypes.STRING,
ownerId: DataTypes.INTEGER,
status: DataTypes.STRING,
type: DataTypes.STRING,
nature: DataTypes.STRING,
content: DataTypes.STRING,
moment: DataTypes.BIGINT,
indexes:[
{
unique: 'false',
fields:['ownerId']
}
]
});
return Item;
};
I get this error:
Unhandled rejection SequelizeDatabaseError: You have an error in your
SQL syntax; check the manual that corresponds to your MariaDB server
version for the right syntax to use near '[object Object],createdAt
DATETIME NOT NULL,updatedAt
DATETIME NOT NULL, P' at line 1
The code that i have in my server.js file is this:
models.sequelize.sync().then(function () {
server.listen(port, () => {
console.log('server ready')
})
});
What is wrong with my setup? Is there any other way this can be done with Sequelize?
mysql sql node.js sequelize.js
add a comment |
I'm trying to create a simple non-unique index for one of my SQL columns, inside a Sequelize model. I tried to follow this post :How to define unique index on multiple columns in sequelize .
This is my code:
module.exports = (sequelize, DataTypes) => {
const Item = sequelize.define('Item', {
itemId: DataTypes.STRING,
ownerId: DataTypes.INTEGER,
status: DataTypes.STRING,
type: DataTypes.STRING,
nature: DataTypes.STRING,
content: DataTypes.STRING,
moment: DataTypes.BIGINT,
indexes:[
{
unique: 'false',
fields:['ownerId']
}
]
});
return Item;
};
I get this error:
Unhandled rejection SequelizeDatabaseError: You have an error in your
SQL syntax; check the manual that corresponds to your MariaDB server
version for the right syntax to use near '[object Object],createdAt
DATETIME NOT NULL,updatedAt
DATETIME NOT NULL, P' at line 1
The code that i have in my server.js file is this:
models.sequelize.sync().then(function () {
server.listen(port, () => {
console.log('server ready')
})
});
What is wrong with my setup? Is there any other way this can be done with Sequelize?
mysql sql node.js sequelize.js
add a comment |
I'm trying to create a simple non-unique index for one of my SQL columns, inside a Sequelize model. I tried to follow this post :How to define unique index on multiple columns in sequelize .
This is my code:
module.exports = (sequelize, DataTypes) => {
const Item = sequelize.define('Item', {
itemId: DataTypes.STRING,
ownerId: DataTypes.INTEGER,
status: DataTypes.STRING,
type: DataTypes.STRING,
nature: DataTypes.STRING,
content: DataTypes.STRING,
moment: DataTypes.BIGINT,
indexes:[
{
unique: 'false',
fields:['ownerId']
}
]
});
return Item;
};
I get this error:
Unhandled rejection SequelizeDatabaseError: You have an error in your
SQL syntax; check the manual that corresponds to your MariaDB server
version for the right syntax to use near '[object Object],createdAt
DATETIME NOT NULL,updatedAt
DATETIME NOT NULL, P' at line 1
The code that i have in my server.js file is this:
models.sequelize.sync().then(function () {
server.listen(port, () => {
console.log('server ready')
})
});
What is wrong with my setup? Is there any other way this can be done with Sequelize?
mysql sql node.js sequelize.js
I'm trying to create a simple non-unique index for one of my SQL columns, inside a Sequelize model. I tried to follow this post :How to define unique index on multiple columns in sequelize .
This is my code:
module.exports = (sequelize, DataTypes) => {
const Item = sequelize.define('Item', {
itemId: DataTypes.STRING,
ownerId: DataTypes.INTEGER,
status: DataTypes.STRING,
type: DataTypes.STRING,
nature: DataTypes.STRING,
content: DataTypes.STRING,
moment: DataTypes.BIGINT,
indexes:[
{
unique: 'false',
fields:['ownerId']
}
]
});
return Item;
};
I get this error:
Unhandled rejection SequelizeDatabaseError: You have an error in your
SQL syntax; check the manual that corresponds to your MariaDB server
version for the right syntax to use near '[object Object],createdAt
DATETIME NOT NULL,updatedAt
DATETIME NOT NULL, P' at line 1
The code that i have in my server.js file is this:
models.sequelize.sync().then(function () {
server.listen(port, () => {
console.log('server ready')
})
});
What is wrong with my setup? Is there any other way this can be done with Sequelize?
mysql sql node.js sequelize.js
mysql sql node.js sequelize.js
asked Dec 27 at 14:20
sheff2k1
373212
373212
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
Almost there. You should add indexes in a new object like this:
module.exports = (sequelize, DataTypes) => {
const Item = sequelize.define('Item', {
itemId: DataTypes.STRING,
ownerId: DataTypes.INTEGER,
status: DataTypes.STRING,
type: DataTypes.STRING,
nature: DataTypes.STRING,
content: DataTypes.STRING,
moment: DataTypes.BIGINT
},
{
indexes:[
{
unique: false,
fields:['ownerId']
}
]
});
return Item;
};
Lol i missed those brackets...thank you
– sheff2k1
Dec 27 at 14:28
1
Hehe. If this solves this issue, then please accept my answer :)
– Roi
Dec 27 at 14:29
I will, in 4 minutes, when it allows me to :D
– sheff2k1
Dec 27 at 14:31
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53946532%2fhow-to-define-an-index-within-a-sequelize-model%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Almost there. You should add indexes in a new object like this:
module.exports = (sequelize, DataTypes) => {
const Item = sequelize.define('Item', {
itemId: DataTypes.STRING,
ownerId: DataTypes.INTEGER,
status: DataTypes.STRING,
type: DataTypes.STRING,
nature: DataTypes.STRING,
content: DataTypes.STRING,
moment: DataTypes.BIGINT
},
{
indexes:[
{
unique: false,
fields:['ownerId']
}
]
});
return Item;
};
Lol i missed those brackets...thank you
– sheff2k1
Dec 27 at 14:28
1
Hehe. If this solves this issue, then please accept my answer :)
– Roi
Dec 27 at 14:29
I will, in 4 minutes, when it allows me to :D
– sheff2k1
Dec 27 at 14:31
add a comment |
Almost there. You should add indexes in a new object like this:
module.exports = (sequelize, DataTypes) => {
const Item = sequelize.define('Item', {
itemId: DataTypes.STRING,
ownerId: DataTypes.INTEGER,
status: DataTypes.STRING,
type: DataTypes.STRING,
nature: DataTypes.STRING,
content: DataTypes.STRING,
moment: DataTypes.BIGINT
},
{
indexes:[
{
unique: false,
fields:['ownerId']
}
]
});
return Item;
};
Lol i missed those brackets...thank you
– sheff2k1
Dec 27 at 14:28
1
Hehe. If this solves this issue, then please accept my answer :)
– Roi
Dec 27 at 14:29
I will, in 4 minutes, when it allows me to :D
– sheff2k1
Dec 27 at 14:31
add a comment |
Almost there. You should add indexes in a new object like this:
module.exports = (sequelize, DataTypes) => {
const Item = sequelize.define('Item', {
itemId: DataTypes.STRING,
ownerId: DataTypes.INTEGER,
status: DataTypes.STRING,
type: DataTypes.STRING,
nature: DataTypes.STRING,
content: DataTypes.STRING,
moment: DataTypes.BIGINT
},
{
indexes:[
{
unique: false,
fields:['ownerId']
}
]
});
return Item;
};
Almost there. You should add indexes in a new object like this:
module.exports = (sequelize, DataTypes) => {
const Item = sequelize.define('Item', {
itemId: DataTypes.STRING,
ownerId: DataTypes.INTEGER,
status: DataTypes.STRING,
type: DataTypes.STRING,
nature: DataTypes.STRING,
content: DataTypes.STRING,
moment: DataTypes.BIGINT
},
{
indexes:[
{
unique: false,
fields:['ownerId']
}
]
});
return Item;
};
answered Dec 27 at 14:25
Roi
459111
459111
Lol i missed those brackets...thank you
– sheff2k1
Dec 27 at 14:28
1
Hehe. If this solves this issue, then please accept my answer :)
– Roi
Dec 27 at 14:29
I will, in 4 minutes, when it allows me to :D
– sheff2k1
Dec 27 at 14:31
add a comment |
Lol i missed those brackets...thank you
– sheff2k1
Dec 27 at 14:28
1
Hehe. If this solves this issue, then please accept my answer :)
– Roi
Dec 27 at 14:29
I will, in 4 minutes, when it allows me to :D
– sheff2k1
Dec 27 at 14:31
Lol i missed those brackets...thank you
– sheff2k1
Dec 27 at 14:28
Lol i missed those brackets...thank you
– sheff2k1
Dec 27 at 14:28
1
1
Hehe. If this solves this issue, then please accept my answer :)
– Roi
Dec 27 at 14:29
Hehe. If this solves this issue, then please accept my answer :)
– Roi
Dec 27 at 14:29
I will, in 4 minutes, when it allows me to :D
– sheff2k1
Dec 27 at 14:31
I will, in 4 minutes, when it allows me to :D
– sheff2k1
Dec 27 at 14:31
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53946532%2fhow-to-define-an-index-within-a-sequelize-model%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown