mirror of https://github.com/django/django.git
Fixed #4869 -- Added a note that syncdb does not alter existing tables. Thanks,
James Bennett. git-svn-id: http://code.djangoproject.com/svn/django/trunk@5692 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
9fa91e0ab3
commit
d48a39650f
|
@ -400,6 +400,19 @@ install them in the database. This includes any apps shipped with Django that
|
||||||
might be in ``INSTALLED_APPS`` by default. When you start a new project, run
|
might be in ``INSTALLED_APPS`` by default. When you start a new project, run
|
||||||
this command to install the default apps.
|
this command to install the default apps.
|
||||||
|
|
||||||
|
.. admonition:: Syncdb will not alter existing tables
|
||||||
|
|
||||||
|
``syncdb`` will only create tables for models which have not yet been
|
||||||
|
installed. It will *never* issue ``ALTER TABLE`` statements to match
|
||||||
|
changes made to a model class after installation. Changes to model classes
|
||||||
|
and database schemas often involve some form of ambiguity and, in those
|
||||||
|
cases, Django would have to guess at the correct changes to make. There is
|
||||||
|
a risk that critical data would be lost in the process.
|
||||||
|
|
||||||
|
If you have made changes to a model and wish to alter the database tables
|
||||||
|
to match, use the ``sql`` command to display the new SQL structure and
|
||||||
|
compare that to your existing table schema to work out the changes.
|
||||||
|
|
||||||
If you're installing the ``django.contrib.auth`` application, ``syncdb`` will
|
If you're installing the ``django.contrib.auth`` application, ``syncdb`` will
|
||||||
give you the option of creating a superuser immediately.
|
give you the option of creating a superuser immediately.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue