{"id":37451,"date":"2023-10-30T06:20:16","date_gmt":"2023-10-30T06:20:16","guid":{"rendered":"https:\/\/www.railscarma.com\/?p=37451"},"modified":"2023-10-30T06:20:21","modified_gmt":"2023-10-30T06:20:21","slug":"modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server","status":"publish","type":"post","link":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/","title":{"rendered":"Modelos de Bases de Datos y Migraciones en Rails con SQL Server"},"content":{"rendered":"<div data-elementor-type=\"wp-post\" data-elementor-id=\"37451\" class=\"elementor elementor-37451\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-1231ecb elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"1231ecb\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-ff5a101\" data-id=\"ff5a101\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-a3745e9 elementor-widget elementor-widget-text-editor\" data-id=\"a3745e9\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Ruby on Rails es un potente marco de aplicaciones web que proporciona una forma c\u00f3moda de interactuar con bases de datos. Cuando se trabaja con SQL Server como sistema de gesti\u00f3n de bases de datos, es crucial entender c\u00f3mo definir modelos de bases de datos y gestionar los cambios de esquema utilizando migraciones Rails. En este art\u00edculo veremos el proceso de creaci\u00f3n de <b>modelos de bases de datos y migraciones en la aplicaci\u00f3n Rails<\/b> mientras utilizamos SQL Server como nuestra base de datos backend.<\/p>\n<h2><strong>Requisitos previos<\/strong><\/h2>\n<ul>\n<li>Ruby on Rails instalado en su sistema.<\/li>\n<li>Una instancia de SQL Server configurada y accesible.<\/li>\n<\/ul>\n<h2><b>Crear una nueva aplicaci\u00f3n Rails<\/b><\/h2>\n<p>Empecemos creando una nueva aplicaci\u00f3n Rails. Abre tu terminal y ejecuta el siguiente comando:<\/p>\n<div class=\"bg-black rounded-md mb-4\">\n<div class=\"flex items-center relative text-gray-200 bg-gray-800 gizmo:dark:bg-token-surface-primary px-4 py-2 text-xs font-sans justify-between rounded-t-md\">intento<\/div>\n<div class=\"p-4 overflow-y-auto\">\n<pre class=\"prettyprint lang-mssql prettyprinted\"><span class=\"pln\">rieles nuevos sql_server_rails_app<\/span><\/pre>\n<\/div>\n<\/div>\n<p>Este comando generar\u00e1 una nueva aplicaci\u00f3n Rails llamada&nbsp;<code>sql_server_rails_app<\/code>. Navegue al directorio del proyecto:<\/p>\n<div class=\"bg-black rounded-md mb-4\">\n<div class=\"flex items-center relative text-gray-200 bg-gray-800 gizmo:dark:bg-token-surface-primary px-4 py-2 text-xs font-sans justify-between rounded-t-md\">intento<\/div>\n<div class=\"p-4 overflow-y-auto\">\n<pre class=\"prettyprint lang-mssql prettyprinted\"><span class=\"pln\">CD sql_server_rails_app<\/span><\/pre>\n<\/div>\n<\/div>\n<p>Para configurar SQL Server como base de datos, abra el&nbsp;<code>configuraci\u00f3n\/base de datos.yml<\/code>&nbsp;archivo y modif\u00edquelo de la siguiente manera:<\/p>\n<div class=\"bg-black rounded-md mb-4\">\n<div class=\"flex items-center relative text-gray-200 bg-gray-800 gizmo:dark:bg-token-surface-primary px-4 py-2 text-xs font-sans justify-between rounded-t-md\">yaml<\/div>\n<div class=\"p-4 overflow-y-auto\">\n<pre class=\"prettyprint lang-mssql prettyprinted\"><span class=\"kwd\">por defecto<\/span><span class=\"pun\">:<\/span> <span class=\"pun\">&amp;<\/span><span class=\"kwd\">por defecto<\/span><span class=\"pln\">\n  adaptador<\/span><span class=\"pun\">:<\/span><span class=\"pln\"> host del servidor sql<\/span><span class=\"pun\">:<\/span><span class=\"pln\"> nombre de usuario del servidor local<\/span><span class=\"pun\">:<\/span><span class=\"pln\"> tu_nombre de usuario contrase\u00f1a<\/span><span class=\"pun\">:<\/span><span class=\"pln\"> tu contrase\u00f1a\n  <\/span><span class=\"kwd\">base de datos<\/span><span class=\"pun\">:<\/span><span class=\"pln\"> puerto nombre_base_datos<\/span><span class=\"pun\">:<\/span> <span class=\"lit\">1433<\/span><\/pre>\n<\/div>\n<\/div>\n<p>Reemplazar&nbsp;<code>su nombre de usuario<\/code>,&nbsp;<code>tu contrase\u00f1a<\/code>, y&nbsp;<code>su_nombre_base_de_datos<\/code>&nbsp;con sus credenciales de SQL Server y el nombre de la base de datos deseada.<\/p>\n<h2><b>Creando un modelo de base de datos<\/b><\/h2>\n<p>Vamos a crear un modelo de base de datos simple para una aplicaci\u00f3n de blog. Ejecute el siguiente comando para generar un&nbsp;<code>Correo<\/code>&nbsp;modelo con atributos:<\/p>\n<div class=\"bg-black rounded-md mb-4\">\n<div class=\"flex items-center relative text-gray-200 bg-gray-800 gizmo:dark:bg-token-surface-primary px-4 py-2 text-xs font-sans justify-between rounded-t-md\">intento<\/div>\n<div class=\"p-4 overflow-y-auto\">\n<pre class=\"prettyprint lang-mssql prettyprinted\"><span class=\"pln\">rieles generan modelo T\u00edtulo de la publicaci\u00f3n<\/span><span class=\"pun\">:<\/span><span class=\"pln\">cuerpo de cuerda<\/span><span class=\"pun\">:<\/span><span class=\"pln\">texto<\/span><\/pre>\n<\/div>\n<\/div>\n<p>Este comando crear\u00e1 un archivo de migraci\u00f3n en el&nbsp;<code>db\/migrar<\/code>&nbsp;directorio y un archivo de modelo correspondiente en el&nbsp;<code>aplicaci\u00f3n\/modelos<\/code>&nbsp;directorio.<\/p>\n<h2><b>Creando una migraci\u00f3n<\/b><\/h2>\n<p>Abra el archivo de migraci\u00f3n generado en el&nbsp;<code>db\/migrar<\/code>&nbsp;directorio. Tendr\u00e1 un nombre como&nbsp;<code>xxxxxx_create_posts.rb<\/code>, d\u00f3nde&nbsp;<code>xxxxxx<\/code>&nbsp;es una marca de tiempo. Agregue las columnas necesarias al&nbsp;<code>crear mesa<\/code>&nbsp;bloquear:<\/p>\n<div class=\"bg-black rounded-md mb-4\">\n<div class=\"flex items-center relative text-gray-200 bg-gray-800 gizmo:dark:bg-token-surface-primary px-4 py-2 text-xs font-sans justify-between rounded-t-md\">rub\u00ed<\/div>\n<div class=\"p-4 overflow-y-auto\">\n<pre class=\"prettyprint lang-mssql prettyprinted\"><span class=\"pln\">clase CrearPublicaciones <\/span><span class=\"pun\">&lt;<\/span><span class=\"pln\"> Registro activo<\/span><span class=\"pun\">::<\/span><span class=\"pln\">Migraci\u00f3n<\/span><span class=\"pun\">[<\/span><span class=\"lit\">6.1<\/span><span class=\"pun\">]<\/span><span class=\"pln\">\n  def cambiar crear_tabla <\/span><span class=\"pun\">:<\/span><span class=\"pln\">las publicaciones lo hacen <\/span><span class=\"pun\">|<\/span><span class=\"pln\">t<\/span><span class=\"pun\">|<\/span><span class=\"pln\">\n      t<\/span><span class=\"pun\">.<\/span><span class=\"pln\">cadena <\/span><span class=\"pun\">:<\/span><span class=\"pln\">t\u00edtulo t<\/span><span class=\"pun\">.<\/span><span class=\"pln\">texto <\/span><span class=\"pun\">:<\/span><span class=\"pln\">cuerpo t<\/span><span class=\"pun\">.<\/span><span class=\"pln\">marcas de tiempo\n    <\/span><span class=\"kwd\">fin<\/span>\n  <span class=\"kwd\">fin<\/span>\n<span class=\"kwd\">fin<\/span><\/pre>\n<\/div>\n<\/div>\n<p>Esta migraci\u00f3n crea una&nbsp;<code>publicaciones<\/code>&nbsp;mesa con&nbsp;<code>t\u00edtulo<\/code>&nbsp;y&nbsp;<code>cuerpo<\/code>&nbsp;columnas.<\/p>\n<h2><b>Ejecuci\u00f3n de migraciones<\/b><\/h2>\n<p>Para aplicar la migraci\u00f3n y crear el&nbsp;<code>publicaciones<\/code>&nbsp;tabla en la base de datos de SQL Server, ejecute el siguiente comando:<\/p>\n<div class=\"bg-black rounded-md mb-4\">\n<div class=\"flex items-center relative text-gray-200 bg-gray-800 gizmo:dark:bg-token-surface-primary px-4 py-2 text-xs font-sans justify-between rounded-t-md\">intento<\/div>\n<div class=\"p-4 overflow-y-auto\">\n<pre class=\"prettyprint lang-mssql prettyprinted\"><span class=\"pln\">rieles db<\/span><span class=\"pun\">:<\/span><span class=\"pln\">emigrar<\/span><\/pre>\n<\/div>\n<\/div>\n<p>Este comando ejecutar\u00e1 todas las migraciones pendientes y actualizar\u00e1 el esquema de la base de datos en consecuencia.<\/p>\n<h2><b>Usando el modelo<\/b><\/h2>\n<p>Ahora que el&nbsp;<code>Correo<\/code>&nbsp;Se crean el modelo y la tabla, puede usarlos en su&nbsp;<a href=\"https:\/\/www.railscarma.com\/es\/\">Aplicaci\u00f3n de rieles<\/a>. Por ejemplo, puedes crear una nueva publicaci\u00f3n en tu controlador:<\/p>\n<div class=\"bg-black rounded-md mb-4\">\n<div class=\"flex items-center relative text-gray-200 bg-gray-800 gizmo:dark:bg-token-surface-primary px-4 py-2 text-xs font-sans justify-between rounded-t-md\">rub\u00ed<\/div>\n<div class=\"p-4 overflow-y-auto\">\n<pre class=\"prettyprint lang-mssql prettyprinted\"><span class=\"pln\">controlador de publicaciones de clase <\/span><span class=\"pun\">&lt;<\/span><span class=\"pln\"> Definici\u00f3n del controlador de aplicaciones <\/span><span class=\"kwd\">crear<\/span>\n    <span class=\"pun\">@<\/span><span class=\"pln\">correo <\/span><span class=\"pun\">=<\/span><span class=\"pln\"> Correo<\/span><span class=\"pun\">.<\/span><span class=\"pln\">nuevo<\/span><span class=\"pun\">(<\/span><span class=\"pln\">post_params<\/span><span class=\"pun\">)<\/span>\n    <span class=\"kwd\">si<\/span> <span class=\"pun\">@<\/span><span class=\"pln\">correo<\/span><span class=\"pun\">.<\/span><span class=\"kwd\">ahorrar<\/span><span class=\"pln\">\n      redirigir a <\/span><span class=\"pun\">@<\/span><span class=\"pln\">correo<\/span><span class=\"pun\">,<\/span><span class=\"pln\"> aviso<\/span><span class=\"pun\">:<\/span> <span class=\"str\">&#039;La publicaci\u00f3n se cre\u00f3 correctamente.&#039;<\/span>\n    <span class=\"kwd\">dem\u00e1s<\/span><span class=\"pln\">\n      prestar <\/span><span class=\"pun\">:<\/span><span class=\"pln\">nuevo\n    <\/span><span class=\"kwd\">fin<\/span>\n  <span class=\"kwd\">fin<\/span><span class=\"pln\">\n  definici\u00f3n privada post_params par\u00e1metros<\/span><span class=\"pun\">.<\/span><span class=\"pln\">requerir<\/span><span class=\"pun\">(:<\/span><span class=\"pln\">correo<\/span><span class=\"pun\">).<\/span><span class=\"pln\">permiso<\/span><span class=\"pun\">(:<\/span><span class=\"pln\">t\u00edtulo<\/span><span class=\"pun\">,<\/span> <span class=\"pun\">:<\/span><span class=\"pln\">cuerpo<\/span><span class=\"pun\">)<\/span>\n  <span class=\"kwd\">fin<\/span>\n<span class=\"kwd\">fin<\/span><\/pre>\n<\/div>\n<\/div>\n<h2><b>Conclusi\u00f3n<\/b><\/h2>\n<p>En esta entrada del blog, hemos aprendido a crear modelos de bases de datos y migraciones en un <a href=\"https:\/\/www.railscarma.com\/es\/desarrollo-de-aplicaciones-de-rieles-personalizados\/\">Aplicaci\u00f3n Ruby on Rails<\/a> utilizando SQL Server como backend de la base de datos. Ahora puede comenzar a crear su aplicaci\u00f3n con el poder y la flexibilidad de Rails mientras aprovecha las capacidades de SQL Server para el almacenamiento y la recuperaci\u00f3n de datos.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t  <div class=\"related-post slider\">\r\n        <div class=\"headline\">Art\u00edculos Relacionados<\/div>\r\n    <div class=\"post-list owl-carousel\">\r\n\r\n            <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Qu\u00e9 es Offliberty Ruby Gem y c\u00f3mo funciona\" href=\"https:\/\/www.railscarma.com\/es\/blog\/what-is-offliberty-ruby-gem-and-how-it-works\/?related_post_from=41304\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/What-is-Offliberty-Ruby-Gem-and-How-It-Works.png\" class=\"attachment-full size-full wp-post-image\" alt=\"Offliberty Ruby Gem\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/What-is-Offliberty-Ruby-Gem-and-How-It-Works.png 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/What-is-Offliberty-Ruby-Gem-and-How-It-Works-300x113.png 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/What-is-Offliberty-Ruby-Gem-and-How-It-Works-768x288.png 768w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/What-is-Offliberty-Ruby-Gem-and-How-It-Works-18x7.png 18w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Qu\u00e9 es Offliberty Ruby Gem y c\u00f3mo funciona\" href=\"https:\/\/www.railscarma.com\/es\/blog\/what-is-offliberty-ruby-gem-and-how-it-works\/?related_post_from=41304\">\r\n        Qu\u00e9 es Offliberty Ruby Gem y c\u00f3mo funciona  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"M\u00e9todo link_to de Rails: La gu\u00eda completa con ejemplos\" href=\"https:\/\/www.railscarma.com\/es\/blog\/rails-metodo-link_to-la-guia-completa-con-ejemplos\/?related_post_from=41296\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Rails-link_to-Method-The-Complete-Guide-with-Examples.png\" class=\"attachment-full size-full wp-post-image\" alt=\"M\u00e9todo link_to de Rails\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Rails-link_to-Method-The-Complete-Guide-with-Examples.png 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Rails-link_to-Method-The-Complete-Guide-with-Examples-300x113.png 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Rails-link_to-Method-The-Complete-Guide-with-Examples-768x288.png 768w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Rails-link_to-Method-The-Complete-Guide-with-Examples-18x7.png 18w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"M\u00e9todo link_to de Rails: La gu\u00eda completa con ejemplos\" href=\"https:\/\/www.railscarma.com\/es\/blog\/rails-metodo-link_to-la-guia-completa-con-ejemplos\/?related_post_from=41296\">\r\n        M\u00e9todo link_to de Rails: La gu\u00eda completa con ejemplos  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"C\u00f3mo crear una plataforma SaaS escalable con Ruby on Rails\" href=\"https:\/\/www.railscarma.com\/es\/blog\/how-to-build-a-scalable-saas-platform-using-ruby-on-rails\/?related_post_from=41273\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Build-a-SaaS-Platform-Using-Ruby-on-Rails.png\" class=\"attachment-full size-full wp-post-image\" alt=\"Crear una plataforma SaaS con Ruby on Rails\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Build-a-SaaS-Platform-Using-Ruby-on-Rails.png 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Build-a-SaaS-Platform-Using-Ruby-on-Rails-300x113.png 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Build-a-SaaS-Platform-Using-Ruby-on-Rails-768x288.png 768w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Build-a-SaaS-Platform-Using-Ruby-on-Rails-18x7.png 18w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"C\u00f3mo crear una plataforma SaaS escalable con Ruby on Rails\" href=\"https:\/\/www.railscarma.com\/es\/blog\/how-to-build-a-scalable-saas-platform-using-ruby-on-rails\/?related_post_from=41273\">\r\n        C\u00f3mo crear una plataforma SaaS escalable con Ruby on Rails  <\/a>\r\n\r\n        <\/div>\r\n              <div class=\"item\">\r\n            <div class=\"thumb post_thumb\">\r\n    <a  title=\"Ruby Regex Match Guide (2026) con Ejemplos\" href=\"https:\/\/www.railscarma.com\/es\/blog\/ruby-regex-match-guide-with-examples\/?related_post_from=41249\">\r\n\r\n      <img decoding=\"async\" width=\"800\" height=\"300\" src=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Ruby-Regex-Match-Guide-with-Examples.png\" class=\"attachment-full size-full wp-post-image\" alt=\"Ruby Regex Match\" srcset=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Ruby-Regex-Match-Guide-with-Examples.png 800w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Ruby-Regex-Match-Guide-with-Examples-300x113.png 300w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Ruby-Regex-Match-Guide-with-Examples-768x288.png 768w, https:\/\/www.railscarma.com\/wp-content\/uploads\/2026\/04\/Ruby-Regex-Match-Guide-with-Examples-18x7.png 18w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/>\r\n\r\n    <\/a>\r\n  <\/div>\r\n\r\n  <a class=\"title post_title\"  title=\"Ruby Regex Match Guide (2026) con Ejemplos\" href=\"https:\/\/www.railscarma.com\/es\/blog\/ruby-regex-match-guide-with-examples\/?related_post_from=41249\">\r\n        Ruby Regex Match Guide (2026) con Ejemplos  <\/a>\r\n\r\n        <\/div>\r\n      \r\n  <\/div>\r\n\r\n  <script>\r\n      <\/script>\r\n  <style>\r\n    .related-post {}\r\n\r\n    .related-post .post-list {\r\n      text-align: left;\r\n          }\r\n\r\n    .related-post .post-list .item {\r\n      margin: 10px;\r\n      padding: 10px;\r\n          }\r\n\r\n    .related-post .headline {\r\n      font-size: 14px !important;\r\n      color: #999999 !important;\r\n          }\r\n\r\n    .related-post .post-list .item .post_thumb {\r\n      max-height: 220px;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n          }\r\n\r\n    .related-post .post-list .item .post_title {\r\n      font-size: 14px;\r\n      color: #000000;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .post-list .item .post_excerpt {\r\n      font-size: 12px;\r\n      color: #3f3f3f;\r\n      margin: 10px 0px;\r\n      padding: 0px;\r\n      display: block;\r\n      text-decoration: none;\r\n          }\r\n\r\n    .related-post .owl-dots .owl-dot {\r\n          }\r\n\r\n      <\/style>\r\n      <script>\r\n      jQuery(document).ready(function($) {\r\n        $(\".related-post .post-list\").owlCarousel({\r\n          items: 2,\r\n          responsiveClass: true,\r\n          responsive: {\r\n            0: {\r\n              items: 1,\r\n            },\r\n            768: {\r\n              items: 2,\r\n            },\r\n            1200: {\r\n              items: 2,\r\n            }\r\n          },\r\n                      rewind: true,\r\n                                loop: true,\r\n                                center: false,\r\n                                autoplay: true,\r\n            autoplayHoverPause: true,\r\n                                nav: true,\r\n            navSpeed: 1000,\r\n            navText: ['<i class=\"fas fa-chevron-left\"><\/i>', '<i class=\"fas fa-chevron-right\"><\/i>'],\r\n                                dots: false,\r\n            dotsSpeed: 1200,\r\n                                                    rtl: false,\r\n          \r\n        });\r\n      });\r\n    <\/script>\r\n  <\/div>","protected":false},"excerpt":{"rendered":"<p>Ruby on Rails is a powerful web application framework that provides a convenient way to interact with databases. When working with SQL Server as your database management system, it&#8217;s crucial to understand how to define database models and manage schema changes using Rails migrations. In this article, we&#8217;ll walk through the process of creating database &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"https:\/\/www.railscarma.com\/es\/blog\/ruby-regex-match-guide-with-examples\/\"> <span class=\"screen-reader-text\">Ruby Regex Match Guide (2026) con Ejemplos<\/span> Leer m\u00e1s \u00bb<\/a><\/p>","protected":false},"author":5,"featured_media":37459,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1224],"tags":[],"class_list":["post-37451","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blog"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Database Models and Migrations in Rails with SQL Server - RailsCarma<\/title>\n<meta name=\"description\" content=\"Efficiently manage Rails database models and migrations with SQL Server. Simplify web app development using SQL Server in Rails. Learn more.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Database Models and Migrations in Rails with SQL Server - RailsCarma\" \/>\n<meta property=\"og:description\" content=\"Efficiently manage Rails database models and migrations with SQL Server. Simplify web app development using SQL Server in Rails. Learn more.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/\" \/>\n<meta property=\"og:site_name\" content=\"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/RailsCarma\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-10-30T06:20:16+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-10-30T06:20:21+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/10\/Database-Models-and-Migrations-in-Rails-with-SQL-Server.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"300\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Nikhil\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@railscarma\" \/>\n<meta name=\"twitter:site\" content=\"@railscarma\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nikhil\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/\"},\"author\":{\"name\":\"Nikhil\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/1aa0357392b349082303e8222c35c30c\"},\"headline\":\"Database Models and Migrations in Rails with SQL Server\",\"datePublished\":\"2023-10-30T06:20:16+00:00\",\"dateModified\":\"2023-10-30T06:20:21+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/\"},\"wordCount\":392,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.railscarma.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/10\/Database-Models-and-Migrations-in-Rails-with-SQL-Server.jpg\",\"articleSection\":[\"Blogs\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/\",\"url\":\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/\",\"name\":\"Database Models and Migrations in Rails with SQL Server - RailsCarma\",\"isPartOf\":{\"@id\":\"https:\/\/www.railscarma.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/10\/Database-Models-and-Migrations-in-Rails-with-SQL-Server.jpg\",\"datePublished\":\"2023-10-30T06:20:16+00:00\",\"dateModified\":\"2023-10-30T06:20:21+00:00\",\"description\":\"Efficiently manage Rails database models and migrations with SQL Server. Simplify web app development using SQL Server in Rails. Learn more.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#primaryimage\",\"url\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/10\/Database-Models-and-Migrations-in-Rails-with-SQL-Server.jpg\",\"contentUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/10\/Database-Models-and-Migrations-in-Rails-with-SQL-Server.jpg\",\"width\":800,\"height\":300,\"caption\":\"Database Models and Migrations in Rails with SQL Server\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.railscarma.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Database Models and Migrations in Rails with SQL Server\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.railscarma.com\/#website\",\"url\":\"https:\/\/www.railscarma.com\/\",\"name\":\"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development\",\"description\":\"RailsCarma is a Ruby on Rails Development Company in Bangalore. We specialize in Offshore Ruby on Rails Development based out in USA and India. Hire experienced Ruby on Rails developers for the ultimate Web Experience.\",\"publisher\":{\"@id\":\"https:\/\/www.railscarma.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.railscarma.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.railscarma.com\/#organization\",\"name\":\"RailsCarma\",\"url\":\"https:\/\/www.railscarma.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png\",\"contentUrl\":\"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png\",\"width\":200,\"height\":46,\"caption\":\"RailsCarma\"},\"image\":{\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/RailsCarma\/\",\"https:\/\/x.com\/railscarma\",\"https:\/\/www.linkedin.com\/company\/railscarma\/\",\"https:\/\/myspace.com\/railscarma\",\"https:\/\/in.pinterest.com\/railscarma\/\",\"https:\/\/www.youtube.com\/channel\/UCx3Wil-aAnDARuatTEyMdpg\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/1aa0357392b349082303e8222c35c30c\",\"name\":\"Nikhil\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.railscarma.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/054f31ff35e9917aaf631b8025ef679d42dd21792012d451763138d66d02a4c0?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/054f31ff35e9917aaf631b8025ef679d42dd21792012d451763138d66d02a4c0?s=96&d=mm&r=g\",\"caption\":\"Nikhil\"},\"sameAs\":[\"https:\/\/www.railscarma.com\/hire-ruby-on-rails-developer\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Modelos de Bases de Datos y Migraciones en Rails con SQL Server - RailsCarma","description":"Administre eficientemente los modelos y migraciones de bases de datos Rails con SQL Server. Simplifique el desarrollo de aplicaciones web utilizando SQL Server en Rails. Aprende m\u00e1s.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/","og_locale":"es_ES","og_type":"article","og_title":"Database Models and Migrations in Rails with SQL Server - RailsCarma","og_description":"Efficiently manage Rails database models and migrations with SQL Server. Simplify web app development using SQL Server in Rails. Learn more.","og_url":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/","og_site_name":"RailsCarma - Ruby on Rails Development Company specializing in Offshore Development","article_publisher":"https:\/\/www.facebook.com\/RailsCarma\/","article_published_time":"2023-10-30T06:20:16+00:00","article_modified_time":"2023-10-30T06:20:21+00:00","og_image":[{"width":800,"height":300,"url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/10\/Database-Models-and-Migrations-in-Rails-with-SQL-Server.jpg","type":"image\/jpeg"}],"author":"Nikhil","twitter_card":"summary_large_image","twitter_creator":"@railscarma","twitter_site":"@railscarma","twitter_misc":{"Escrito por":"Nikhil","Tiempo de lectura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#article","isPartOf":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/"},"author":{"name":"Nikhil","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/1aa0357392b349082303e8222c35c30c"},"headline":"Database Models and Migrations in Rails with SQL Server","datePublished":"2023-10-30T06:20:16+00:00","dateModified":"2023-10-30T06:20:21+00:00","mainEntityOfPage":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/"},"wordCount":392,"commentCount":0,"publisher":{"@id":"https:\/\/www.railscarma.com\/#organization"},"image":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#primaryimage"},"thumbnailUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/10\/Database-Models-and-Migrations-in-Rails-with-SQL-Server.jpg","articleSection":["Blogs"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/","url":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/","name":"Modelos de Bases de Datos y Migraciones en Rails con SQL Server - RailsCarma","isPartOf":{"@id":"https:\/\/www.railscarma.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#primaryimage"},"image":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#primaryimage"},"thumbnailUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/10\/Database-Models-and-Migrations-in-Rails-with-SQL-Server.jpg","datePublished":"2023-10-30T06:20:16+00:00","dateModified":"2023-10-30T06:20:21+00:00","description":"Administre eficientemente los modelos y migraciones de bases de datos Rails con SQL Server. Simplifique el desarrollo de aplicaciones web utilizando SQL Server en Rails. Aprende m\u00e1s.","breadcrumb":{"@id":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#primaryimage","url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/10\/Database-Models-and-Migrations-in-Rails-with-SQL-Server.jpg","contentUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2023\/10\/Database-Models-and-Migrations-in-Rails-with-SQL-Server.jpg","width":800,"height":300,"caption":"Database Models and Migrations in Rails with SQL Server"},{"@type":"BreadcrumbList","@id":"https:\/\/www.railscarma.com\/es\/blog\/modelos-de-bases-de-datos-y-migraciones-en-rails-con-sql-server\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.railscarma.com\/"},{"@type":"ListItem","position":2,"name":"Database Models and Migrations in Rails with SQL Server"}]},{"@type":"WebSite","@id":"https:\/\/www.railscarma.com\/#website","url":"https:\/\/www.railscarma.com\/","name":"RailsCarma - Empresa de desarrollo Ruby on Rails especializada en desarrollo offshore","description":"RailsCarma es una empresa de desarrollo de Ruby on Rails en Bangalore. Nos especializamos en el desarrollo offshore de Ruby on Rails con sede en EE. UU. e India. Contrate desarrolladores experimentados de Ruby on Rails para disfrutar de la mejor experiencia web.","publisher":{"@id":"https:\/\/www.railscarma.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.railscarma.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Organization","@id":"https:\/\/www.railscarma.com\/#organization","name":"RielesCarma","url":"https:\/\/www.railscarma.com\/","logo":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png","contentUrl":"https:\/\/www.railscarma.com\/wp-content\/uploads\/2020\/08\/railscarma_logo.png","width":200,"height":46,"caption":"RailsCarma"},"image":{"@id":"https:\/\/www.railscarma.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/RailsCarma\/","https:\/\/x.com\/railscarma","https:\/\/www.linkedin.com\/company\/railscarma\/","https:\/\/myspace.com\/railscarma","https:\/\/in.pinterest.com\/railscarma\/","https:\/\/www.youtube.com\/channel\/UCx3Wil-aAnDARuatTEyMdpg"]},{"@type":"Person","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/1aa0357392b349082303e8222c35c30c","name":"Nikhil","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.railscarma.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/054f31ff35e9917aaf631b8025ef679d42dd21792012d451763138d66d02a4c0?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/054f31ff35e9917aaf631b8025ef679d42dd21792012d451763138d66d02a4c0?s=96&d=mm&r=g","caption":"Nikhil"},"sameAs":["https:\/\/www.railscarma.com\/hire-ruby-on-rails-developer\/"]}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/posts\/37451","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/comments?post=37451"}],"version-history":[{"count":0,"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/posts\/37451\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/media\/37459"}],"wp:attachment":[{"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/media?parent=37451"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/categories?post=37451"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.railscarma.com\/es\/wp-json\/wp\/v2\/tags?post=37451"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}