Does the first instance of a model have an id of 0 or 1?
I'm wondering if the very first instance of a model has an id of 0 or 1?
I'm interested in default functionality for PostgreSQL and SQLite.
Thanks!
django django-models
add a comment |
I'm wondering if the very first instance of a model has an id of 0 or 1?
I'm interested in default functionality for PostgreSQL and SQLite.
Thanks!
django django-models
1
That depends, strictly speaking, on the underlying database. For most databases it is1
. It is anAutoField
, and the ids are assigned by the database, in some databases, like PostgreSQL, you can provide it a different sequence, and thus dispatchid
s in a totally different way. But it is typically a bad idea to "work with these ids". Personally I think it is better to see ids as "blackbox" identifiers, where the content/type/... is unknown.
– Willem Van Onsem
Jan 2 at 20:01
Sorry. I should have been more clear. I'm interested in SQLLite and PostgreSQL databases. Thanks!
– Jason Howard
Jan 2 at 20:05
add a comment |
I'm wondering if the very first instance of a model has an id of 0 or 1?
I'm interested in default functionality for PostgreSQL and SQLite.
Thanks!
django django-models
I'm wondering if the very first instance of a model has an id of 0 or 1?
I'm interested in default functionality for PostgreSQL and SQLite.
Thanks!
django django-models
django django-models
edited Jan 2 at 20:12
Jason Howard
asked Jan 2 at 20:00
Jason HowardJason Howard
318112
318112
1
That depends, strictly speaking, on the underlying database. For most databases it is1
. It is anAutoField
, and the ids are assigned by the database, in some databases, like PostgreSQL, you can provide it a different sequence, and thus dispatchid
s in a totally different way. But it is typically a bad idea to "work with these ids". Personally I think it is better to see ids as "blackbox" identifiers, where the content/type/... is unknown.
– Willem Van Onsem
Jan 2 at 20:01
Sorry. I should have been more clear. I'm interested in SQLLite and PostgreSQL databases. Thanks!
– Jason Howard
Jan 2 at 20:05
add a comment |
1
That depends, strictly speaking, on the underlying database. For most databases it is1
. It is anAutoField
, and the ids are assigned by the database, in some databases, like PostgreSQL, you can provide it a different sequence, and thus dispatchid
s in a totally different way. But it is typically a bad idea to "work with these ids". Personally I think it is better to see ids as "blackbox" identifiers, where the content/type/... is unknown.
– Willem Van Onsem
Jan 2 at 20:01
Sorry. I should have been more clear. I'm interested in SQLLite and PostgreSQL databases. Thanks!
– Jason Howard
Jan 2 at 20:05
1
1
That depends, strictly speaking, on the underlying database. For most databases it is
1
. It is an AutoField
, and the ids are assigned by the database, in some databases, like PostgreSQL, you can provide it a different sequence, and thus dispatch id
s in a totally different way. But it is typically a bad idea to "work with these ids". Personally I think it is better to see ids as "blackbox" identifiers, where the content/type/... is unknown.– Willem Van Onsem
Jan 2 at 20:01
That depends, strictly speaking, on the underlying database. For most databases it is
1
. It is an AutoField
, and the ids are assigned by the database, in some databases, like PostgreSQL, you can provide it a different sequence, and thus dispatch id
s in a totally different way. But it is typically a bad idea to "work with these ids". Personally I think it is better to see ids as "blackbox" identifiers, where the content/type/... is unknown.– Willem Van Onsem
Jan 2 at 20:01
Sorry. I should have been more clear. I'm interested in SQLLite and PostgreSQL databases. Thanks!
– Jason Howard
Jan 2 at 20:05
Sorry. I should have been more clear. I'm interested in SQLLite and PostgreSQL databases. Thanks!
– Jason Howard
Jan 2 at 20:05
add a comment |
1 Answer
1
active
oldest
votes
Both SQLite and PostgreSQL use 1 as the default starting point for auto-increment style indicies (assuming an increasing value).
From the SQLite docs on autoincrement:
If the table is initially empty, then a ROWID of 1 is used.
From the PostgreSQL docs on sequences:
The optional clause
MINVALUE minvalue
determines the minimum value a sequence can generate. If this clause is not supplied orNO MINVALUE
is specified, then defaults will be used. The defaults are1
and-2^63 - 1
for ascending and descending sequences, respectively.
thanks for the info!
– Jason Howard
Jan 2 at 22:13
add a comment |
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%2f54012424%2fdoes-the-first-instance-of-a-model-have-an-id-of-0-or-1%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
Both SQLite and PostgreSQL use 1 as the default starting point for auto-increment style indicies (assuming an increasing value).
From the SQLite docs on autoincrement:
If the table is initially empty, then a ROWID of 1 is used.
From the PostgreSQL docs on sequences:
The optional clause
MINVALUE minvalue
determines the minimum value a sequence can generate. If this clause is not supplied orNO MINVALUE
is specified, then defaults will be used. The defaults are1
and-2^63 - 1
for ascending and descending sequences, respectively.
thanks for the info!
– Jason Howard
Jan 2 at 22:13
add a comment |
Both SQLite and PostgreSQL use 1 as the default starting point for auto-increment style indicies (assuming an increasing value).
From the SQLite docs on autoincrement:
If the table is initially empty, then a ROWID of 1 is used.
From the PostgreSQL docs on sequences:
The optional clause
MINVALUE minvalue
determines the minimum value a sequence can generate. If this clause is not supplied orNO MINVALUE
is specified, then defaults will be used. The defaults are1
and-2^63 - 1
for ascending and descending sequences, respectively.
thanks for the info!
– Jason Howard
Jan 2 at 22:13
add a comment |
Both SQLite and PostgreSQL use 1 as the default starting point for auto-increment style indicies (assuming an increasing value).
From the SQLite docs on autoincrement:
If the table is initially empty, then a ROWID of 1 is used.
From the PostgreSQL docs on sequences:
The optional clause
MINVALUE minvalue
determines the minimum value a sequence can generate. If this clause is not supplied orNO MINVALUE
is specified, then defaults will be used. The defaults are1
and-2^63 - 1
for ascending and descending sequences, respectively.
Both SQLite and PostgreSQL use 1 as the default starting point for auto-increment style indicies (assuming an increasing value).
From the SQLite docs on autoincrement:
If the table is initially empty, then a ROWID of 1 is used.
From the PostgreSQL docs on sequences:
The optional clause
MINVALUE minvalue
determines the minimum value a sequence can generate. If this clause is not supplied orNO MINVALUE
is specified, then defaults will be used. The defaults are1
and-2^63 - 1
for ascending and descending sequences, respectively.
answered Jan 2 at 20:17
Jonah BishopJonah Bishop
9,07433357
9,07433357
thanks for the info!
– Jason Howard
Jan 2 at 22:13
add a comment |
thanks for the info!
– Jason Howard
Jan 2 at 22:13
thanks for the info!
– Jason Howard
Jan 2 at 22:13
thanks for the info!
– Jason Howard
Jan 2 at 22:13
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.
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%2f54012424%2fdoes-the-first-instance-of-a-model-have-an-id-of-0-or-1%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
1
That depends, strictly speaking, on the underlying database. For most databases it is
1
. It is anAutoField
, and the ids are assigned by the database, in some databases, like PostgreSQL, you can provide it a different sequence, and thus dispatchid
s in a totally different way. But it is typically a bad idea to "work with these ids". Personally I think it is better to see ids as "blackbox" identifiers, where the content/type/... is unknown.– Willem Van Onsem
Jan 2 at 20:01
Sorry. I should have been more clear. I'm interested in SQLLite and PostgreSQL databases. Thanks!
– Jason Howard
Jan 2 at 20:05