{"id":527,"date":"2017-04-22T07:51:00","date_gmt":"2017-04-22T07:51:00","guid":{"rendered":"https:\/\/www.joseluisestevez.com\/?p=527"},"modified":"2017-07-15T06:42:01","modified_gmt":"2017-07-15T06:42:01","slug":"ejecutar-archivos-sql-desde-clp-db2","status":"publish","type":"post","link":"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/","title":{"rendered":"Ejecutar archivos SQL desde CLP de DB2"},"content":{"rendered":"<p>Tenemos la necesidad de subir controles de cambios en nuestra base de datos IBM DB2 tenemos un conjunto de sentencias SQL tales como DML o DDL que desean ejecutar como un archivo utilizando el CLP de DB2.<\/p>\n<p>Si alguna de las sentencias contenidas en el archivo falla, es necesario revertir cada instrucci\u00f3n ejecutada con \u00e9xito y dejar la base de datos en su estado original. \u00bfC\u00f3mo haces esto?<\/p>\n<p>La respuesta corta es evitar cualquier cambio de estado en la conexi\u00f3n al momento de ejecutar el archivo usando la opci\u00f3n -f del CLP.<\/p>\n<p><!--more--><\/p>\n<p>Tenemos que tener en cuanta que cualquier sentencia explicita dentro del archivo que pueda comprometer los\u00a0cambios,\u00a0cerrar la conexi\u00f3n confirmar todos los cambios hasta ese momento, independientemente de lo que haya designado para la sesi\u00f3n.<\/p>\n<p>Si permanece conectado al final del procesamiento de un archivo usando las opciones +c -s -t \u00a0-f, puede revertir de forma expl\u00edcita las transacciones que sucedieron antes del momento del fallo.<\/p>\n<p>Algunas de las sentencias que no podemos soportar dentro de nuestro archivo son QUIT, CONNECT RESET , COMMIT, TERMINATE.<\/p>\n<p>Para el siguiente ejercicio vamos a crear una tabla:<\/p>\n<pre class=\"lang:tsql decode:true \">CREATE TABLE \"JESTEVEZ01\".\"TABLE_TEST\" (\r\n\"ID\" INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY ( START WITH 1 INCREMENT BY 1 MINVALUE 1 MAXVALUE 2147483647 NO CYCLE CACHE 20 NO ORDER ), \r\n\"NAME\" VARCHAR(255 OCTETS)\r\n);<\/pre>\n<p>Vamos a crear un archivo CAMBIOS_DML_DDL.sql, con las siguientes\u00a0sentencias DDL y DML a ejecutar:<\/p>\n<pre class=\"lang:tsql decode:true\" title=\"CAMBIOS_DML_DDL.sql\">UPDATE COMMAND OPTIONS USING c OFF;\r\n\r\nINSERT INTO  JESTEVEZ01.TABLE_TEST (NAME) VALUES ('HOLA MUNDO 1');\r\nINSERT INTO  JESTEVEZ01.TABLE_TEST (NAME) VALUES ('HOLA MUNDO 2');\r\nALTER TABLE \"JESTEVEZ01\".\"TABLE_TEST\" ADD COLUMN \"FULL_NAME_1\" VARCHAR(32000 OCTETS);\r\nALTER TABLE \"JESTEVEZ01\".\"TABLE_TEST\" ADD COLUMN \"FULL_NAME_2\" VARCHAR(32000 OCTETS);\r\nINSERT INTO  JESTEVEZ01.TABLE_TEST (NAME, FULL_NAME_1, FULL_NAME_2) VALUES ('NOMBRE 1', 'FULL NAME 2', 'FULL NAME 3');\r\n<\/pre>\n<p>Ahora vamos a desarrollar un peque\u00f1o script de linux para ejecutar el fichero.<\/p>\n<pre class=\"lang:sh decode:true\">#! \/bin\/bash\r\nfunction terminate {\r\n        echo \"Cerrando la conexion a DB2\";\r\n        db2 terminate\r\n}\r\ntrap terminate EXIT\r\n\r\ndb2 connect to SAMPLE\r\n\r\ndb2 -l salida.log +c -stf CAMBIOS_DML_DDL.sql\r\n\r\n\r\nif [ $? -ge 4 ]; then\r\n\techo \"Hay errores reversar cambios\"\r\n\tdb2 rollback\r\nelse  \r\n\techo \"Comprometer cambios en la base de datos\"\r\n\tdb2 commit\r\nfi\r\n<\/pre>\n<p>Como vemos en el script el CLP de db2 nos retorna un \u00abexit status\u00bb con los resultados de la transacci\u00f3n. Estos son algunos de los valores de \u00abdb2 exit status\u00bb:<\/p>\n<ul>\n<li>8 on system error<\/li>\n<li>4 db2 error (constraint violation, object not found etc)<\/li>\n<li>2 db2 warning<\/li>\n<li>1 no rows found<\/li>\n<\/ul>\n<p>Como podemos ver con las opciones de CLP de db2, controlando el db2 exit status y asegurando que nuestro fichero DDL o DML no tenga sentencias que puedan comprometer la transaccional podemos realizar\u00a0cambios de forma autom\u00e1tica y reversar en caso de algun fallo.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Tenemos la necesidad de subir controles de cambios en nuestra base de datos IBM DB2 tenemos un conjunto de sentencias SQL tales como DML o DDL que desean ejecutar como un archivo utilizando el CLP de DB2. Si alguna de las sentencias contenidas en el archivo falla, es necesario revertir cada instrucci\u00f3n ejecutada con \u00e9xito [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":528,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[67,6],"tags":[13,12],"class_list":["post-527","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-db2","category-linux","tag-db2","tag-linux"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Ejecutar archivos SQL desde CLP de DB2 - El Blog de Jose Luis Estevez<\/title>\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.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ejecutar archivos SQL desde CLP de DB2 - El Blog de Jose Luis Estevez\" \/>\n<meta property=\"og:description\" content=\"Tenemos la necesidad de subir controles de cambios en nuestra base de datos IBM DB2 tenemos un conjunto de sentencias SQL tales como DML o DDL que desean ejecutar como un archivo utilizando el CLP de DB2. Si alguna de las sentencias contenidas en el archivo falla, es necesario revertir cada instrucci\u00f3n ejecutada con \u00e9xito [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/\" \/>\n<meta property=\"og:site_name\" content=\"El Blog de Jose Luis Estevez\" \/>\n<meta property=\"article:published_time\" content=\"2017-04-22T07:51:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2017-07-15T06:42:01+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.joseluisestevez.com\/wp-content\/uploads\/2017\/04\/IBM.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"480\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"yeyo\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"yeyo\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/index.php\\\/2017\\\/04\\\/22\\\/ejecutar-archivos-sql-desde-clp-db2\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/index.php\\\/2017\\\/04\\\/22\\\/ejecutar-archivos-sql-desde-clp-db2\\\/\"},\"author\":{\"name\":\"yeyo\",\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/#\\\/schema\\\/person\\\/6a17b38fcac664fdb33a5fba8056d0ee\"},\"headline\":\"Ejecutar archivos SQL desde CLP de DB2\",\"datePublished\":\"2017-04-22T07:51:00+00:00\",\"dateModified\":\"2017-07-15T06:42:01+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/index.php\\\/2017\\\/04\\\/22\\\/ejecutar-archivos-sql-desde-clp-db2\\\/\"},\"wordCount\":325,\"image\":{\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/index.php\\\/2017\\\/04\\\/22\\\/ejecutar-archivos-sql-desde-clp-db2\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.joseluisestevez.com\\\/wp-content\\\/uploads\\\/2017\\\/04\\\/IBM.png\",\"keywords\":[\"DB2\",\"Linux\"],\"articleSection\":[\"DB2\",\"Linux\"],\"inLanguage\":\"es\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/index.php\\\/2017\\\/04\\\/22\\\/ejecutar-archivos-sql-desde-clp-db2\\\/\",\"url\":\"https:\\\/\\\/www.joseluisestevez.com\\\/index.php\\\/2017\\\/04\\\/22\\\/ejecutar-archivos-sql-desde-clp-db2\\\/\",\"name\":\"Ejecutar archivos SQL desde CLP de DB2 - El Blog de Jose Luis Estevez\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/index.php\\\/2017\\\/04\\\/22\\\/ejecutar-archivos-sql-desde-clp-db2\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/index.php\\\/2017\\\/04\\\/22\\\/ejecutar-archivos-sql-desde-clp-db2\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.joseluisestevez.com\\\/wp-content\\\/uploads\\\/2017\\\/04\\\/IBM.png\",\"datePublished\":\"2017-04-22T07:51:00+00:00\",\"dateModified\":\"2017-07-15T06:42:01+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/#\\\/schema\\\/person\\\/6a17b38fcac664fdb33a5fba8056d0ee\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/index.php\\\/2017\\\/04\\\/22\\\/ejecutar-archivos-sql-desde-clp-db2\\\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.joseluisestevez.com\\\/index.php\\\/2017\\\/04\\\/22\\\/ejecutar-archivos-sql-desde-clp-db2\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/index.php\\\/2017\\\/04\\\/22\\\/ejecutar-archivos-sql-desde-clp-db2\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.joseluisestevez.com\\\/wp-content\\\/uploads\\\/2017\\\/04\\\/IBM.png\",\"contentUrl\":\"https:\\\/\\\/www.joseluisestevez.com\\\/wp-content\\\/uploads\\\/2017\\\/04\\\/IBM.png\",\"width\":1200,\"height\":480},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/index.php\\\/2017\\\/04\\\/22\\\/ejecutar-archivos-sql-desde-clp-db2\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Portada\",\"item\":\"https:\\\/\\\/www.joseluisestevez.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ejecutar archivos SQL desde CLP de DB2\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/#website\",\"url\":\"https:\\\/\\\/www.joseluisestevez.com\\\/\",\"name\":\"El Blog de Jose Luis Estevez\",\"description\":\"Desarrollador Senior\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.joseluisestevez.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.joseluisestevez.com\\\/#\\\/schema\\\/person\\\/6a17b38fcac664fdb33a5fba8056d0ee\",\"name\":\"yeyo\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3565e9dac43d5a8d2b807866a3af3ab66eeacb68b2d28fc63b962ad40c6ef4c7?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3565e9dac43d5a8d2b807866a3af3ab66eeacb68b2d28fc63b962ad40c6ef4c7?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3565e9dac43d5a8d2b807866a3af3ab66eeacb68b2d28fc63b962ad40c6ef4c7?s=96&d=mm&r=g\",\"caption\":\"yeyo\"},\"description\":\"Arquitecto de Software emprendedor con ardua experiencia en el camino de la tecnolog\u00eda.\",\"sameAs\":[\"http:\\\/\\\/www.joseluisestevez.com\"],\"url\":\"https:\\\/\\\/www.joseluisestevez.com\\\/index.php\\\/author\\\/yeyo\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Ejecutar archivos SQL desde CLP de DB2 - El Blog de Jose Luis Estevez","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.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/","og_locale":"es_ES","og_type":"article","og_title":"Ejecutar archivos SQL desde CLP de DB2 - El Blog de Jose Luis Estevez","og_description":"Tenemos la necesidad de subir controles de cambios en nuestra base de datos IBM DB2 tenemos un conjunto de sentencias SQL tales como DML o DDL que desean ejecutar como un archivo utilizando el CLP de DB2. Si alguna de las sentencias contenidas en el archivo falla, es necesario revertir cada instrucci\u00f3n ejecutada con \u00e9xito [&hellip;]","og_url":"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/","og_site_name":"El Blog de Jose Luis Estevez","article_published_time":"2017-04-22T07:51:00+00:00","article_modified_time":"2017-07-15T06:42:01+00:00","og_image":[{"width":1200,"height":480,"url":"https:\/\/www.joseluisestevez.com\/wp-content\/uploads\/2017\/04\/IBM.png","type":"image\/png"}],"author":"yeyo","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"yeyo","Tiempo de lectura":"2 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/#article","isPartOf":{"@id":"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/"},"author":{"name":"yeyo","@id":"https:\/\/www.joseluisestevez.com\/#\/schema\/person\/6a17b38fcac664fdb33a5fba8056d0ee"},"headline":"Ejecutar archivos SQL desde CLP de DB2","datePublished":"2017-04-22T07:51:00+00:00","dateModified":"2017-07-15T06:42:01+00:00","mainEntityOfPage":{"@id":"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/"},"wordCount":325,"image":{"@id":"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/#primaryimage"},"thumbnailUrl":"https:\/\/www.joseluisestevez.com\/wp-content\/uploads\/2017\/04\/IBM.png","keywords":["DB2","Linux"],"articleSection":["DB2","Linux"],"inLanguage":"es"},{"@type":"WebPage","@id":"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/","url":"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/","name":"Ejecutar archivos SQL desde CLP de DB2 - El Blog de Jose Luis Estevez","isPartOf":{"@id":"https:\/\/www.joseluisestevez.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/#primaryimage"},"image":{"@id":"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/#primaryimage"},"thumbnailUrl":"https:\/\/www.joseluisestevez.com\/wp-content\/uploads\/2017\/04\/IBM.png","datePublished":"2017-04-22T07:51:00+00:00","dateModified":"2017-07-15T06:42:01+00:00","author":{"@id":"https:\/\/www.joseluisestevez.com\/#\/schema\/person\/6a17b38fcac664fdb33a5fba8056d0ee"},"breadcrumb":{"@id":"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/#primaryimage","url":"https:\/\/www.joseluisestevez.com\/wp-content\/uploads\/2017\/04\/IBM.png","contentUrl":"https:\/\/www.joseluisestevez.com\/wp-content\/uploads\/2017\/04\/IBM.png","width":1200,"height":480},{"@type":"BreadcrumbList","@id":"https:\/\/www.joseluisestevez.com\/index.php\/2017\/04\/22\/ejecutar-archivos-sql-desde-clp-db2\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Portada","item":"https:\/\/www.joseluisestevez.com\/"},{"@type":"ListItem","position":2,"name":"Ejecutar archivos SQL desde CLP de DB2"}]},{"@type":"WebSite","@id":"https:\/\/www.joseluisestevez.com\/#website","url":"https:\/\/www.joseluisestevez.com\/","name":"El Blog de Jose Luis Estevez","description":"Desarrollador Senior","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.joseluisestevez.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/www.joseluisestevez.com\/#\/schema\/person\/6a17b38fcac664fdb33a5fba8056d0ee","name":"yeyo","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/secure.gravatar.com\/avatar\/3565e9dac43d5a8d2b807866a3af3ab66eeacb68b2d28fc63b962ad40c6ef4c7?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/3565e9dac43d5a8d2b807866a3af3ab66eeacb68b2d28fc63b962ad40c6ef4c7?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3565e9dac43d5a8d2b807866a3af3ab66eeacb68b2d28fc63b962ad40c6ef4c7?s=96&d=mm&r=g","caption":"yeyo"},"description":"Arquitecto de Software emprendedor con ardua experiencia en el camino de la tecnolog\u00eda.","sameAs":["http:\/\/www.joseluisestevez.com"],"url":"https:\/\/www.joseluisestevez.com\/index.php\/author\/yeyo\/"}]}},"_links":{"self":[{"href":"https:\/\/www.joseluisestevez.com\/index.php\/wp-json\/wp\/v2\/posts\/527","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.joseluisestevez.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.joseluisestevez.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.joseluisestevez.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.joseluisestevez.com\/index.php\/wp-json\/wp\/v2\/comments?post=527"}],"version-history":[{"count":2,"href":"https:\/\/www.joseluisestevez.com\/index.php\/wp-json\/wp\/v2\/posts\/527\/revisions"}],"predecessor-version":[{"id":530,"href":"https:\/\/www.joseluisestevez.com\/index.php\/wp-json\/wp\/v2\/posts\/527\/revisions\/530"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.joseluisestevez.com\/index.php\/wp-json\/wp\/v2\/media\/528"}],"wp:attachment":[{"href":"https:\/\/www.joseluisestevez.com\/index.php\/wp-json\/wp\/v2\/media?parent=527"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.joseluisestevez.com\/index.php\/wp-json\/wp\/v2\/categories?post=527"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.joseluisestevez.com\/index.php\/wp-json\/wp\/v2\/tags?post=527"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}