﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>SQL Server’da XML Uzantılı Url Adresinden Cross Apply Kullanarak Veri Çekme İşlemi &#8211; SQL Server Eğitimleri</title>
	<atom:link href="https://sqlserveregitimleri.com/etiket/sql-serverda-xml-uzantili-url-adresinden-cross-apply-kullanarak-veri-cekme-islemi/feed" rel="self" type="application/rss+xml" />
	<link>https://sqlserveregitimleri.com</link>
	<description>SQL Server ile ilgili her şey</description>
	<lastBuildDate>Wed, 25 Aug 2021 10:19:29 +0000</lastBuildDate>
	<language>tr</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.1</generator>
	<item>
		<title>SQL Server’da XML Uzantılı Url Adresinden Cross Apply Kullanarak Veri Çekme İşlemi</title>
		<link>https://sqlserveregitimleri.com/sql-serverda-xml-uzantili-url-adresinden-cross-apply-kullanarak-veri-cekme-islemi</link>
		
		<dc:creator><![CDATA[Yavuz Selim Kart]]></dc:creator>
		<pubDate>Thu, 28 May 2020 14:45:27 +0000</pubDate>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Cross Apply Kullanarak Veri Çekme İşlemi]]></category>
		<category><![CDATA[SQL Server’da XML Uzantılı Url Adresinden Cross Apply Kullanarak Veri Çekme İşlemi]]></category>
		<category><![CDATA[sql xml veri çekme]]></category>
		<guid isPermaLink="false">https://sqlserveregitimleri.com/?p=9948</guid>

					<description><![CDATA[Herkese merhaba, Bu yazıda SQL Server&#8217;da XML uzantılı url adresinden Cross Apply kullanarak veri çekme işlemiyle ilgili bilgi vereceğim. Konu hakkında açık şekilde yazılmış Türkçe...]]></description>
										<content:encoded><![CDATA[<p>Herkese merhaba,</p>
<p>Bu yazıda SQL Server&#8217;da <strong>XML</strong> uzantılı url adresinden <strong>Cross Apply</strong> kullanarak veri çekme işlemiyle ilgili bilgi vereceğim.</p>
<p>Konu hakkında açık şekilde yazılmış Türkçe bir yazı ya da makale bulamadım. Ayrıca ingilizce kaynaklarda da sıkıntılar mevcuttu. Bu yüzden böyle bir makale yazmaya karar verdim. Konu alanındaki ilk Türkçe makaledir. Konunun çıkış noktası tamamen merak.</p>
<p>Elinizde XML içeren bir web url adresi olduğunu düşünelim. Böyle bir internet adresi üzerinden verileri nasıl çekebiliriz?</p>
<p>Aşağıdaki kodlamayı inceleyerek siz de kendi xml url linkiniz üzerinden sorgu işlemlerinizi gerçekleştirebilirsiniz.</p>
<p>İlk olarak aşağıdaki ayarları yapmalısınız.</p>
<pre class="lang:default decode:true">sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ole Automation Procedures', 1;
GO
RECONFIGURE;
GO
</pre>
<p>Yukarıdaki ayarları SQL Serverınız üzerinde yaptıktan sonra aşağıdaki kodları çalıştırabilirsiniz.</p>
<pre class="lang:default decode:true">--Temp tablo oluşturulması ve bu temp tabloya xml adresi olan url'den veri aktarma işlemi

IF OBJECT_ID('tempdb..#XMLTablosu') IS NOT NULL
    DROP TABLE #XMLTablosu;

CREATE TABLE #XMLTablosu
(
    XMLKolonu XML
);
GO

DECLARE @URL VARCHAR(8000);
SELECT @URL = 'https://www.w3schools.com/xml/note.xml'; --xml url adresi

DECLARE @Response VARCHAR(8000);
DECLARE @XML XML;
DECLARE @Obj INT;
DECLARE @Result INT;
DECLARE @HTTPStatus INT;
DECLARE @ErrorMsg VARCHAR(MAX);

EXEC @Result = sp_OACreate 'MSXML2.XMLHttp', @Obj OUT;

EXEC @Result = sp_OAMethod @Obj, 'open', NULL, 'GET', @URL, false;
EXEC @Result = sp_OAMethod @Obj,
                           'setRequestHeader',
                           NULL,
                           'Content-Type',
                           'application/x-www-form-urlencoded';
EXEC @Result = sp_OAMethod @Obj, send, NULL, '';
EXEC @Result = sp_OAGetProperty @Obj, 'status', @HTTPStatus OUT;

INSERT #XMLTablosu
(
    XMLKolonu
)
EXEC @Result = sp_OAGetProperty @Obj, 'responseXML.xml'; --, @Response OUT 

--Tablonun kontrol edilmesi

SELECT *
FROM #XMLTablosu x;

--Cross Apply ile Tablonun Ayrıştırılması

SELECT
      pref.value('(to/text())[1]', 'varchar(50)') AS Kime,
      pref.value('(from/text())[1]', 'varchar(50)') AS Kimden,
	  pref.value('(heading/text())[1]', 'varchar(50)') AS Kimden,
	  pref.value('(body/text())[1]', 'varchar(50)') AS Kimden
FROM  
      #XMLTablosu CROSS APPLY
      XMLKolonu.nodes('/note') AS Mektup(pref)

</pre>
<p>Kodları çalıştırdığınızda aşağıdaki gibi bir sonuç göreceksiniz.</p>
<p><img fetchpriority="high" decoding="async" class="alignnone wp-image-9950 size-full" src="https://sqlserveregitimleri.com/wp-content/uploads/2020/05/sql-serverda-xml-uzantili-url-adresinden-cross-apply-kullanarak-veri-cekme-islemi-1.jpg" alt="SQL Server’da XML Uzantılı Url Adresinden Cross Apply Kullanarak Veri Çekme İşlemi" width="700" height="387" srcset="https://sqlserveregitimleri.com/wp-content/uploads/2020/05/sql-serverda-xml-uzantili-url-adresinden-cross-apply-kullanarak-veri-cekme-islemi-1.jpg 700w, https://sqlserveregitimleri.com/wp-content/uploads/2020/05/sql-serverda-xml-uzantili-url-adresinden-cross-apply-kullanarak-veri-cekme-islemi-1-315x174.jpg 315w, https://sqlserveregitimleri.com/wp-content/uploads/2020/05/sql-serverda-xml-uzantili-url-adresinden-cross-apply-kullanarak-veri-cekme-islemi-1-543x300.jpg 543w, https://sqlserveregitimleri.com/wp-content/uploads/2020/05/sql-serverda-xml-uzantili-url-adresinden-cross-apply-kullanarak-veri-cekme-islemi-1-244x135.jpg 244w" sizes="(max-width: 700px) 100vw, 700px" /></p>
<p>Görüldüğü üzere XML uzantılı url adresinden veri çekme işlemi Cross Apply kullanarak yapılmış oldu.</p>
<p>Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.</p>
<div class='epvc-post-count'><span class='epvc-eye'></span>  <span class="epvc-count"> 490</span><span class='epvc-label'> Kez Okundu</span></div>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
