(window.webpackJsonp=window.webpackJsonp||[]).push([[16],{J5rj:function(e,o,t){"use strict";t.r(o),t.d(o,"_frontmatter",(function(){return b})),t.d(o,"default",(function(){return i}));var c=t("k1TG"),n=t("8o2o"),a=(t("q1tI"),t("7ljp")),r=t("hhGP"),b=(t("qKvR"),{});void 0!==b&&b&&b===Object(b)&&Object.isExtensible(b)&&!b.hasOwnProperty("__filemeta")&&Object.defineProperty(b,"__filemeta",{configurable:!0,value:{name:"_frontmatter",filename:"src/pages/docs/Connecting to Databases/cockroachdb.mdx"}});var s=r.a;function i(e){var o=e.components,t=Object(n.a)(e,["components"]);return Object(a.b)(s,Object(c.a)({},t,{components:o,mdxType:"MDXLayout"}),Object(a.b)("h2",{id:"cockroachdb"},"CockroachDB"),Object(a.b)("p",null,"The recommended connector library for CockroachDB is\n",Object(a.b)("a",{href:"https://github.com/cockroachdb/sqlalchemy-cockroachdb",parentName:"p"},"sqlalchemy-cockroachdb"),"."),Object(a.b)("p",null,"The expected connection string is formatted as follows:"),Object(a.b)("pre",null,Object(a.b)("code",{parentName:"pre"},"cockroachdb://root@{hostname}:{port}/{database}?sslmode=disable\n")))}void 0!==i&&i&&i===Object(i)&&Object.isExtensible(i)&&!i.hasOwnProperty("__filemeta")&&Object.defineProperty(i,"__filemeta",{configurable:!0,value:{name:"MDXContent",filename:"src/pages/docs/Connecting to Databases/cockroachdb.mdx"}}),i.isMDXComponent=!0}}]);
//# sourceMappingURL=component---src-pages-docs-connecting-to-databases-cockroachdb-mdx-174341ced77b01511d7b.js.map