最近對一個django專案進行修改,其中在models.py添加了新的欄位,需要同步到資料庫。
嘗試使用
python manage.py syncdb
提示成功,但未對資料庫進行任何操作,到資料庫中檢視,新欄位並沒有同步進來。
解決辦法如下:
python manage.py shell
進入後
from django.db import connection
新建一個cursor,用於連線
cursor=conneciton.cursor()
下一步就可以進行對資料庫的操作了,把在model中定義的量加入表中:
cursor.execute("ALTER TABLE table_name add port Integer default 0")
sql 語法:ALTER TABLE table_name add col_name col_type default ..
到這步已經新增完成
下面補充一下,如果在已有django專案裡面新建一張表,該如何操作:
例如,在app下面models.py中新加一張表後,嘗試使用
發現結果提示並沒有新建的列表
此時應該可以進行同步了,新表會提示建立在資料庫中
最近對一個django專案進行修改,其中在models.py添加了新的欄位,需要同步到資料庫。
嘗試使用
python manage.py syncdb
提示成功,但未對資料庫進行任何操作,到資料庫中檢視,新欄位並沒有同步進來。
解決辦法如下:
python manage.py shell
進入後
from django.db import connection
新建一個cursor,用於連線
cursor=conneciton.cursor()
下一步就可以進行對資料庫的操作了,把在model中定義的量加入表中:
cursor.execute("ALTER TABLE table_name add port Integer default 0")
sql 語法:ALTER TABLE table_name add col_name col_type default ..
到這步已經新增完成
下面補充一下,如果在已有django專案裡面新建一張表,該如何操作:
例如,在app下面models.py中新加一張表後,嘗試使用
python manage.py syncdb
發現結果提示並沒有新建的列表
python manage.py syncdb
此時應該可以進行同步了,新表會提示建立在資料庫中