{"id":107937,"date":"2025-12-08T16:00:00","date_gmt":"2025-12-08T16:00:00","guid":{"rendered":"https:\/\/www.red-gate.com\/simple-talk\/?p=107937"},"modified":"2025-12-11T11:22:20","modified_gmt":"2025-12-11T11:22:20","slug":"10-key-concepts-developers-should-know-about-the-sql-server-model-database","status":"publish","type":"post","link":"https:\/\/www.red-gate.com\/simple-talk\/databases\/sql-server\/10-key-concepts-developers-should-know-about-the-sql-server-model-database\/","title":{"rendered":"10 Key Concepts Developers Should Know About the SQL Server\u00a0model Database\u00a0"},"content":{"rendered":"\n<p>When you create a new database in <a href=\"https:\/\/www.microsoft.com\/en-gb\/sql-server\" target=\"_blank\" rel=\"noreferrer noopener\">SQL Server<\/a>, you might assume&nbsp;that&nbsp;the system starts with an empty template and builds from scratch.&nbsp;In reality, every&nbsp;new database begins as a copy of&nbsp;<em><a href=\"https:\/\/learn.microsoft.com\/en-us\/sql\/relational-databases\/databases\/model-database?view=sql-server-ver17\" target=\"_blank\" rel=\"noreferrer noopener\">model<\/a>,<\/em> one of the system databases. Understanding how model works,&nbsp;and how your changes affect <a href=\"https:\/\/www.gable.ai\/blog\/upstream-vs-downstream-data\" target=\"_blank\" rel=\"noreferrer noopener\">downstream<\/a> databases,&nbsp;is essential for anyone building, deploying, or&nbsp;maintaining&nbsp;SQL-based applications. \u202f&nbsp;<\/p>\n\n\n\n<p>This&nbsp;article&nbsp;covers the 10 key concepts developers should understand to avoid surprises and to use the <em>model<\/em> database intentionally.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-1-nbsp-model-is-the-template-for-every-new-database-nbsp\">1.&nbsp;<em>model<\/em> Is the Template for Every New Database \u202f&nbsp;<\/h2>\n\n\n\n<p>Whenever you issue&nbsp;<code><a href=\"https:\/\/learn.microsoft.com\/en-us\/sql\/t-sql\/statements\/create-database-transact-sql?view=sql-server-ver17&amp;tabs=sqlpool\" target=\"_blank\" rel=\"noreferrer noopener\">CREATE DATABASE<\/a><\/code>, SQL Server copies the contents and settings of the <em>model<\/em> database. \u202f&nbsp;<\/p>\n\n\n\n<p>That means:&nbsp;<\/p>\n\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Every object in model is cloned into the new database. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Every database-level setting in model becomes the new database&#8217;s default. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>File sizes and&nbsp;<a href=\"https:\/\/www.red-gate.com\/simple-talk\/databases\/sql-server\/database-administration-sql-server\/sql-server-database-growth-and-autogrowth-settings\/\" target=\"_blank\" rel=\"noreferrer noopener\">autogrowth&nbsp;settings<\/a> carry forward as well.&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n\n<p>If something appears in every new database unexpectedly, model is the first place to inspect.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-2-any-object-you-add-will-propagate-to-new-databases-nbsp\">2. Any Object You Add Will Propagate to New Databases \u202f&nbsp;<\/h2>\n\n\n\n<p>Developers sometimes add&nbsp;<em>just <\/em>a table&nbsp;or&nbsp;<em>just <\/em><a href=\"https:\/\/www.red-gate.com\/simple-talk\/blogs\/for-the-love-of-stored-procedures\/\" target=\"_blank\" rel=\"noreferrer noopener\">a stored procedure<\/a>&nbsp;to model for temporary testing. \u202f&nbsp;<\/p>\n\n\n\n<p>This has consequences:&nbsp;<\/p>\n\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>That object will appear in every new database created afterward. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Many teams discover rogue tables like&nbsp;<code>temp_table<\/code>,&nbsp;<code>backup_test<\/code>, or&nbsp;<code>myproc<\/code>&nbsp;years later. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Purging these objects from dozens of databases becomes painful.&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n\n<p><strong>Best practice:<\/strong>&nbsp;always avoid putting application objects or test code in model.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-3-model-controls-default-file-sizes-and-nbsp-autogrowth-nbsp-nbsp\">3. <em>model<\/em> Controls Default File Sizes and&nbsp;Autogrowth&nbsp;\u202f&nbsp;<\/h2>\n\n\n\n<p>Every new database inherits:&nbsp;<\/p>\n\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Initial data and log file sizes \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Autogrowth&nbsp;settings (size vs percentage) \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>The number of data files \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>The location paths for data and log files (unless overridden)&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n\n<p>If your organization has standard sizing rules, the <em>model<\/em> database is a critical place to enforce these defaults. \u202f&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-4-nbsp-model-also-controls-key-database-level-settings-nbsp\">4.&nbsp;<em>model<\/em> Also Controls Key Database-Level Settings \u202f&nbsp;<\/h2>\n\n\n\n<p>Several important defaults come from <em>model<\/em>, such as:&nbsp;<\/p>\n\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.red-gate.com\/simple-talk\/databases\/sql-server\/database-administration-sql-server\/understanding-sql-server-recovery-models\/\" target=\"_blank\" rel=\"noreferrer noopener\">Recovery model<\/a>&nbsp;(<code>FULL<\/code> vs <code>SIMPLE<\/code>) \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/celerdata.com\/glossary\/ansi-sql\" target=\"_blank\" rel=\"noreferrer noopener\">ANSI<\/a> settings \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li><code><a href=\"https:\/\/www.red-gate.com\/simple-talk\/opinion\/opinion-pieces\/sql-server-features-time-forgot-2\/#:~:text=is%20no%20exception.-,Autoshrink,-As%20the%20name\" target=\"_blank\" rel=\"noreferrer noopener\">AUTO_SHRINK<\/a><\/code>, <code><a href=\"https:\/\/learn.microsoft.com\/en-us\/sql\/relational-databases\/policy-based-management\/set-the-auto-close-database-option-to-off?view=sql-server-ver17\" target=\"_blank\" rel=\"noreferrer noopener\">AUTO_CLOSE<\/a><\/code>,&nbsp;and similar options \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/learn.microsoft.com\/en-us\/sql\/relational-databases\/databases\/view-or-change-the-compatibility-level-of-a-database?view=sql-server-ver17\" target=\"_blank\" rel=\"noreferrer noopener\">Compatibility level<\/a> \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Default <a href=\"https:\/\/www.red-gate.com\/simple-talk\/databases\/sql-server\/t-sql-programming-sql-server\/questions-sql-server-collations-shy-ask\/\" target=\"_blank\" rel=\"noreferrer noopener\">collation<\/a>&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n\n<p>Developers should understand that these defaults affect the behavior of new application databases until explicitly changed.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-5-nbsp-model-affects-nbsp-tempdb-nbsp-creation-at-startup-nbsp\">5.&nbsp;<em>model<\/em> Affects&nbsp;tempdb&nbsp;Creation at Startup \u202f&nbsp;<\/h2>\n\n\n\n<p>At SQL Server startup,&nbsp;<a href=\"https:\/\/www.red-gate.com\/simple-talk\/databases\/sql-server\/learn\/mastering-tempdb-the-basics\/\" target=\"_blank\" rel=\"noreferrer noopener\">tempdb<\/a>&nbsp;is recreated from the <em>model<\/em> database&nbsp;(then altered with&nbsp;tempdb-specific settings).<\/p>\n\n\n\n<p>This is why:&nbsp;<\/p>\n\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Collation for&nbsp;tempdb&nbsp;can come from the <em>model<\/em> database. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Some default configuration choices propagate to&nbsp;tempdb&nbsp;after each restart.&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n\n<p>For performance tuning, understanding this relationship helps avoid unexpected&nbsp;tempdb&nbsp;behavior.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-6-you-nbsp-should-nbsp-customize-nbsp-model-but-nbsp-only-nbsp-deliberately-nbsp\">6. You&nbsp;<em>Should<\/em>&nbsp;Customize&nbsp;<em>model<\/em> &#8211; But&nbsp;Only&nbsp;Deliberately \u202f&nbsp;<\/h2>\n\n\n\n<p>There are legitimate reasons to&nbsp;modify&nbsp;the <em>model<\/em> database, including:&nbsp;<\/p>\n\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Setting organization-wide defaults (recovery model, file sizes). \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Enforcing standard ANSI settings. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Ensuring new databases start with predictable behavior. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Adding required database configuration options.&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Adding organizational security code that needs to exist in every user database.&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n\n<p>A customized <em>model<\/em> is a powerful governance tool,&nbsp;but only when done by design &#8211; not by accident.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-7-you-should-nbsp-not-nbsp-put-user-objects-in-nbsp-model-nbsp\">7. You Should&nbsp;<em>Not<\/em>&nbsp;Put User Objects in&nbsp;<em>model<\/em> \u202f&nbsp;<\/h2>\n\n\n\n<p>Objects placed in <em>model<\/em> are&nbsp;nearly always&nbsp;mistakes unless there is&nbsp;a very specific, organizationally-approved reason.&nbsp;<\/p>\n\n\n\n<p>Try to avoid putting any of these user objects in <em>model<\/em>:<\/p>\n\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Tables \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Functions \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Stored procedures \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Users or logins \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Schemas \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Service broker objects&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n\n<p>These will appear in every new database, including system-provisioned ones created by tools, installers, or automated deployment processes.&nbsp;However, there are some exceptions, like required organizational security code.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-8-model-must-remain-clean-and-operational-nbsp\">8. <em>model<\/em> Must Remain Clean and Operational \u202f&nbsp;<\/h2>\n\n\n\n<p>If <em>model<\/em> becomes <a href=\"https:\/\/www.dell.com\/support\/kbdoc\/en-us\/000134526\/sql-server-model-database-repair\" target=\"_blank\" rel=\"noreferrer noopener\">corrupt<\/a>, unavailable, or misconfigured:&nbsp;<\/p>\n\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>You cannot create new databases. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>tempdb&nbsp;cannot be created at startup. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>The SQL Server instance may&nbsp;fail to&nbsp;start.&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n\n<p>For this reason:&nbsp;<\/p>\n\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Avoid experimental changes in <em>model<\/em>. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Treat <em>model<\/em> like any other critical system database. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Include it in your system database backup strategy.&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"h-9-model-is-often-overlooked-in-dev-test-environments-nbsp\">9. <em>model<\/em> Is Often Overlooked in Dev\/Test Environments \u202f&nbsp;<\/h2>\n\n\n\n<p>Developers commonly work on machines where:&nbsp;<\/p>\n\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>The <em>model<\/em> database has been&nbsp;modified&nbsp;by past experiments. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Autogrowth&nbsp;is set to tiny percentages. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Recovery <em>model<\/em> is unintentionally<code><a href=\"https:\/\/www.red-gate.com\/simple-talk\/databases\/sql-server\/database-administration-sql-server\/understanding-sql-server-recovery-models\/#full-recovery-model\" target=\"_blank\" rel=\"noreferrer noopener\"> FULL<\/a><\/code>. \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Compatibility level is wrong.&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n\n<p>This leads to differences between dev, test, and production behavior. \u202f&nbsp;<\/p>\n\n\n\n<p>Ensuring <em>model<\/em> is clean and standardized improves reproducibility across environments.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-10-review-model-after-sql-server-upgrades-nbsp\">10. Review <em>model<\/em> After SQL Server Upgrades \u202f&nbsp;<\/h2>\n\n\n\n<p>Upgrades may adjust some settings, but old customizations often persist.&nbsp;After major upgrades, review that <em>model <\/em>still matches:&nbsp;<\/p>\n\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Required defaults \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>File paths for new storage \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Standard organizational settings \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Desired compatibility level&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n\n<p>A quick check prevents legacy configurations from creeping into new databases. \u202f&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-key-takeaways-nbsp\">Key Takeaways\u202f&nbsp;<\/h2>\n\n\n\n<p>Developers often overlook the <em>model<\/em> database, but it has a direct impact on every database they create. By understanding that <em>model<\/em> is a template, not an empty shell, you can:&nbsp;<\/p>\n\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Avoid propagating accidental objects \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Maintain consistent database behavior \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Improve reliability across environments \u202f&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n<div class=\"block-core-list\">\n<ul class=\"wp-block-list\">\n<li>Ensure new databases start with the right defaults&nbsp;<\/li>\n<\/ul>\n<\/div>\n\n\n<p>A clean, well-configured <em>model<\/em> database is a small investment that pays off in consistency, predictability, and fewer surprises.<\/p>\n\n\n\n<section id=\"faq\" class=\"faq-block my-5xl\">\n    <h2>FAQs: Understanding the SQL Server model Database<\/h2>\n\n                        <h3 class=\"mt-4xl\">1. What is model?<\/h3>\n            <div class=\"faq-answer\">\n                <p>The template for every new database. SQL Server copies all objects and settings from <em>model<\/em> when creating a database.<\/p>\n            <\/div>\n                    <h3 class=\"mt-4xl\">2. Why do new databases have unexpected objects?<\/h3>\n            <div class=\"faq-answer\">\n                <p>Because they exist in <em>model<\/em>. Anything placed there &#8211; even accidentally &#8211; replicates into every new database.<\/p>\n            <\/div>\n                    <h3 class=\"mt-4xl\">3. What gets inherited?<\/h3>\n            <div class=\"faq-answer\">\n                <p>Objects, recovery model, ANSI settings, collation, file sizes, autogrowth rules, number of files, and file paths.<\/p>\n            <\/div>\n                    <h3 class=\"mt-4xl\">4. Should I add user objects to model?<\/h3>\n            <div class=\"faq-answer\">\n                <p>No. User tables, procs, functions, or test items will spread everywhere.<\/p>\n            <\/div>\n                    <h3 class=\"mt-4xl\">5. When should I modify model?<\/h3>\n            <div class=\"faq-answer\">\n                <p>Only to set intentional, organization-wide defaults (recovery model, file sizing, required security configuration).<\/p>\n            <\/div>\n                    <h3 class=\"mt-4xl\">6. How does model affect tempdb?<\/h3>\n            <div class=\"faq-answer\">\n                <p>tempdb is recreated from <em>model<\/em> at startup, so settings like collation and some defaults flow into it.<\/p>\n            <\/div>\n                    <h3 class=\"mt-4xl\">7. What if model is corrupt or misconfigured?<\/h3>\n            <div class=\"faq-answer\">\n                <p>SQL Server may fail to create new databases, recreate tempdb, or even start.<\/p>\n            <\/div>\n                    <h3 class=\"mt-4xl\">8. Why do dev\/test environments differ?<\/h3>\n            <div class=\"faq-answer\">\n                <p>Developers often have modified <em>model<\/em> databases, causing unintended differences in growth settings, defaults, or compatibility levels.<\/p>\n            <\/div>\n                    <h3 class=\"mt-4xl\">9. Does upgrading SQL Server affect model?<\/h3>\n            <div class=\"faq-answer\">\n                <p>Some updates occur, but old customizations persist. Always review <em>model<\/em> after upgrades.<\/p>\n            <\/div>\n                    <h3 class=\"mt-4xl\">10. How do I maintain model?<\/h3>\n            <div class=\"faq-answer\">\n                <p>Keep it clean, avoid user objects, back it up, and review after changes or upgrades.<\/p>\n            <\/div>\n            <\/section>\n\n\n\n<section id=\"my-first-block-block_0a9161f5c940fe5caf232d92f2eb0fcb\" class=\"my-first-block alignwide\">\n    <div class=\"bg-brand-600 text-base-white py-5xl px-4xl rounded-sm bg-gradient-to-r from-brand-600 to-brand-500 red\">\n        <div class=\"gap-4xl items-start md:items-center flex flex-col md:flex-row justify-between\">\n            <div class=\"flex-1 col-span-10 lg:col-span-7\">\n                <h3 class=\"mt-0 font-display mb-2 text-display-sm\">Subscribe to the Simple Talk newsletter<\/h3>\n                <div class=\"child:last-of-type:mb-0\">\n                                            Get selected articles, event information, podcasts and other industry content delivered straight to your inbox every two weeks.                                    <\/div>\n            <\/div>\n                            <a href=\"https:\/\/www.red-gate.com\/simple-talk\/subscribe\/\" class=\"btn btn--secondary btn--lg\">Subscribe now<\/a>\n                    <\/div>\n    <\/div>\n<\/section>","protected":false},"excerpt":{"rendered":"<p>Learn how SQL Server\u2019s model database serves as a template for new databases, including file settings, recovery model, and deployment best practices.&hellip;<\/p>\n","protected":false},"author":346483,"featured_media":107942,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[143523,53,143524],"tags":[4168,4150,4151],"coauthors":[159368],"class_list":["post-107937","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-databases","category-featured","category-sql-server","tag-database","tag-sql","tag-sql-server"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/posts\/107937","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/users\/346483"}],"replies":[{"embeddable":true,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/comments?post=107937"}],"version-history":[{"count":8,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/posts\/107937\/revisions"}],"predecessor-version":[{"id":107969,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/posts\/107937\/revisions\/107969"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/media\/107942"}],"wp:attachment":[{"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/media?parent=107937"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/categories?post=107937"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/tags?post=107937"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.red-gate.com\/simple-talk\/wp-json\/wp\/v2\/coauthors?post=107937"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}