{"title":"FAQ: Bases de Datos y modelos","version":"6.1","locale":"es","docname":"faq/models","url":"/es/6.1/faq/models/","canonical":"https://djangodocs.dev/es/6.1/faq/models/","summary":"Asegúrese de que su configuración de Django DEBUG esté establecida en True.","html":"<h1>FAQ: Bases de Datos y modelos<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>¿Cómo puedo ver las consultas SQL que Django está ejecutando?<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>Asegúrese de que su configuración de Django <a class=\"reference internal\" href=\"/es/6.1/ref/settings/#std-setting-DEBUG\"><code class=\"xref std std-setting docutils literal notranslate\">DEBUG</code></a> esté establecida en <code class=\"docutils literal notranslate\">True</code>. Luego haga esto:</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=\"nn\">django.db</span> <span class=\"kn\">import</span> connection\n<span class=\"gp\">&gt;&gt;&gt; </span>connection<span class=\"o\">.</span>queries\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\">connection.queries</code> solo está disponible si :setting:<code class=\"docutils literal notranslate\">DEBUG</code> es <code class=\"docutils literal notranslate\">True</code>. Es una lista de diccionarios en orden de ejecución de consulta. Cada diccionario tiene lo siguiente:</p>\n<ul class=\"simple\">\n<li><p><code class=\"docutils literal notranslate\">sql</code> - La instrucción SQL sin procesar</p></li>\n<li><p><code class=\"docutils literal notranslate\">time</code> - Cuánto tiempo tardó la instrucción en ejecutarse, en segundos.</p></li>\n</ul>\n<p><code class=\"docutils literal notranslate\">connection.queries</code> incluye todas las sentencias SQL: INSERTs, UPDATES, SELECTs, etc. Cada vez que su aplicación accede a la base de datos, la consulta será registrada.</p>\n<p>Si está utilizando <a class=\"reference internal\" href=\"/es/6.1/topics/db/multi-db/\"><span class=\"doc\">multiple databases</span></a>, puede utilizar la misma interfaz en cada miembro del diccionario <code class=\"docutils literal notranslate\">connections</code>:</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=\"nn\">django.db</span> <span class=\"kn\">import</span> connections\n<span class=\"gp\">&gt;&gt;&gt; </span>connections<span class=\"p\">[</span><span class=\"s2\">&quot;my_db_alias&quot;</span><span class=\"p\">]</span><span class=\"o\">.</span>queries\n</code></pre></div>\n<p>Si necesita borrar la lista de consultas manualmente en cualquier punto de sus funciones, llame a <code class=\"docutils literal notranslate\">reset_queries()</code>, así:</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=\"nn\">django.db</span> <span class=\"kn\">import</span> reset_queries\n\nreset_queries<span class=\"p\">()</span>\n</code></pre></div>\n</section>\n<section id=\"can-i-use-django-with-a-preexisting-database\">\n<h2>¿Puedo usar Django con una base de datos preexistente?<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>Sí. Consulte <a class=\"reference internal\" href=\"/es/6.1/howto/legacy-databases/\"><span class=\"doc\">Integración con una base de datos heredada</span></a>.</p>\n</section>\n<section id=\"if-i-make-changes-to-a-model-how-do-i-update-the-database\">\n<h2>Si realizo cambios a un modelo, ¿cómo actualizo la base de datos?<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>Eche un vistazo a la ayuda de Django para <a class=\"reference internal\" href=\"/es/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\">migraciones de esquemas</code></a>.</p>\n<p>Si no le importa borrar los datos, la utilidad <code class=\"docutils literal notranslate\">manage.py</code> de su proyecto tiene una opción <a class=\"reference internal\" href=\"/es/6.1/ref/django-admin/#django-admin-flush\"><code class=\"xref std std-djadmin docutils literal notranslate\">flush</code></a> para restablecer la base de datos al estado en que estaba inmediatamente después de que <a class=\"reference internal\" href=\"/es/6.1/ref/django-admin/#django-admin-migrate\"><code class=\"xref std std-djadmin docutils literal notranslate\">migrate</code></a> fue ejecutado.</p>\n</section>\n<section id=\"do-django-models-support-multiple-column-primary-keys\">\n<h2>¿Los modelos de Django soportan claves primarias en columnas múltiples?<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=\"/es/6.1/topics/composite-primary-key/\"><span class=\"doc\">Composite primary keys</span></a>.</p>\n</section>\n<section id=\"does-django-support-nosql-databases\">\n<h2>¿Soporta Django bases de datos NoSQL?<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>Las bases de datos NoSQL no son compatibles oficialmente con Django en sí mismo. Sin embargo, hay una serie de proyectos paralelos y bifurcaciones que permiten la funcionalidad NoSQL en Django</p>\n<p>Puede echar un vistazo a <a class=\"reference external\" href=\"https://code.djangoproject.com/wiki/NoSqlSupport\">la página wiki</a> donde se discuten algunos proyectos.</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>¿Cómo añado opciones específicas de la base de datos a mis sentencias CREATE TABLE, tales como establecer MyISAM como el tipo de tabla?<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>Tratamos de evitar añadir casos especiales en el código de Django para ajustar todas las opciones específicas de base de datos como el tipo de tabla, etc. Si desea usar cualquiera de estas opciones, cree una migración con una operación <a class=\"reference internal\" href=\"/es/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\">RunSQL</code></a> que contenga sentencias <code class=\"docutils literal notranslate\">ALTER TABLE</code> que hagan lo que usted quiere hacer.</p>\n<p>Por ejemplo, si usa MySQL y desea que las tablas usen el tipo de tabla MyISAM, use el siguiente 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=\"k\">TABLE</span> myapp_mytable ENGINE<span class=\"o\">=</span>MyISAM<span class=\"p\">;</span>\n</code></pre></div>\n</section>","rootId":"faq-databases-and-models","toc":[{"title":"¿Cómo puedo ver las consultas SQL que Django está ejecutando?","anchor":"how-can-i-see-the-raw-sql-queries-django-is-running","children":[]},{"title":"¿Puedo usar Django con una base de datos preexistente?","anchor":"can-i-use-django-with-a-preexisting-database","children":[]},{"title":"Si realizo cambios a un modelo, ¿cómo actualizo la base de datos?","anchor":"if-i-make-changes-to-a-model-how-do-i-update-the-database","children":[]},{"title":"¿Los modelos de Django soportan claves primarias en columnas múltiples?","anchor":"do-django-models-support-multiple-column-primary-keys","children":[]},{"title":"¿Soporta Django bases de datos NoSQL?","anchor":"does-django-support-nosql-databases","children":[]},{"title":"¿Cómo añado opciones específicas de la base de datos a mis sentencias CREATE TABLE, tales como establecer MyISAM como el tipo de tabla?","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":"FAQ de Django","url":"/es/6.1/faq/"}],"prev":{"docname":"faq/help","title":"FAQ: Obteniendo ayuda","url":"/es/6.1/faq/help/"},"next":{"docname":"faq/admin","title":"FAQ: El sitio administrativo","url":"/es/6.1/faq/admin/"},"formats":{"html":"/es/6.1/faq/models/","markdown":"/es/6.1/faq/models.md","json":"/es/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/es/6.1/faq/models/","inVersions":["6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2","3.1","3.0","2.2","2.1","2.0","1.11","1.10","1.9"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}