/ / Djangoは、db_nameテーブルで指定されたものと異なるテーブル名を持つSQLを生成します。 - django、oracle、django-models、cx-oracle

Djangoは、db_nameテーブルで指定されたテーブル名とは異なるSQLを生成します。 - django、oracle、django-models、cx-oracle

oracle backendでdjango 1.4を使用しています

私のmodels.pyで私は持っている:

 class ProteinTherapeutics(models.Model):
#...
class Meta:
db_table = "mnowotka"."protein_therapeutics"
managed=False

この:

ProteinTherapeutics.objects.exists()

このSQLを生成する:

SELECT *
FROM
(SELECT ROWNUM AS "_RN",
"_SUB".*
FROM
(SELECT (1) AS "A"
FROM "MNOWOTKA"."PROTEIN_THERAPEFB7C") "_SUB"
WHERE ROWNUM <= 1)
WHERE "_RN" > 0  [1.99ms]

私を助けてくれますか?

回答:

回答№1の場合は-1

私は問題はテーブル名の長さにあると思います。私はdjangoを知っていませんが、私はそれを短縮しようとしていると思います mnowotka "。" protein_therapeutics (31文字)〜30文字です。おそらく、次のようなスキーマ用のメタがあります

class ProteinTherapeutics(models.Model):
#...
class Meta:
db_table = "protein_therapeutics"
schema = "mnowotka"
managed=False