{"id":12481,"date":"2023-10-11T00:10:56","date_gmt":"2023-10-10T22:10:56","guid":{"rendered":"https:\/\/www.salvis.com\/blog\/?p=12481"},"modified":"2023-11-08T19:13:19","modified_gmt":"2023-11-08T18:13:19","slug":"sharing-sql-developer-connections-joelkallmanday","status":"publish","type":"post","link":"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/","title":{"rendered":"Sharing SQL Developer Connections #JoelKallmanDay"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">1. The Problem<\/h2>\n\n\n\n<p>I created a Docker image and a container for the <a href=\"https:\/\/www.oracle.com\/database\/technologies\/oracle19c-linux-arm64-downloads.html\">Oracle Database 19c (19.19) for Linux ARM<\/a>. The container contains ORDS, APEX and various sample schemas. Finally, an Oracle database that runs pretty fast on my Apple Silicon machine. Then I built a cold database clone by creating a container on another machine using a copy of the original Docker volume. So far, so good.<\/p>\n\n\n\n<p>In SQL Developer I created a folder named <code>odb190-localhost<\/code> with 29 connections. Now I&#8217;d like to copy these SQL Developer connections to another machine. Easy, right? Export all connections to a JSON file and import it in the other SQL Developer instance. Yes, this works. But if you have several hundred connections like me, you get more than you want. The target installation might contain connection names with different properties. Therefore you do not want to import and overwrite existing connections and to identify and delete unwanted newly created connections after the import.<\/p>\n\n\n\n<p>So, what can we do?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2. Some Possible Solutions<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">2.1. Export Only Wanted Connections<\/h3>\n\n\n\n<p>Exporting some chosen connections works technically. However, the export wizard does not support the concept of folders and presents a flat list of all connections. Selecting all connections in a folder is not feasible without sorting or filtering options in the UI.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-export-connections.png\"><img loading=\"lazy\" decoding=\"async\" width=\"800\" height=\"600\" src=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-export-connections.png\" alt=\"SQL Developer export wizard\" class=\"wp-image-12483\" srcset=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-export-connections.png 800w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-export-connections-300x225.png 300w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-export-connections-768x576.png 768w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-export-connections-100x75.png 100w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-export-connections-480x360.png 480w\" sizes=\"auto, (max-width:767px) 480px, (max-width:800px) 100vw, 800px\" \/><\/a><\/figure>\n\n\n\n<p>Finding all entries ending on <code>odb190-localhost<\/code> is no fun. It might work for a handful of connections, but not for 29.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.2. Export Only One Template Connection<\/h3>\n\n\n\n<p>As an alternative, you can export just one connection and import it into the target SQL Developer installation. Use this connection as a kind of template. Click on the connection and select <code>Properties<\/code> in the context menu.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-new-select-database-connection.png\"><img loading=\"lazy\" decoding=\"async\" width=\"780\" height=\"500\" src=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-new-select-database-connection.png\" alt=\"New \/ Select Database Connection in SQL Developer\" class=\"wp-image-12484\" srcset=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-new-select-database-connection.png 780w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-new-select-database-connection-300x192.png 300w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-new-select-database-connection-768x492.png 768w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-new-select-database-connection-117x75.png 117w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-new-select-database-connection-480x308.png 480w\" sizes=\"auto, (max-width:767px) 480px, (max-width:780px) 100vw, 780px\" \/><\/a><\/figure>\n\n\n\n<p>In this window, you can change the <code>Name<\/code>, <code>Username<\/code> and <code>Password<\/code> and press <code>Save<\/code>. Repeat that process for all other connections. Either now or later when you need them.<\/p>\n\n\n\n<p>Not really a satisfying solution either, right?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.3. Export All Connections and Filter with VS Code<\/h3>\n\n\n\n<p>Exporting all connections is easy. Let&#8217;s look at the file in Visual Studio Code.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/all-connections-vscode-original.png\"><img loading=\"lazy\" decoding=\"async\" width=\"953\" height=\"710\" src=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/all-connections-vscode-original.png\" alt=\"all-connections.json in VS Code (original)\" class=\"wp-image-12501\" srcset=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/all-connections-vscode-original.png 953w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/all-connections-vscode-original-300x225.png 300w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/all-connections-vscode-original-768x572.png 768w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/all-connections-vscode-original-101x75.png 101w, https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/all-connections-vscode-original-480x358.png 480w\" sizes=\"auto, (max-width:767px) 480px, (max-width:953px) 100vw, 953px\" \/><\/a><\/figure>\n\n\n\n<p>This is a minified JSON. Let&#8217;s select <code>Format Document<\/code> from the context menu to make it human-readable.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/all-connections-vscode-formatted.png\"><img wpfc-lazyload-disable=\"true\" decoding=\"async\" src=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/all-connections-vscode-formatted.png\" alt=\"all-connections.json in VS Code (formatted)\" class=\"wp-image-12487\"\/><\/a><\/figure>\n\n\n\n<p>Ahh, much better.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Removing Unwanted <code>info<\/code>&nbsp;Objects<\/h4>\n\n\n\n<p>On line 11 we see the property <code>NAV_FOLDER<\/code>. We are only interested in connections with the value <code>odb190-localhost<\/code>. Is there a way to delete all unwanted entries? Yes, there is. By using <a href=\"https:\/\/jqlang.github.io\/jq\/\">jq<\/a>, a command line utility to process JSON files. There is also an extension for VS Code named <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=petli-full.jq-vscode\">jq-vscode<\/a>, which simplifies the development of a jq command.<\/p>\n\n\n\n<p>Here&#8217;s the jq command to remove all unwanted <code>info<\/code> objects from the <code>connections<\/code> array:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#2b2b2b;color:#c7c7c7\">jq command to remove unwanted connections<\/span><span role=\"button\" tabindex=\"0\" data-code=\"del(\n    .connections[] \n    | select(.info.NAV_FOLDER!=&quot;odb190-localhost&quot;)\n)\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #DCDCAA\">del<\/span><span style=\"color: #D4D4D4\">(<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    .<\/span><span style=\"color: #9CDCFE\">connections<\/span><span style=\"color: #D4D4D4\">[] <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    | <\/span><span style=\"color: #DCDCAA\">select<\/span><span style=\"color: #D4D4D4\">(.<\/span><span style=\"color: #9CDCFE\">info<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #4FC1FF\">NAV_FOLDER<\/span><span style=\"color: #D4D4D4\">!=<\/span><span style=\"color: #CE9178\">&quot;odb190-localhost&quot;<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">)<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>In VS Code you can open a split window via the command <code>JQ: Open a new file to exec jq<\/code>. There you can enter the jq command.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/all-connections-vscode-jq-result.png\"><img wpfc-lazyload-disable=\"true\" decoding=\"async\" src=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/all-connections-vscode-jq-result.png\" alt=\"all-connections.json filtered with jq-vscode\" class=\"wp-image-12489\"\/><\/a><\/figure>\n\n\n\n<p>In the lower part of the screen, you can see the result of the jq command. Copy the output and save it to a file to be imported into any SQL Developer installation.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.4. Export All Connections and Filter with JQ CLI<\/h3>\n\n\n\n<p>This is basically the same solution as before. The only difference is that we use the <a href=\"https:\/\/jqlang.github.io\/jq\/\">jq<\/a> command-line tool. jq is available on all major platforms (Linux, Windows, macOS). Download it from <a href=\"https:\/\/jqlang.github.io\/jq\/download\/\">here<\/a> or install it directly with your OS package installer (e.g. apt, yum, dnf, brew, &#8230;).<\/p>\n\n\n\n<p>I exported all connections to a file named <code>all-connections.json<\/code> from SQL Developer.<\/p>\n\n\n\n<p>With the following command, I produce the file <code>odb190-localhost-connections.json<\/code> that contains only the connections in the folder <code>odb190-localhost<\/code>:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(1 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#2b2b2b;color:#c7c7c7\">jq CLI command to remove unwanted connections<\/span><span role=\"button\" tabindex=\"0\" data-code=\"jq 'del(.connections[] | select(.info.NAV_FOLDER!=&quot;odb190-localhost&quot;))' \\\n    all-connections.json &gt; odb190-localhost-connections.json\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #9CDCFE\">jq<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #CE9178\">&#39;del(.connections[] | select(.info.NAV_FOLDER!=&quot;odb190-localhost&quot;))&#39;<\/span><span style=\"color: #D4D4D4\"> \\<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    <\/span><span style=\"color: #9CDCFE\">all<\/span><span style=\"color: #D4D4D4\">-<\/span><span style=\"color: #9CDCFE\">connections<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">json<\/span><span style=\"color: #D4D4D4\"> &gt; <\/span><span style=\"color: #9CDCFE\">odb190<\/span><span style=\"color: #D4D4D4\">-<\/span><span style=\"color: #9CDCFE\">localhost<\/span><span style=\"color: #D4D4D4\">-<\/span><span style=\"color: #9CDCFE\">connections<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #9CDCFE\">json<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>The file <code>odb190-localhost-connections.json<\/code> is ready to be shared and imported into other SQL Developer installations.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Conclusion<\/h2>\n\n\n\n<p>There are other solutions, not covered in this blog post, to create a filtered connection export from SQL Developer. For example, writing a dedicated SQL Developer extension. Or filtering an export file with another tool. Or processing a JSON export file in the database.<\/p>\n\n\n\n<p>However, IMO jq is an excellent tool to process JSON data in shell scripts. Perfect for automation. In this case, it makes sharing a subset of your SQL Developer connections easier. For any filter criteria, you want to apply.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>1. The Problem I created a Docker image and a container for the Oracle Database 19c (19.19) for Linux ARM. The container contains ORDS, APEX and various sample schemas. Finally, an Oracle database that runs pretty fast on my Apple Silicon machine. Then I built a cold database clone by creating a<span class=\"excerpt-hellip\"> [\u2026]<\/span><\/p>\n","protected":false},"author":1,"featured_media":12506,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[87,138],"class_list":["post-12481","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-oracle","tag-sql-developer","tag-vscode"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Sharing SQL Developer Connections #JoelKallmanDay - Philipp Salvisberg&#039;s Blog<\/title>\n<meta name=\"description\" content=\"Sharing all SQL Developer connections is easy. But how can you share connections in a folder? By filtering the connection entries with jq.\" \/>\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.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sharing SQL Developer Connections #JoelKallmanDay - Philipp Salvisberg&#039;s Blog\" \/>\n<meta property=\"og:description\" content=\"Sharing all SQL Developer connections is easy. But how can you share connections in a folder? By filtering the connection entries with jq.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/\" \/>\n<meta property=\"og:site_name\" content=\"Philipp Salvisberg&#039;s Blog\" \/>\n<meta property=\"article:published_time\" content=\"2023-10-10T22:10:56+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-11-08T18:13:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-jq.png\" \/>\n\t<meta property=\"og:image:width\" content=\"682\" \/>\n\t<meta property=\"og:image:height\" content=\"512\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Philipp Salvisberg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@phsalvisberg\" \/>\n<meta name=\"twitter:site\" content=\"@phsalvisberg\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Philipp Salvisberg\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2023\\\/10\\\/11\\\/sharing-sql-developer-connections-joelkallmanday\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2023\\\/10\\\/11\\\/sharing-sql-developer-connections-joelkallmanday\\\/\"},\"author\":{\"name\":\"Philipp Salvisberg\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/#\\\/schema\\\/person\\\/34352245c48678b1a5a05d4bc1339515\"},\"headline\":\"Sharing SQL Developer Connections #JoelKallmanDay\",\"datePublished\":\"2023-10-10T22:10:56+00:00\",\"dateModified\":\"2023-11-08T18:13:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2023\\\/10\\\/11\\\/sharing-sql-developer-connections-joelkallmanday\\\/\"},\"wordCount\":670,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/#\\\/schema\\\/person\\\/34352245c48678b1a5a05d4bc1339515\"},\"image\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2023\\\/10\\\/11\\\/sharing-sql-developer-connections-joelkallmanday\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/sqldev-jq.png\",\"keywords\":[\"SQL Developer\",\"VSCode\"],\"articleSection\":[\"Oracle\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2023\\\/10\\\/11\\\/sharing-sql-developer-connections-joelkallmanday\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2023\\\/10\\\/11\\\/sharing-sql-developer-connections-joelkallmanday\\\/\",\"url\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2023\\\/10\\\/11\\\/sharing-sql-developer-connections-joelkallmanday\\\/\",\"name\":\"Sharing SQL Developer Connections #JoelKallmanDay - Philipp Salvisberg&#039;s Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2023\\\/10\\\/11\\\/sharing-sql-developer-connections-joelkallmanday\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2023\\\/10\\\/11\\\/sharing-sql-developer-connections-joelkallmanday\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/sqldev-jq.png\",\"datePublished\":\"2023-10-10T22:10:56+00:00\",\"dateModified\":\"2023-11-08T18:13:19+00:00\",\"description\":\"Sharing all SQL Developer connections is easy. But how can you share connections in a folder? By filtering the connection entries with jq.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2023\\\/10\\\/11\\\/sharing-sql-developer-connections-joelkallmanday\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2023\\\/10\\\/11\\\/sharing-sql-developer-connections-joelkallmanday\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2023\\\/10\\\/11\\\/sharing-sql-developer-connections-joelkallmanday\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/sqldev-jq.png\",\"contentUrl\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/sqldev-jq.png\",\"width\":682,\"height\":512,\"caption\":\"SQL Developer & jq\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/2023\\\/10\\\/11\\\/sharing-sql-developer-connections-joelkallmanday\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sharing SQL Developer Connections #JoelKallmanDay\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/\",\"name\":\"Philipp Salvisberg&#039;s Blog\",\"description\":\"Database-centric development\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/#\\\/schema\\\/person\\\/34352245c48678b1a5a05d4bc1339515\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/#\\\/schema\\\/person\\\/34352245c48678b1a5a05d4bc1339515\",\"name\":\"Philipp Salvisberg\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2010\\\/11\\\/phs_trivadis4.jpg\",\"url\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2010\\\/11\\\/phs_trivadis4.jpg\",\"contentUrl\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2010\\\/11\\\/phs_trivadis4.jpg\",\"width\":400,\"height\":400,\"caption\":\"Philipp Salvisberg\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.salvis.com\\\/blog\\\/wp-content\\\/uploads\\\/2010\\\/11\\\/phs_trivadis4.jpg\"},\"sameAs\":[\"http:\\\/\\\/www.salvis.com\\\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Sharing SQL Developer Connections #JoelKallmanDay - Philipp Salvisberg&#039;s Blog","description":"Sharing all SQL Developer connections is easy. But how can you share connections in a folder? By filtering the connection entries with jq.","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.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/","og_locale":"en_US","og_type":"article","og_title":"Sharing SQL Developer Connections #JoelKallmanDay - Philipp Salvisberg&#039;s Blog","og_description":"Sharing all SQL Developer connections is easy. But how can you share connections in a folder? By filtering the connection entries with jq.","og_url":"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/","og_site_name":"Philipp Salvisberg&#039;s Blog","article_published_time":"2023-10-10T22:10:56+00:00","article_modified_time":"2023-11-08T18:13:19+00:00","og_image":[{"width":682,"height":512,"url":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-jq.png","type":"image\/png"}],"author":"Philipp Salvisberg","twitter_card":"summary_large_image","twitter_creator":"@phsalvisberg","twitter_site":"@phsalvisberg","twitter_misc":{"Written by":"Philipp Salvisberg","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/#article","isPartOf":{"@id":"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/"},"author":{"name":"Philipp Salvisberg","@id":"https:\/\/www.salvis.com\/blog\/#\/schema\/person\/34352245c48678b1a5a05d4bc1339515"},"headline":"Sharing SQL Developer Connections #JoelKallmanDay","datePublished":"2023-10-10T22:10:56+00:00","dateModified":"2023-11-08T18:13:19+00:00","mainEntityOfPage":{"@id":"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/"},"wordCount":670,"commentCount":0,"publisher":{"@id":"https:\/\/www.salvis.com\/blog\/#\/schema\/person\/34352245c48678b1a5a05d4bc1339515"},"image":{"@id":"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/#primaryimage"},"thumbnailUrl":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-jq.png","keywords":["SQL Developer","VSCode"],"articleSection":["Oracle"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/","url":"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/","name":"Sharing SQL Developer Connections #JoelKallmanDay - Philipp Salvisberg&#039;s Blog","isPartOf":{"@id":"https:\/\/www.salvis.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/#primaryimage"},"image":{"@id":"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/#primaryimage"},"thumbnailUrl":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-jq.png","datePublished":"2023-10-10T22:10:56+00:00","dateModified":"2023-11-08T18:13:19+00:00","description":"Sharing all SQL Developer connections is easy. But how can you share connections in a folder? By filtering the connection entries with jq.","breadcrumb":{"@id":"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/#primaryimage","url":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-jq.png","contentUrl":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2023\/10\/sqldev-jq.png","width":682,"height":512,"caption":"SQL Developer & jq"},{"@type":"BreadcrumbList","@id":"https:\/\/www.salvis.com\/blog\/2023\/10\/11\/sharing-sql-developer-connections-joelkallmanday\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.salvis.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Sharing SQL Developer Connections #JoelKallmanDay"}]},{"@type":"WebSite","@id":"https:\/\/www.salvis.com\/blog\/#website","url":"https:\/\/www.salvis.com\/blog\/","name":"Philipp Salvisberg&#039;s Blog","description":"Database-centric development","publisher":{"@id":"https:\/\/www.salvis.com\/blog\/#\/schema\/person\/34352245c48678b1a5a05d4bc1339515"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.salvis.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.salvis.com\/blog\/#\/schema\/person\/34352245c48678b1a5a05d4bc1339515","name":"Philipp Salvisberg","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2010\/11\/phs_trivadis4.jpg","url":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2010\/11\/phs_trivadis4.jpg","contentUrl":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2010\/11\/phs_trivadis4.jpg","width":400,"height":400,"caption":"Philipp Salvisberg"},"logo":{"@id":"https:\/\/www.salvis.com\/blog\/wp-content\/uploads\/2010\/11\/phs_trivadis4.jpg"},"sameAs":["http:\/\/www.salvis.com\/"]}]}},"_links":{"self":[{"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/posts\/12481","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/comments?post=12481"}],"version-history":[{"count":26,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/posts\/12481\/revisions"}],"predecessor-version":[{"id":12742,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/posts\/12481\/revisions\/12742"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/media\/12506"}],"wp:attachment":[{"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/media?parent=12481"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/categories?post=12481"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.salvis.com\/blog\/wp-json\/wp\/v2\/tags?post=12481"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}