İlk kapalı, burada benim şimdiki Kurulum:Django'nın syncdb MySQL hatanum ile başarısız: 150
Django: sürüm 1.3
MySQL: sürüm 4.0.18 (değil 1 seçimim ...)
bunun InnoDB yabancı anahtarlar nasıl işleyeceğini ile bir ilgisi vardır anladığım
Creating tables ...
Creating table auth_permission
Creating table auth_group_permissions
Traceback (most recent call last):
File "C:\path_to_app\manage.py", line 14, in <module>
execute_manager(settings)
File "C:\Python27\lib\site-packages\django\core\management\__init__.py", line 438, in execute_manager
utility.execute()
File "C:\Python27\lib\site-packages\django\core\management\__init__.py", line 379, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\Python27\lib\site-packages\django\core\management\base.py", line 191, in run_from_argv
self.execute(*args, **options.__dict__)
File "C:\Python27\lib\site-packages\django\core\management\base.py", line 220, in execute
output = self.handle(*args, **options)
File "C:\Python27\lib\site-packages\django\core\management\base.py", line 351, in handle
return self.handle_noargs(**options)
File "C:\Python27\lib\site-packages\django\core\management\commands\syncdb.py", line 101, in handle_noargs
cursor.execute(statement)
File "C:\Python27\lib\site-packages\django\db\backends\util.py", line 34, in execute
return self.cursor.execute(sql, params)
File "C:\Python27\lib\site-packages\django\db\backends\mysql\base.py", line 86, in execute
return self.cursor.execute(query, args)
File "C:\Python27\lib\site-packages\MySQLdb\cursors.py", line 174, in execute
self.errorhandler(self, exc, value)
File "C:\Python27\lib\site-packages\MySQLdb\connections.py", line 36, in defaulterrorhandler
raise errorclass, errorvalue
_mysql_exceptions.OperationalError: (1005, "Can't create table '.\\database_name\\#sql-d64_e75f2.frm' (errno: 150)")
: Ben syncdb çalıştırdığınızda, aşağıdaki hatayı alıyorum.
"SET table_type = InnoDB" Belirttiğiniz değilDATABASES = {
'default': {
....
'OPTIONS': { 'init_command': 'SET table_type=INNODB;', 'charset': 'latin1'},
},
}
, her şey sorunsuz çalışır: Burada gibi benim ayar dosyası görünüyor budur. Ben net baktım ve InnoDB motoru hakkında bir şey beğenmediği görünüyor InnoDB motoru hakkında bir şey hoşuna gitmiş gibi görünüyor Ben şu anda, benim tek tabloları oluşturmak ve inspectDB kullanarak modelleri oluşturmak için tek bir çalışma hakkında bir şey hoşuna gitmedi. ..
Bunun için bir düzeltme var mı? Teşekkürler!
Tablolarınızı el ile en az karışıklıkla oluşturmak için, ['django-admin.py sql'] çıktısını kopyalayın ve düzenleyin (https://docs.djangoproject.com/en/dev/ref/django-admin/#sql- appname-appname) komutunu kullanın veya ['django-admin.py gümrük '] (https://docs.djangoproject.com/en/dev/ref/django-admin/#sqlcustom-appname-appname) komutunu kullanın. –