[{"data":1,"prerenderedAt":713},["ShallowReactive",2],{"navigation":3,"-connectors-cloudflare":104,"-connectors-cloudflare-surround":708},[4,21,82],{"title":5,"path":6,"stem":7,"children":8,"icon":10},"Getting Started","/guide","1.guide/1.index",[9,11,16],{"title":5,"path":6,"stem":7,"icon":10},"ph:book-open-duotone",{"title":12,"path":13,"stem":14,"icon":15},"HTTP Server","/guide/http-server","1.guide/3.http-server","material-symbols:http",{"title":17,"path":18,"stem":19,"icon":20},"Custom Connectors","/guide/custom-connector","1.guide/4.custom-connector","material-symbols-light:dashboard-customize",{"title":22,"path":23,"stem":24,"children":25,"icon":27},"Connectors","/connectors","2.connectors/1.index",[26,28,33,38,43,48,53,58,63,67,72,77],{"title":22,"path":23,"stem":24,"icon":27},"gravity-ui:plug-connection",{"title":29,"path":30,"stem":31,"icon":32},"Bun SQlite","/connectors/bun","2.connectors/bun","simple-icons:bun",{"title":34,"path":35,"stem":36,"icon":37},"Cloudflare","/connectors/cloudflare","2.connectors/cloudflare","devicon-plain:cloudflareworkers",{"title":39,"path":40,"stem":41,"icon":42},"LibSQL","/connectors/libsql","2.connectors/libsql","clarity:node-line",{"title":44,"path":45,"stem":46,"icon":47},"MySQL","/connectors/mysql","2.connectors/mysql","simple-icons:mysql",{"title":49,"path":50,"stem":51,"icon":52},"NEON","/connectors/neon","2.connectors/neon","cbi:neon",{"title":54,"path":55,"stem":56,"icon":57},"PGlite","/connectors/pglite","2.connectors/pglite","simple-icons:postgresql",{"title":59,"path":60,"stem":61,"icon":62},"PlanetScale","/connectors/planetscale","2.connectors/planetscale","simple-icons:planetscale",{"title":64,"path":65,"stem":66,"icon":57},"PostgreSQL","/connectors/postgresql","2.connectors/postgresql",{"title":68,"path":69,"stem":70,"icon":71},"SQLite","/connectors/sqlite","2.connectors/sqlite","simple-icons:sqlite",{"title":73,"path":74,"stem":75,"icon":76},"Turso","/connectors/turso","2.connectors/turso","simple-icons:turso",{"title":78,"path":79,"stem":80,"icon":81},"Vercel","/connectors/vercel","2.connectors/vercel","radix-icons:vercel-logo",{"title":83,"path":84,"stem":85,"children":86,"icon":88},"Integrations","/integrations","3.integrations/1.index",[87,89,94,99],{"title":83,"path":84,"stem":85,"icon":88},"carbon:property-relationship",{"title":90,"path":91,"stem":92,"icon":93},"Drizzle","/integrations/drizzle","3.integrations/drizzle","simple-icons:drizzle",{"title":95,"path":96,"stem":97,"icon":98},"Kysely","/integrations/kysely","3.integrations/kysely","mynaui:letter-k",{"title":100,"path":101,"stem":102,"icon":103},"Prisma","/integrations/prisma","3.integrations/prisma","simple-icons:prisma",{"id":105,"title":34,"body":106,"description":702,"extension":703,"meta":704,"navigation":705,"path":35,"seo":706,"stem":36,"__hash__":707},"content/2.connectors/cloudflare.md",{"type":107,"value":108,"toc":687,"icon":37},"minimark",[109,114,118,125,130,137,244,264,268,275,278,281,285,288,293,296,307,311,316,387,390,395,398,402,426,492,496,498,502,504,508,511,520,522,527,598,601,606,608,611,618,680,683],[110,111,113],"h2",{"id":112},"cloudflare-d1","Cloudflare D1",[115,116],"read-more",{"to":117},"https://developers.cloudflare.com/d1",[119,120,121],"note",{},[122,123,124],"p",{},"\nThis connector works within cloudflare workers with D1 enabled.",[126,127,129],"h3",{"id":128},"usage","Usage",[122,131,132,133,136],{},"Use ",[134,135,112],"code",{}," connector:",[138,139,144],"pre",{"className":140,"code":141,"language":142,"meta":143,"style":143},"language-js shiki shiki-themes github-light github-dark github-dark","import { createDatabase } from \"db0\";\nimport cloudflareD1 from \"db0/connectors/cloudflare-d1\";\n\nconst db = createDatabase(\n  cloudflareD1({\n    bindingName: \"DB\",\n  }),\n);\n","js","",[134,145,146,169,184,191,211,220,232,238],{"__ignoreMap":143},[147,148,151,155,159,162,166],"span",{"class":149,"line":150},"line",1,[147,152,154],{"class":153},"so5gQ","import",[147,156,158],{"class":157},"slsVL"," { createDatabase } ",[147,160,161],{"class":153},"from",[147,163,165],{"class":164},"sfrk1"," \"db0\"",[147,167,168],{"class":157},";\n",[147,170,172,174,177,179,182],{"class":149,"line":171},2,[147,173,154],{"class":153},[147,175,176],{"class":157}," cloudflareD1 ",[147,178,161],{"class":153},[147,180,181],{"class":164}," \"db0/connectors/cloudflare-d1\"",[147,183,168],{"class":157},[147,185,187],{"class":149,"line":186},3,[147,188,190],{"emptyLinePlaceholder":189},true,"\n",[147,192,194,197,201,204,208],{"class":149,"line":193},4,[147,195,196],{"class":153},"const",[147,198,200],{"class":199},"suiK_"," db",[147,202,203],{"class":153}," =",[147,205,207],{"class":206},"shcOC"," createDatabase",[147,209,210],{"class":157},"(\n",[147,212,214,217],{"class":149,"line":213},5,[147,215,216],{"class":206},"  cloudflareD1",[147,218,219],{"class":157},"({\n",[147,221,223,226,229],{"class":149,"line":222},6,[147,224,225],{"class":157},"    bindingName: ",[147,227,228],{"class":164},"\"DB\"",[147,230,231],{"class":157},",\n",[147,233,235],{"class":149,"line":234},7,[147,236,237],{"class":157},"  }),\n",[147,239,241],{"class":149,"line":240},8,[147,242,243],{"class":157},");\n",[119,245,246,253],{},[122,247,248,249,252],{},"\nIn order for the driver to work, ",[134,250,251],{},"globalThis.__env__.DB"," value should be set.",[122,254,255,256,263],{},"If you are using ",[257,258,262],"a",{"href":259,"rel":260},"https://nitro.unjs.io/",[261],"nofollow","Nitro"," you don't need to do any extra steps.",[126,265,267],{"id":266},"options","Options",[269,270,272],"h4",{"id":271},"bindingname",[134,273,274],{},"bindingName",[122,276,277],{},"Assigned binding name.",[279,280],"hr",{},[110,282,284],{"id":283},"hyperdrive-postgresql","Hyperdrive PostgreSQL",[115,286],{"to":287},"https://developers.cloudflare.com/hyperdrive",[119,289,290],{},[122,291,292],{},"\nThis connector works within Cloudflare Workers with Hyperdrive enabled.",[126,294,129],{"id":295},"usage-1",[122,297,298,299,306],{},"For this connector, you need to install ",[257,300,303],{"href":301,"rel":302},"https://www.npmjs.com/package/pg",[261],[134,304,305],{},"pg"," dependency:",[308,309],"pm-install",{"name":310},"pg @types/pg",[122,312,132,313,136],{},[134,314,315],{},"cloudflare-hyperdrive-postgresql",[138,317,319],{"className":140,"code":318,"language":142,"meta":143,"style":143},"import { createDatabase } from \"db0\";\nimport cloudflareHyperdrivePostgresql from \"db0/connectors/cloudflare-hyperdrive-postgresql\";\n\nconst db = createDatabase(\n  cloudflareHyperdrivePostgresql({\n    bindingName: \"POSTGRESQL\",\n  }),\n);\n",[134,320,321,333,347,351,363,370,379,383],{"__ignoreMap":143},[147,322,323,325,327,329,331],{"class":149,"line":150},[147,324,154],{"class":153},[147,326,158],{"class":157},[147,328,161],{"class":153},[147,330,165],{"class":164},[147,332,168],{"class":157},[147,334,335,337,340,342,345],{"class":149,"line":171},[147,336,154],{"class":153},[147,338,339],{"class":157}," cloudflareHyperdrivePostgresql ",[147,341,161],{"class":153},[147,343,344],{"class":164}," \"db0/connectors/cloudflare-hyperdrive-postgresql\"",[147,346,168],{"class":157},[147,348,349],{"class":149,"line":186},[147,350,190],{"emptyLinePlaceholder":189},[147,352,353,355,357,359,361],{"class":149,"line":193},[147,354,196],{"class":153},[147,356,200],{"class":199},[147,358,203],{"class":153},[147,360,207],{"class":206},[147,362,210],{"class":157},[147,364,365,368],{"class":149,"line":213},[147,366,367],{"class":206},"  cloudflareHyperdrivePostgresql",[147,369,219],{"class":157},[147,371,372,374,377],{"class":149,"line":222},[147,373,225],{"class":157},[147,375,376],{"class":164},"\"POSTGRESQL\"",[147,378,231],{"class":157},[147,380,381],{"class":149,"line":234},[147,382,237],{"class":157},[147,384,385],{"class":149,"line":240},[147,386,243],{"class":157},[126,388,267],{"id":389},"options-1",[269,391,393],{"id":392},"bindingname-1",[134,394,274],{},[122,396,397],{},"Assigned binding name for your Hyperdrive instance.",[269,399,401],{"id":400},"additional-options","Additional Options",[122,403,404,405,408,409,408,412,408,415,408,418,421,422,425],{},"You can also pass PostgreSQL client configuration options (except for ",[134,406,407],{},"user",", ",[134,410,411],{},"database",[134,413,414],{},"password",[134,416,417],{},"port",[134,419,420],{},"host",", and ",[134,423,424],{},"connectionString"," which are managed by Hyperdrive):",[138,427,429],{"className":140,"code":428,"language":142,"meta":143,"style":143},"const db = createDatabase(\n  cloudflareHyperdrivePostgresql({\n    bindingName: \"HYPERDRIVE\",\n    // Additional PostgreSQL options\n    statement_timeout: 5000,\n    query_timeout: 10000,\n  }),\n);\n",[134,430,431,443,449,458,464,474,484,488],{"__ignoreMap":143},[147,432,433,435,437,439,441],{"class":149,"line":150},[147,434,196],{"class":153},[147,436,200],{"class":199},[147,438,203],{"class":153},[147,440,207],{"class":206},[147,442,210],{"class":157},[147,444,445,447],{"class":149,"line":171},[147,446,367],{"class":206},[147,448,219],{"class":157},[147,450,451,453,456],{"class":149,"line":186},[147,452,225],{"class":157},[147,454,455],{"class":164},"\"HYPERDRIVE\"",[147,457,231],{"class":157},[147,459,460],{"class":149,"line":193},[147,461,463],{"class":462},"sCsY4","    // Additional PostgreSQL options\n",[147,465,466,469,472],{"class":149,"line":213},[147,467,468],{"class":157},"    statement_timeout: ",[147,470,471],{"class":199},"5000",[147,473,231],{"class":157},[147,475,476,479,482],{"class":149,"line":222},[147,477,478],{"class":157},"    query_timeout: ",[147,480,481],{"class":199},"10000",[147,483,231],{"class":157},[147,485,486],{"class":149,"line":234},[147,487,237],{"class":157},[147,489,490],{"class":149,"line":240},[147,491,243],{"class":157},[115,493],{"to":494,"title":495},"https://node-postgres.com/apis/client#new-client","node-postgres documentation",[279,497],{},[110,499,501],{"id":500},"hyperdrive-mysql","Hyperdrive MySQL",[115,503],{"to":287},[119,505,506],{},[122,507,292],{},[126,509,129],{"id":510},"usage-2",[122,512,298,513,306],{},[257,514,517],{"href":515,"rel":516},"https://www.npmjs.com/package/mysql2",[261],[134,518,519],{},"mysql2",[308,521],{"name":519},[122,523,132,524,136],{},[134,525,526],{},"cloudflare-hyperdrive-mysql",[138,528,530],{"className":140,"code":529,"language":142,"meta":143,"style":143},"import { createDatabase } from \"db0\";\nimport cloudflareHyperdriveMysql from \"db0/connectors/cloudflare-hyperdrive-mysql\";\n\nconst db = createDatabase(\n  cloudflareHyperdriveMysql({\n    bindingName: \"MYSQL\",\n  }),\n);\n",[134,531,532,544,558,562,574,581,590,594],{"__ignoreMap":143},[147,533,534,536,538,540,542],{"class":149,"line":150},[147,535,154],{"class":153},[147,537,158],{"class":157},[147,539,161],{"class":153},[147,541,165],{"class":164},[147,543,168],{"class":157},[147,545,546,548,551,553,556],{"class":149,"line":171},[147,547,154],{"class":153},[147,549,550],{"class":157}," cloudflareHyperdriveMysql ",[147,552,161],{"class":153},[147,554,555],{"class":164}," \"db0/connectors/cloudflare-hyperdrive-mysql\"",[147,557,168],{"class":157},[147,559,560],{"class":149,"line":186},[147,561,190],{"emptyLinePlaceholder":189},[147,563,564,566,568,570,572],{"class":149,"line":193},[147,565,196],{"class":153},[147,567,200],{"class":199},[147,569,203],{"class":153},[147,571,207],{"class":206},[147,573,210],{"class":157},[147,575,576,579],{"class":149,"line":213},[147,577,578],{"class":206},"  cloudflareHyperdriveMysql",[147,580,219],{"class":157},[147,582,583,585,588],{"class":149,"line":222},[147,584,225],{"class":157},[147,586,587],{"class":164},"\"MYSQL\"",[147,589,231],{"class":157},[147,591,592],{"class":149,"line":234},[147,593,237],{"class":157},[147,595,596],{"class":149,"line":240},[147,597,243],{"class":157},[126,599,267],{"id":600},"options-2",[269,602,604],{"id":603},"bindingname-2",[134,605,274],{},[122,607,397],{},[126,609,401],{"id":610},"additional-options-1",[122,612,613,614,617],{},"You can also pass MySQL client configuration options (except for connection/authentication options which are managed by Hyperdrive, and ",[134,615,616],{},"disableEval"," which is incompatible in Cloudflare Workers):",[138,619,621],{"className":140,"code":620,"language":142,"meta":143,"style":143},"const db = createDatabase(\n  cloudflareHyperdriveMysql({\n    bindingName: \"HYPERDRIVE\",\n    // Additional MySQL options\n    connectTimeout: 10000,\n    queryTimeout: 5000,\n  }),\n);\n",[134,622,623,635,641,649,654,663,672,676],{"__ignoreMap":143},[147,624,625,627,629,631,633],{"class":149,"line":150},[147,626,196],{"class":153},[147,628,200],{"class":199},[147,630,203],{"class":153},[147,632,207],{"class":206},[147,634,210],{"class":157},[147,636,637,639],{"class":149,"line":171},[147,638,578],{"class":206},[147,640,219],{"class":157},[147,642,643,645,647],{"class":149,"line":186},[147,644,225],{"class":157},[147,646,455],{"class":164},[147,648,231],{"class":157},[147,650,651],{"class":149,"line":193},[147,652,653],{"class":462},"    // Additional MySQL options\n",[147,655,656,659,661],{"class":149,"line":213},[147,657,658],{"class":157},"    connectTimeout: ",[147,660,481],{"class":199},[147,662,231],{"class":157},[147,664,665,668,670],{"class":149,"line":222},[147,666,667],{"class":157},"    queryTimeout: ",[147,669,471],{"class":199},[147,671,231],{"class":157},[147,673,674],{"class":149,"line":234},[147,675,237],{"class":157},[147,677,678],{"class":149,"line":240},[147,679,243],{"class":157},[115,681],{"to":682},"https://github.com/sidorares/node-mysql2/blob/master/typings/mysql/lib/Connection.d.ts#L82-L329",[684,685,686],"style",{},"html pre.shiki code .so5gQ, html code.shiki .so5gQ{--shiki-light:#D73A49;--shiki-default:#F97583;--shiki-dark:#F97583}html pre.shiki code .slsVL, html code.shiki .slsVL{--shiki-light:#24292E;--shiki-default:#E1E4E8;--shiki-dark:#E1E4E8}html pre.shiki code .sfrk1, html code.shiki .sfrk1{--shiki-light:#032F62;--shiki-default:#9ECBFF;--shiki-dark:#9ECBFF}html pre.shiki code .suiK_, html code.shiki .suiK_{--shiki-light:#005CC5;--shiki-default:#79B8FF;--shiki-dark:#79B8FF}html pre.shiki code .shcOC, html code.shiki .shcOC{--shiki-light:#6F42C1;--shiki-default:#B392F0;--shiki-dark:#B392F0}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sCsY4, html code.shiki .sCsY4{--shiki-light:#6A737D;--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":143,"searchDepth":171,"depth":171,"links":688},[689,693,697],{"id":112,"depth":171,"text":113,"children":690},[691,692],{"id":128,"depth":186,"text":129},{"id":266,"depth":186,"text":267},{"id":283,"depth":171,"text":284,"children":694},[695,696],{"id":295,"depth":186,"text":129},{"id":389,"depth":186,"text":267},{"id":500,"depth":171,"text":501,"children":698},[699,700,701],{"id":510,"depth":186,"text":129},{"id":600,"depth":186,"text":267},{"id":610,"depth":186,"text":401},"Connect DB0 to Cloudflare D1 or PostgreSQL/MySQL using Cloudflare Hyperdrive","md",{"icon":37},{"icon":37},{"title":34,"description":702},"53svV0HzZUEXiudw9SeUmcWUTsgbmHjL_jqjanAzNMg",[709,711],{"title":29,"path":30,"stem":31,"description":710,"icon":32,"children":-1},"Connect DB0 to Bun SQLite",{"title":39,"path":40,"stem":41,"description":712,"icon":42,"children":-1},"Connect DB0 to LibSQL",1780492438329]