{"id":14746,"date":"2023-11-30T00:10:43","date_gmt":"2023-11-30T08:10:43","guid":{"rendered":"https:\/\/www.pingcap.com\/?p=14746"},"modified":"2024-02-17T19:28:37","modified_gmt":"2024-02-18T03:28:37","slug":"integrating-tidb-cloud-serverless-driver-prisma-orm","status":"publish","type":"post","link":"https:\/\/www.pingcap.com\/ko\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/","title":{"rendered":"Integrating TiDB Cloud Serverless Driver with Prisma ORM"},"content":{"rendered":"<p>We&#8217;re excited to announce the release of the TiDB Cloud Prisma Adapter, a significant advancement following our recent launch of the <a href=\"https:\/\/www.pingcap.com\/ko\/blog\/tidb-cloud-serverless-driver-seamless-connectivity-edge-environments\/\">TiDB Cloud Serverless Driver<\/a>. The serverless driver is a JavaScript Driver tailored for TiDB Serverless, our fully managed MySQL-compatible DBaaS optimized for auto-scaling workloads. By leveraging the efficiency of HTTPS connections over traditional long-lived TCP connections, the TiDB Cloud Prisma Adapter simplifies the connectivity process to TiDB Serverless from Prisma ORM and significantly enhances performance.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"What_is_Prisma_ORM\"><\/span><strong>What is Prisma <\/strong>ORM<strong>?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p><a href=\"https:\/\/www.prisma.io\/\">Prisma<\/a> is an open-source next-generation ORM (Object-Relational Mapping) that helps developers interact with their database intuitively, efficiently, and safely. It supports databases such as MySQL, PostgreSQL, SQLite, and SQL Server.<\/p>\n\n\n\n<p>There are two critical parts of Prisma:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Prisma Client<\/strong>: An auto-generated and type-safe query builder for Node.js &amp; TypeScript.<\/li>\n\n\n\n<li><strong>Prisma Query Engine<\/strong>: A translation engine written in Rust.<\/li>\n<\/ul>\n\n\n\n<p>The Prisma Client can be generated from the<a href=\"https:\/\/www.prisma.io\/docs\/concepts\/components\/prisma-schema\"> Prisma schema<\/a>, a declarative language that defines database schema. You can import it into your code and send queries to your database.<\/p>\n\n\n\n<p>The Prisma Query Engine accepts the query from the Prisma Client and translates it into raw SQL statements. Then, it will execute SQL statements with the corresponding database drivers.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"150\" src=\"https:\/\/static.pingcap.com\/files\/2023\/11\/27010847\/image-10-1024x150.png\" alt=\"Prisma ORM workflow\" class=\"wp-image-14747\" srcset=\"https:\/\/static.pingcap.com\/files\/2023\/11\/27010847\/image-10-1024x150.png 1024w, https:\/\/static.pingcap.com\/files\/2023\/11\/27010847\/image-10-300x44.png 300w, https:\/\/static.pingcap.com\/files\/2023\/11\/27010847\/image-10-768x112.png 768w, https:\/\/static.pingcap.com\/files\/2023\/11\/27010847\/image-10.png 1280w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"has-text-align-center\"><em>Figure 1. Prisma Workflow<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Why_TiDB_Cloud_Prisma_Adapter\"><\/span><strong>Why TiDB Cloud Prisma Adapter?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Recently, Prisma introduced the driver adapters preview feature, an innovative mechanism to connect Prisma with serverless drivers. The TiDB Cloud Prisma adapter is a bridge between the Prisma Client and TiDB Cloud serverless driver. It connects the Prisma Client with the TiDB Cloud serverless driver, adeptly handling SQL statements generated by the Prisma query engine. These statements are executed via the TiDB Cloud serverless driver, which communicates with TiDB Serverless over HTTPS.\u00a0<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"369\" src=\"https:\/\/static.pingcap.com\/files\/2023\/11\/27010940\/image-11-1024x369.png\" alt=\"Prisma Adaptor Workflow\" class=\"wp-image-14748\" srcset=\"https:\/\/static.pingcap.com\/files\/2023\/11\/27010940\/image-11-1024x369.png 1024w, https:\/\/static.pingcap.com\/files\/2023\/11\/27010940\/image-11-300x108.png 300w, https:\/\/static.pingcap.com\/files\/2023\/11\/27010940\/image-11-768x277.png 768w, https:\/\/static.pingcap.com\/files\/2023\/11\/27010940\/image-11-1536x554.png 1536w, https:\/\/static.pingcap.com\/files\/2023\/11\/27010940\/image-11-1440x519.png 1440w, https:\/\/static.pingcap.com\/files\/2023\/11\/27010940\/image-11.png 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"has-text-align-center\"><em>Figure 2. TiDB Cloud Prisma Adapter Workflow<\/em><\/p>\n\n\n\n<p>This is especially useful in serverless functions where connections are established per each function invocation. Establishing the HTTPS connection optimizes performance and alleviates stress on the database. More importantly, this marks a pivotal step in <a href=\"https:\/\/github.com\/prisma\/prisma\/issues\/21394\">enabling Prisma Client to function seamlessly in edge computing environments<\/a>, such as Vercel Edge Function and Cloudflare Workers.\u00a0<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"How_to_Use_the_Adapter%EF%BC%9F\"><\/span>How to Use the Adapter\uff1f<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Before you start, make sure you have:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A<a href=\"https:\/\/docs.pingcap.com\/tidbcloud\/create-tidb-cluster-serverless\"> TiDB Serverless<\/a> cluster.<a href=\"http:\/\/tidbcloud.com\/free-trial\"> Register now<\/a> for free if you don\u2019t have an account yet.<\/li>\n\n\n\n<li>Node.js\u00a018 or later.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Install the Adapter<\/strong><\/h3>\n\n\n\n<p>Install the <code>@tidbcloud\/prisma-adapter<\/code> driver adapter, the <code>@tidbcloud\/serverless<\/code> serverless driver, and the Prisma CLI:\u00a0<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>npm install @tidbcloud\/prisma-adapter\nnpm install @tidbcloud\/serverless\nnpm install prisma --save-dev<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Configure the Environment<\/strong><\/h3>\n\n\n\n<p>Then set the environment to your .env file. You can get connection information on the TiDB Cloud console.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ .env\nDATABASE_URL=\"mysql:\/\/username:password@host:4000\/database?sslaccept=strict\"<\/code><\/pre>\n\n\n\n<p><strong>NOTE<\/strong><\/p>\n\n\n\n<p>The adapter only supports Prisma Client. Prisma migration and introspection still go through the traditional TCP way. If you only need Prisma Client, you can set the <code>DATABASE_URL<\/code> as the <code>mysql:\/\/username:password@host\/database<\/code> format, in which port and SSL parameters are not needed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Define the Schema<\/strong><\/h3>\n\n\n\n<p>First, create a file named<code> schema.prisma<\/code> to define your schema. You need to reference the environment variable in the <code>schema.prisma<\/code> file. Make sure you also include <code>driverAdapters<\/code> in the Preview Feature field. Then, define the schema according to your business. Here we use the <code>user<\/code> as an example:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ schema.prisma\ngenerator client {\n  provider        = \"prisma-client-js\"\n  previewFeatures = &#91;\"driverAdapters\"]\n}\n\ndatasource db {\n  provider     = \"mysql\"\n  url          = env(\"DATABASE_URL\")\n} \n\n\/\/ define model according to your database table\nmodel user {\n  id    Int     @id @default(autoincrement())\n  email String? @unique(map: \"uniq_email\") @db.VarChar(255)\n  name  String? @db.VarChar(255)\n}\n<\/code><\/pre>\n\n\n\n<p>After defining your schema, you need to:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Run <code>prisma db push<\/code> to sync the schema if your TiDB Serverless cluster does not have the corresponding table. This step will go through the traditional TCP way rather than the adapter.<\/li>\n\n\n\n<li>Run <code>prisma generate <\/code>to generate the Prisma Client.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Use the Adapter<\/h3>\n\n\n\n<p>Here is an example of using the adapter to query from the TiDB Serverless cluster:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ hello-world.js\nimport { connect } from '@tidbcloud\/serverless';\nimport { PrismaTiDBCloud } from '@tidbcloud\/prisma-adapter';\nimport { PrismaClient } from '@prisma\/client';\nimport dotenv from 'dotenv';\n\n\/\/ setup\ndotenv.config();\nconst connectionString = `${process.env.DATABASE_URL}`;\n\n\/\/ init prisma client\nconst connection = connect({ url: connectionString });\nconst adapter = new PrismaTiDBCloud(connection);\nconst prisma = new PrismaClient({ adapter });\n\n\/\/ insert\nconst user = await prisma.user.create({\n  data: {\n    email: 'test@prisma.io',\n    name: 'test',\n  },\n})\nconsole.log(user)\n\n\/\/ query\nconsole.log(await prisma.user.findMany())\n\n\/\/ delete\nawait prisma.user.delete({\n   where: {\n      id: user.id,\n   },\n})\n\n\/\/ txn\nconst createUser1 = prisma.user.create({\n  data: {\n    email: 'yuhang.shi@pingcap.com',\n    name: 'Shi Yuhang',\n  },\n})\n\nconst createUser2 = prisma.user.create({\n  data: {\n    email: 'yuhang.shi@pingcap.com',\n    name: 'Shi Yuhang2',\n  },\n})\n\nconst createUser3 = prisma.user.create({\n  data: {\n    email: 'yuhang2.shi@pingcap.com',\n    name: 'Shi Yuhang2',\n  },\n})\ntry {\n  await prisma.$transaction(&#91;createUser1, createUser2]) \/\/ Operations fail together\n} catch (e) {\n  console.log(e)\n  await prisma.$transaction(&#91;createUser1, createUser3]) \/\/ Operations success together\n}\n\nconsole.log(await prisma.user.findMany())<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Conclusion\"><\/span><strong>Conclusion<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>The integration of TiDB Cloud Serverless Driver with Prisma ORM provides a valuable addition to the world of web development and database management. This powerful combination offers developers the efficiency and scalability of a serverless database with the user-friendly experience of Prisma&#8217;s ORM, particularly in edge computing scenarios.<\/p>\n\n\n\n<p>Experience the power of this integration by <a href=\"http:\/\/tidbcloud.com\/free-trial\">spinning up a free TiDB Serveress<\/a> cluster now. If you have any feedback about the adapter, please comment on our<a href=\"https:\/\/github.com\/tidbcloud\/prisma-adapter\/issues\"> GitHub issue<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>We&#8217;re excited to announce the release of the TiDB Cloud Prisma Adapter, a significant advancement following our recent launch of the TiDB Cloud Serverless Driver. The serverless driver is a JavaScript Driver tailored for TiDB Serverless, our fully managed MySQL-compatible DBaaS optimized for auto-scaling workloads. By leveraging the efficiency of HTTPS connections over traditional long-lived [&hellip;]<\/p>\n","protected":false},"author":250,"featured_media":14823,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ub_ctt_via":"","footnotes":""},"categories":[13],"tags":[163,182,208],"class_list":["post-14746","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-product","tag-app-developer","tag-ecosystem","tag-tidb-serverless"],"acf":[],"featured_image_src":"https:\/\/static.pingcap.com\/files\/2023\/11\/30000835\/prisma-orm-banner.png","author_info":{"display_name":"Yuhang Shi","author_link":"https:\/\/www.pingcap.com\/ko\/blog\/author\/shiyuhang\/"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Prisma ORM Integration with TiDB Cloud Serverless Driver<\/title>\n<meta name=\"description\" content=\"Find out how TiDB Cloud&#039;s Prisma adapter simplifies the connectivity to TiDB Serverless from Prisma ORM for enhanced performance.\" \/>\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.pingcap.com\/ko\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Prisma ORM Integration with TiDB Cloud Serverless Driver\" \/>\n<meta property=\"og:description\" content=\"Find out how TiDB Cloud&#039;s Prisma adapter simplifies the connectivity to TiDB Serverless from Prisma ORM for enhanced performance.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.pingcap.com\/ko\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/\" \/>\n<meta property=\"og:site_name\" content=\"TiDB\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/facebook.com\/pingcap2015\" \/>\n<meta property=\"article:published_time\" content=\"2023-11-30T08:10:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-02-18T03:28:37+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/static.pingcap.com\/files\/2023\/11\/30000824\/1875x938-%E6%8B%B7%E8%B4%9D.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1875\" \/>\n\t<meta property=\"og:image:height\" content=\"938\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Yuhang Shi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/static.pingcap.com\/files\/2023\/11\/30000824\/1875x938-%E6%8B%B7%E8%B4%9D.png\" \/>\n<meta name=\"twitter:creator\" content=\"@PingCAP\" \/>\n<meta name=\"twitter:site\" content=\"@PingCAP\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Yuhang Shi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/\"},\"author\":{\"name\":\"Yuhang Shi\",\"@id\":\"https:\/\/www.pingcap.com\/#\/schema\/person\/52ab3127dde105e30cea1f9afd5a78f2\"},\"headline\":\"Integrating TiDB Cloud Serverless Driver with Prisma ORM\",\"datePublished\":\"2023-11-30T08:10:43+00:00\",\"dateModified\":\"2024-02-18T03:28:37+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/\"},\"wordCount\":639,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.pingcap.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/static.pingcap.com\/files\/2023\/11\/30000835\/prisma-orm-banner.png\",\"keywords\":[\"App Developer\",\"Ecosystem\",\"TiDB Serverless\"],\"articleSection\":[\"Product\"],\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/\",\"url\":\"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/\",\"name\":\"Prisma ORM Integration with TiDB Cloud Serverless Driver\",\"isPartOf\":{\"@id\":\"https:\/\/www.pingcap.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/static.pingcap.com\/files\/2023\/11\/30000835\/prisma-orm-banner.png\",\"datePublished\":\"2023-11-30T08:10:43+00:00\",\"dateModified\":\"2024-02-18T03:28:37+00:00\",\"description\":\"Find out how TiDB Cloud's Prisma adapter simplifies the connectivity to TiDB Serverless from Prisma ORM for enhanced performance.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#primaryimage\",\"url\":\"https:\/\/static.pingcap.com\/files\/2023\/11\/30000835\/prisma-orm-banner.png\",\"contentUrl\":\"https:\/\/static.pingcap.com\/files\/2023\/11\/30000835\/prisma-orm-banner.png\",\"width\":880,\"height\":290},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.pingcap.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Integrating TiDB Cloud Serverless Driver with Prisma ORM\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.pingcap.com\/#website\",\"url\":\"https:\/\/www.pingcap.com\/\",\"name\":\"TiDB\",\"description\":\"TiDB | SQL at Scale\",\"publisher\":{\"@id\":\"https:\/\/www.pingcap.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.pingcap.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.pingcap.com\/#organization\",\"name\":\"PingCAP\",\"url\":\"https:\/\/www.pingcap.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png\",\"contentUrl\":\"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png\",\"width\":811,\"height\":232,\"caption\":\"PingCAP\"},\"image\":{\"@id\":\"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/facebook.com\/pingcap2015\",\"https:\/\/x.com\/PingCAP\",\"https:\/\/linkedin.com\/company\/pingcap\",\"https:\/\/youtube.com\/channel\/UCuq4puT32DzHKT5rU1IZpIA\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.pingcap.com\/#\/schema\/person\/52ab3127dde105e30cea1f9afd5a78f2\",\"name\":\"Yuhang Shi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.pingcap.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/static.pingcap.com\/files\/2023\/11\/07015258\/shiyuhang-150x150.jpeg\",\"contentUrl\":\"https:\/\/static.pingcap.com\/files\/2023\/11\/07015258\/shiyuhang-150x150.jpeg\",\"caption\":\"Yuhang Shi\"},\"url\":\"https:\/\/www.pingcap.com\/ko\/blog\/author\/shiyuhang\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Prisma ORM Integration with TiDB Cloud Serverless Driver","description":"Find out how TiDB Cloud's Prisma adapter simplifies the connectivity to TiDB Serverless from Prisma ORM for enhanced performance.","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.pingcap.com\/ko\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/","og_locale":"ko_KR","og_type":"article","og_title":"Prisma ORM Integration with TiDB Cloud Serverless Driver","og_description":"Find out how TiDB Cloud's Prisma adapter simplifies the connectivity to TiDB Serverless from Prisma ORM for enhanced performance.","og_url":"https:\/\/www.pingcap.com\/ko\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/","og_site_name":"TiDB","article_publisher":"https:\/\/facebook.com\/pingcap2015","article_published_time":"2023-11-30T08:10:43+00:00","article_modified_time":"2024-02-18T03:28:37+00:00","og_image":[{"width":1875,"height":938,"url":"https:\/\/static.pingcap.com\/files\/2023\/11\/30000824\/1875x938-%E6%8B%B7%E8%B4%9D.png","type":"image\/png"}],"author":"Yuhang Shi","twitter_card":"summary_large_image","twitter_image":"https:\/\/static.pingcap.com\/files\/2023\/11\/30000824\/1875x938-%E6%8B%B7%E8%B4%9D.png","twitter_creator":"@PingCAP","twitter_site":"@PingCAP","twitter_misc":{"Written by":"Yuhang Shi","Est. reading time":"4\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#article","isPartOf":{"@id":"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/"},"author":{"name":"Yuhang Shi","@id":"https:\/\/www.pingcap.com\/#\/schema\/person\/52ab3127dde105e30cea1f9afd5a78f2"},"headline":"Integrating TiDB Cloud Serverless Driver with Prisma ORM","datePublished":"2023-11-30T08:10:43+00:00","dateModified":"2024-02-18T03:28:37+00:00","mainEntityOfPage":{"@id":"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/"},"wordCount":639,"commentCount":0,"publisher":{"@id":"https:\/\/www.pingcap.com\/#organization"},"image":{"@id":"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#primaryimage"},"thumbnailUrl":"https:\/\/static.pingcap.com\/files\/2023\/11\/30000835\/prisma-orm-banner.png","keywords":["App Developer","Ecosystem","TiDB Serverless"],"articleSection":["Product"],"inLanguage":"ko-KR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/","url":"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/","name":"Prisma ORM Integration with TiDB Cloud Serverless Driver","isPartOf":{"@id":"https:\/\/www.pingcap.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#primaryimage"},"image":{"@id":"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#primaryimage"},"thumbnailUrl":"https:\/\/static.pingcap.com\/files\/2023\/11\/30000835\/prisma-orm-banner.png","datePublished":"2023-11-30T08:10:43+00:00","dateModified":"2024-02-18T03:28:37+00:00","description":"Find out how TiDB Cloud's Prisma adapter simplifies the connectivity to TiDB Serverless from Prisma ORM for enhanced performance.","breadcrumb":{"@id":"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/"]}]},{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#primaryimage","url":"https:\/\/static.pingcap.com\/files\/2023\/11\/30000835\/prisma-orm-banner.png","contentUrl":"https:\/\/static.pingcap.com\/files\/2023\/11\/30000835\/prisma-orm-banner.png","width":880,"height":290},{"@type":"BreadcrumbList","@id":"https:\/\/www.pingcap.com\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.pingcap.com\/"},{"@type":"ListItem","position":2,"name":"Integrating TiDB Cloud Serverless Driver with Prisma ORM"}]},{"@type":"WebSite","@id":"https:\/\/www.pingcap.com\/#website","url":"https:\/\/www.pingcap.com\/","name":"\ud2f0DB","description":"TiDB | SQL at Scale","publisher":{"@id":"https:\/\/www.pingcap.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.pingcap.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/www.pingcap.com\/#organization","name":"PingCAP","url":"https:\/\/www.pingcap.com\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/","url":"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png","contentUrl":"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png","width":811,"height":232,"caption":"PingCAP"},"image":{"@id":"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/facebook.com\/pingcap2015","https:\/\/x.com\/PingCAP","https:\/\/linkedin.com\/company\/pingcap","https:\/\/youtube.com\/channel\/UCuq4puT32DzHKT5rU1IZpIA"]},{"@type":"Person","@id":"https:\/\/www.pingcap.com\/#\/schema\/person\/52ab3127dde105e30cea1f9afd5a78f2","name":"Yuhang Shi","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.pingcap.com\/#\/schema\/person\/image\/","url":"https:\/\/static.pingcap.com\/files\/2023\/11\/07015258\/shiyuhang-150x150.jpeg","contentUrl":"https:\/\/static.pingcap.com\/files\/2023\/11\/07015258\/shiyuhang-150x150.jpeg","caption":"Yuhang Shi"},"url":"https:\/\/www.pingcap.com\/ko\/blog\/author\/shiyuhang\/"}]}},"grav_blocks":false,"card_markup":"<a class=\"card-resource bg-white\" href=\"https:\/\/www.pingcap.com\/ko\/blog\/integrating-tidb-cloud-serverless-driver-prisma-orm\/\"><div class=\"card-resource__image-container\"><img class=\"card-resource__image\" alt=\"prisma orm banner\" src=\"https:\/\/static.pingcap.com\/files\/2023\/11\/30000835\/prisma-orm-banner.png\" loading=\"lazy\" width=880 height=290 \/><\/div><div class=\"card-resource__content-container\"><div class=\"card-resource__content-head\"><div class=\"card-resource__category\">Product<\/div><\/div><h5 class=\"card-resource__title\">Integrating TiDB Cloud Serverless Driver with Prisma ORM<\/h5><\/div><\/a>","_links":{"self":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/posts\/14746","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/users\/250"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/comments?post=14746"}],"version-history":[{"count":7,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/posts\/14746\/revisions"}],"predecessor-version":[{"id":15856,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/posts\/14746\/revisions\/15856"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/media\/14823"}],"wp:attachment":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/media?parent=14746"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/categories?post=14746"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/tags?post=14746"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}