{"title":"FRÅGOR OCH SVAR: Databaser och modeller","version":"6.1","locale":"sv","docname":"faq/models","url":"/sv/6.1/faq/models/","canonical":"https://djangodocs.dev/sv/6.1/faq/models/","summary":"Hur kan jag se de råa SQL-frågorna som Django kör? Link to this heading # Se till att din Django DEBUG -inställning är inställd på True . Gör sedan så här: Python…","html":"<h1>FRÅGOR OCH SVAR: Databaser och modeller<a class=\"heading-anchor\" href=\"#faq-databases-and-models\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<section id=\"how-can-i-see-the-raw-sql-queries-django-is-running\">\n<span id=\"faq-see-raw-sql-queries\"></span><h2>Hur kan jag se de råa SQL-frågorna som Django kör?<a class=\"heading-anchor\" href=\"#how-can-i-see-the-raw-sql-queries-django-is-running\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Se till att din Django <a class=\"reference internal\" href=\"/sv/6.1/ref/settings/#std-setting-DEBUG\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">DEBUG</span></code></a>-inställning är inställd på <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>. Gör sedan så här:</p>\n<div class=\"code-block\" data-language=\"pycon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python console</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Python console code\"><code><span class=\"gp\">&gt;&gt;&gt; </span><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.db</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">connection</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">connection</span><span class=\"o\">.</span><span class=\"n\">queries</span>\n<span class=\"go\">[{&#39;sql&#39;: &#39;SELECT polls_polls.id, polls_polls.question, polls_polls.pub_date FROM polls_polls&#39;,</span>\n<span class=\"go\">&#39;time&#39;: &#39;0.002&#39;}]</span>\n</code></pre></div>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">connection.queries</span></code> är endast tillgänglig om <a class=\"reference internal\" href=\"/sv/6.1/ref/settings/#std-setting-DEBUG\"><code class=\"xref std std-setting docutils literal notranslate\"><span class=\"pre\">DEBUG</span></code></a> är <code class=\"docutils literal notranslate\"><span class=\"pre\">True</span></code>. Det är en lista över ordböcker i frågeexekveringsordning. Varje ordbok har följande:</p>\n<ul class=\"simple\">\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">sql</span></code> - Den obearbetade SQL-satsen</p></li>\n<li><p><code class=\"docutils literal notranslate\"><span class=\"pre\">time</span></code> - Hur lång tid det tog att utföra uttalandet, i sekunder.</p></li>\n</ul>\n<p><code class=\"docutils literal notranslate\"><span class=\"pre\">connection.queries</span></code> inkluderar alla SQL-satser - INSERT, UPDATES, SELECT, etc. Varje gång din app träffar databasen kommer frågan att registreras.</p>\n<p>Om du använder <a class=\"reference internal\" href=\"/sv/6.1/topics/db/multi-db/\"><span class=\"doc\">flera databaser</span></a> kan du använda samma gränssnitt för varje medlem i ordlistan connections`:</p>\n<div class=\"code-block\" data-language=\"pycon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python console</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Python console code\"><code><span class=\"gp\">&gt;&gt;&gt; </span><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.db</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">connections</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">connections</span><span class=\"p\">[</span><span class=\"s2\">&quot;my_db_alias&quot;</span><span class=\"p\">]</span><span class=\"o\">.</span><span class=\"n\">queries</span>\n</code></pre></div>\n<p>Om du behöver rensa frågelistan manuellt vid någon tidpunkt i dina funktioner, anropa <code class=\"docutils literal notranslate\"><span class=\"pre\">reset_queries()</span></code>, så här:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.db</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">reset_queries</span>\n\n<span class=\"n\">reset_queries</span><span class=\"p\">()</span>\n</code></pre></div>\n</section>\n<section id=\"can-i-use-django-with-a-preexisting-database\">\n<h2>Kan jag använda Django med en redan befintlig databas?<a class=\"heading-anchor\" href=\"#can-i-use-django-with-a-preexisting-database\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Ja, se <a class=\"reference internal\" href=\"/sv/6.1/howto/legacy-databases/\"><span class=\"doc\">Integrering med en äldre databas</span></a>.</p>\n</section>\n<section id=\"if-i-make-changes-to-a-model-how-do-i-update-the-database\">\n<h2>Om jag gör ändringar i en modell, hur uppdaterar jag då databasen?<a class=\"heading-anchor\" href=\"#if-i-make-changes-to-a-model-how-do-i-update-the-database\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Ta en titt på Djangos stöd för <a class=\"reference internal\" href=\"/sv/6.1/topics/migrations/#module-django.db.migrations\" title=\"django.db.migrations: Schema migration support for Django models\"><code class=\"xref py py-mod docutils literal notranslate\"><span class=\"pre\">schemamigreringar</span></code></a>.</p>\n<p>Om du inte har något emot att rensa data har verktyget <code class=\"docutils literal notranslate\"><span class=\"pre\">manage.py</span></code> i ditt projekt ett alternativ <code class=\"xref std std-djadmin docutils literal notranslate\"><span class=\"pre\">flush`</span></code> som återställer databasen till det tillstånd den hade omedelbart efter att <code class=\"xref std std-djadmin docutils literal notranslate\"><span class=\"pre\">migrate`</span></code> kördes.</p>\n</section>\n<section id=\"do-django-models-support-multiple-column-primary-keys\">\n<h2>Har Django-modeller stöd för primärnycklar med flera kolumner?<a class=\"heading-anchor\" href=\"#do-django-models-support-multiple-column-primary-keys\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Partially. See <a class=\"reference internal\" href=\"/sv/6.1/topics/composite-primary-key/\"><span class=\"doc\">Sammansatta primärnycklar</span></a>.</p>\n</section>\n<section id=\"does-django-support-nosql-databases\">\n<h2>Har Django stöd för NoSQL-databaser?<a class=\"heading-anchor\" href=\"#does-django-support-nosql-databases\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>NoSQL-databaser stöds inte officiellt av Django själv. Det finns dock ett antal sidoprojekt och förgreningar som tillåter NoSQL-funktionalitet i Django.</p>\n<p>Du kan ta en titt på wikisidan där några projekt diskuteras.</p>\n</section>\n<section id=\"how-do-i-add-database-specific-options-to-my-create-table-statements-such-as-specifying-myisam-as-the-table-type\">\n<h2>Hur lägger jag till databasspecifika alternativ till mina CREATE TABLE-satser, till exempel att ange MyISAM som tabelltyp?<a class=\"heading-anchor\" href=\"#how-do-i-add-database-specific-options-to-my-create-table-statements-such-as-specifying-myisam-as-the-table-type\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>Vi försöker undvika att lägga till specialfall i Django-koden för att tillgodose alla databasspecifika alternativ som tabelltyp etc. Om du vill använda något av dessa alternativ skapar du en migrering med en <a class=\"reference internal\" href=\"/sv/6.1/ref/migration-operations/#django.db.migrations.operations.RunSQL\" title=\"django.db.migrations.operations.RunSQL\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RunSQL</span></code></a> operation som innehåller <code class=\"docutils literal notranslate\"><span class=\"pre\">ALTER</span> <span class=\"pre\">TABLE</span></code>-satser som gör vad du vill göra.</p>\n<p>Om du t.ex. använder MySQL och vill att dina tabeller ska använda tabelltypen MyISAM använder du följande SQL:</p>\n<div class=\"code-block\" data-language=\"sql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"k\">ALTER</span><span class=\"w\"> </span><span class=\"k\">TABLE</span><span class=\"w\"> </span><span class=\"n\">myapp_mytable</span><span class=\"w\"> </span><span class=\"n\">ENGINE</span><span class=\"o\">=</span><span class=\"n\">MyISAM</span><span class=\"p\">;</span>\n</code></pre></div>\n</section>","rootId":"faq-databases-and-models","toc":[{"title":"Hur kan jag se de råa SQL-frågorna som Django kör?","anchor":"how-can-i-see-the-raw-sql-queries-django-is-running","children":[]},{"title":"Kan jag använda Django med en redan befintlig databas?","anchor":"can-i-use-django-with-a-preexisting-database","children":[]},{"title":"Om jag gör ändringar i en modell, hur uppdaterar jag då databasen?","anchor":"if-i-make-changes-to-a-model-how-do-i-update-the-database","children":[]},{"title":"Har Django-modeller stöd för primärnycklar med flera kolumner?","anchor":"do-django-models-support-multiple-column-primary-keys","children":[]},{"title":"Har Django stöd för NoSQL-databaser?","anchor":"does-django-support-nosql-databases","children":[]},{"title":"Hur lägger jag till databasspecifika alternativ till mina CREATE TABLE-satser, till exempel att ange MyISAM som tabelltyp?","anchor":"how-do-i-add-database-specific-options-to-my-create-table-statements-such-as-specifying-myisam-as-the-table-type","children":[]}],"breadcrumbs":[{"docname":"faq/index","title":"Vanliga frågor om Django","url":"/sv/6.1/faq/"}],"prev":{"docname":"faq/help","title":"FRÅGOR OCH SVAR: Få hjälp","url":"/sv/6.1/faq/help/"},"next":{"docname":"faq/admin","title":"Frågor och svar: Admin","url":"/sv/6.1/faq/admin/"},"formats":{"html":"/sv/6.1/faq/models/","markdown":"/sv/6.1/faq/models.md","json":"/sv/6.1/faq/models.json"},"source":"https://github.com/django/django/blob/stable/6.1.x/docs/faq/models.txt","official":"https://docs.djangoproject.com/sv/6.1/faq/models/","inVersions":["6.1","6.0","5.2"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}