Azure Logic Apps kullanarak SQL veritabanı için iş akışlarını otomatikleştirme
bu makalede, SQL Server bağlayıcısı ile bir mantıksal uygulamanın içinden SQL veritabanınızdaki verilere nasıl erişebileceğiniz gösterilmektedir. bu şekilde, logic apps oluşturarak SQL verilerinizi ve kaynaklarınızı yöneten görevleri, işlemleri veya iş akışlarını otomatikleştirebileceğinizi unutmayın. SQL Server bağlayıcısı, SQL Server ve Azure SQL Veritabanı ile Azure SQL yönetilen örneğiiçin de kullanılabilir.
SQL veritabanınızdaki veya Dynamics CRM Online gibi diğer sistemlerde olaylar tarafından tetiklendiğinde çalışan logic apps oluşturabilirsiniz. mantıksal uygulamalarınız, çalışan SQL sorguları ve saklı yordamlar ile birlikte verileri de alabilir, ekleyebilir ve silebilir. örneğin, Dynamics CRM Online 'da yeni kayıtları otomatik olarak denetleyen bir mantıksal uygulama oluşturabilir, her yeni kayıt için SQL veritabanınıza öğe ekler ve ardından eklenen öğeler hakkında e-posta uyarıları gönderir.
logic apps 'e yeni başladıysanız, Azure Logic Apps ve hızlı başlangıç: ilk mantıksal uygulamanızı oluşturma' yı gözden geçirin. bağlayıcıya özgü teknik bilgiler, sınırlamalar ve bilinen sorunlar için, SQL Server bağlayıcısı başvuru sayfasınabakın.
Önkoşullar
Azure aboneliği. Aboneliğiniz yoksa, ücretsiz bir Azure hesabı için kaydolun.
Mantıksal uygulamanızın işlemleri çağırırken sonuçlar döndürebilmesi için tablolarınızın verileri olmalıdır. Azure SQL Veritabanı kullanıyorsanız, dahil edilen örnek veritabanlarını kullanabilirsiniz.
SQL sunucunuzun adı, veritabanı adı, kullanıcı adınız ve parolanız. mantığınızı SQL sunucunuza erişmek için yetkilendirebilmeniz için bu kimlik bilgilerine ihtiyacınız vardır.
şirket içi SQL Server, bu ayrıntıları bağlantı dizesinde bulabilirsiniz:
Server={your-server-address};Database={your-database-name};User Id={your-user-name};Password={your-password};
Azure SQL Veritabanı için bu ayrıntıları bağlantı dizesinde bulabilirsiniz.
Örneğin, bu dizeyi Azure portal bulmak için veritabanınızı açın. Veritabanı menüsünde, bağlantı dizeleri veya Özellikler' i seçin:
Server=tcp:{your-server-name}.database.windows.net,1433;Initial Catalog={your-database-name};Persist Security Info=False;User ID={your-user-name};Password={your-password};MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;
-
Mantıksal uygulamalarınızın küresel, çok kiracılı Azure veya bir tümleştirme hizmeti ortamında (ıSE)çalışmasına bağlı olarak, şirket içi SQL Server bağlanmak için diğer gereksinimler şunlardır:
şirket içi SQL Server bağlanan küresel, çok kiracılı Azure 'da mantıksal uygulamalar için, şirket içi veri ağ geçidinin yerel bir bilgisayarda yüklü olması ve Azure 'da zaten oluşturulmuş bir veri ağ geçidi kaynağıolması gerekir.
şirket içi SQL Server bağlanan ve Windows kimlik doğrulaması kullanan bir ıse içindeki logic apps için, ıse sürümlü SQL Server bağlayıcısı Windows kimlik doğrulamasını desteklemez. bu nedenle, hala data gateway ve ıse SQL Server bağlayıcısını kullanmanız gerekir. Diğer kimlik doğrulama türleri için, veri ağ geçidini kullanmanız gerekmez ve ıSE sürümlü bağlayıcıyı kullanabilirsiniz.
-
SQL veritabanınıza erişmeniz gereken mantıksal uygulama. mantıksal uygulamanızı bir SQL tetikleyicisi ile başlatmak için boş bir mantıksal uygulamagerekir.
Veritabanınıza bağlanma
Bir hizmete veya sisteme ilk kez bağlanan bir tetikleyici veya eylem eklerken, iş akışı tasarımcısı gerekli bilgileri sağlayarak bağlantı oluşturmanızı ister. Bu bilgiler bağlantıya göre değişiklik gösterir, örneğin:
Yeni bağlantı için kullanmak istediğiniz ad
Sistem veya sunucunun adı
Kullanıcı veya hesap kimlik bilgileriniz
Kullanmak için kimlik doğrulaması türü
Şimdi şu adımlarla devam edin:
Azure SQL Veritabanı veya yönetilen örneğe Bağlan
azure SQL yönetilen bir örneğe şirket içi veri ağ geçidini veya tümleştirme hizmeti ortamını kullanmadan erişmek için azure SQL yönetilen örneği üzerinde genel uç noktasını ayarlamanızgerekir. Genel uç nokta 3342 bağlantı noktasını kullanır, bu nedenle mantıksal uygulamanızdan bağlantıyı oluştururken bu bağlantı noktası numarasını belirttiğinizden emin olun.
kimlik doğrulama türü için, Azure SQL Veritabanı veya Azure SQL yönetilen örneği 'nde veritabanınızda gereken ve etkinleştirilen kimlik doğrulamasını seçin:
Kimlik Doğrulaması Description Azure AD Tümleşik -hem ıse hem de ıse SQL Server bağlayıcısını destekler.
-Azure Active Directory (Azure AD) içinde veritabanınıza erişimi olan geçerli bir kimlik gerektirir.
Daha fazla bilgi için şu konulara bakın:
SQL Server Yetkilendirmesi -hem ıse hem de ıse SQL Server bağlayıcısını destekler.
-Veritabanınıza oluşturulup depolanan geçerli bir Kullanıcı adı ve güçlü bir parola gerektirir.
Daha fazla bilgi için şu konulara bakın:
Yönetilen Kimlik -hem ıse hem de ıse SQL Server bağlayıcısını destekler.
- veritabanınıza erişimiolan geçerli bir yönetilen kimlik gerektirir, SQL Server kaynağına SQL DB katılımcısı rol erişimi ve SQL Server kaynağını içeren kaynak grubuna katkıda bulunan erişim sağlar.
daha fazla bilgi için bkz. SQL-Server-Level roller.
Bu örnek Azure AD Tümleşik ile devam eder:
Azure AD Tümleşik seçeneğini belirledikten sonra oturum aç' ı seçin. Azure SQL Veritabanı veya Azure SQL yönetilen örneği kullanıp kullanmayacağınızı temel alarak kimlik doğrulama için kullanıcı kimlik bilgilerinizi seçin.
Veritabanınız için şu değerleri seçin:
Özellik Gerekli Açıklama Sunucu adı Yes SQL sunucunuzun adresi, örneğin,
Fabrikam-Azure-SQL.database.windows.net
Veritabanı adı Yes SQL veritabanınızın adı, örneğin
Fabrikam-Azure-SQL-DB
Tablo adı Yes Kullanmak istediğiniz tablo, örneğin,
SalesLT.Customer
İpucu
Veritabanınızın ve tablo bilgilerinizin sağlanması için şu seçeneklere sahip olursunuz:
Veritabanınızın bağlantı dizesinde bu bilgileri bulun. Örneğin, Azure portal, veritabanınızı bulun ve açın. Veritabanı menüsünde, bağlantı dizeleri veya Özellikler' i seçin, burada bu dizeyi bulabilirsiniz:
Server=tcp:{your-server-address}.database.windows.net,1433;Initial Catalog={your-database-name};Persist Security Info=False;User ID={your-user-name};Password={your-password};MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;
Varsayılan olarak, sistem veritabanlarındaki tablolar filtrelenerek bir sistem veritabanını seçtiğinizde otomatik olarak görünmeyebilir. Alternatif olarak, veritabanı listesinden özel değer gir ' i seçtikten sonra tablo adını el ile girebilirsiniz.
Bu örnekte bu değerlerin nasıl görünebileceğini gösterilmektedir:
-
şirket içi SQL Server Bağlan
şirket içi veri ağ geçidini gerektiren şirket içi SQL sunucusuna bağlantılar için, bu önkoşulları tamamladığınızdanemin olun.
Aksi halde, bağlantınızı oluştururken veri ağ geçidi kaynağınız bağlantı ağ geçidi listesinde görünmez.
Kimlik doğrulama türü için, gerekli olan ve SQL Server etkin olan kimlik doğrulamasını seçin:
Kimlik Doğrulaması Description Windows Kimlik Doğrulaması -çok kiracılı azure veya bir ıse kullanıp kullanmadığına bakılmaksızın, bağlantınız için daha önce Azure 'da oluşturulmuş bir veri ağ geçidi kaynağı gerektiren yalnızca ıse SQL Server bağlayıcısını destekler.
-Windows hesabınız aracılığıyla kimliğinizi onaylamak için geçerli bir Windows kullanıcı adı ve parola gerektirir.
daha fazla bilgi için bkz. Windows kimlik doğrulaması
SQL Server Yetkilendirmesi -hem ıse hem de ıse SQL Server bağlayıcısını destekler.
-SQL Server oluşturulup depolanan geçerli bir Kullanıcı adı ve güçlü bir parola gerektirir.
daha fazla bilgi için SQL Server kimlik doğrulamasıkonusuna bakın.
bu örnek Windows kimlik doğrulamasıyla devam eder:
SQL veritabanınız için aşağıdaki değerleri seçin veya sağlayın:
Özellik Gerekli Açıklama SQL sunucusu adı Yes SQL sunucunuzun adresi, örneğin,
Fabrikam-Azure-SQL.database.windows.net
SQL veritabanı adı Yes SQL Server veritabanınızın adı, örneğin
Fabrikam-Azure-SQL-DB
Kullanıcı adı Yes SQL sunucusu ve veritabanı için kullanıcı adınız Parola Yes SQL sunucusu ve veritabanı için parolanız Abonelik evet, Windows kimlik doğrulaması için Daha önce Azure 'da oluşturduğunuz veri ağ geçidi kaynağı için Azure aboneliği Bağlantı ağ geçidi evet, Windows kimlik doğrulaması için Daha önce Azure 'da oluşturduğunuz veri ağ geçidi kaynağının adı
İpucu: ağ geçidiniz listede görünmüyorsa, ağ geçidinizindoğru şekilde ayarlandığından emin olun.
İpucu
Bu bilgileri veritabanınızın bağlantı dizesinde bulabilirsiniz:
Server={your-server-address}
Database={your-database-name}
User ID={your-user-name}
Password={your-password}
Bu örnekte bu değerlerin nasıl görünebileceğini gösterilmektedir:
-
Hazırsanız Oluştur' u seçin.
SQL tetikleyicisi ekleme
Azure portal veya Visual Studio ' de, mantıksal uygulama tasarımcısı ' nı açan boş bir mantıksal uygulama oluşturun. Bu örnek Azure portal devam eder.
Tasarımcıda arama kutusuna girin
sql server. tetikleyiciler listesinden istediğiniz SQL tetikleyiciyi seçin. Bu örnek, bir öğe oluşturulduğunda tetikleyicisi kullanır.
ilk kez SQL veritabanınıza bağlanıyorsanız, SQL veritabanı bağlantınızı şimdi oluşturmanızistenir. Bu bağlantıyı oluşturduktan sonra, bir sonraki adımla devam edebilirsiniz.
Tetikleyicide, tetikleyicinin tabloyu ne sıklıkta denetleyeceğini belirten aralığı ve sıklığı belirtin.
Bu tetikleyicinin kullanılabilir diğer özelliklerini eklemek için yeni parametre Ekle listesini açın.
Bu tetikleyici seçili tablodan yalnızca bir satır döndürür ve başka hiçbir şey yapmaz. diğer görevleri gerçekleştirmek için, mantıksal uygulama iş akışınızda istediğiniz sonraki görevi gerçekleştiren bir SQL bağlayıcı eylemi ya da başka bir eylem ekleyerek devam edin.
Örneğin, bu satırdaki verileri görüntülemek için döndürülen satırdaki alanları içeren bir dosya oluşturan başka eylemler ekleyebilir ve ardından e-posta uyarıları gönderebilirsiniz. Bu bağlayıcıya yönelik diğer mevcut eylemler hakkında bilgi edinmek için bağlayıcının başvuru sayfasınabakın.
Tasarımcı araç çubuğunda Kaydet' i seçin.
Bu adım, mantıksal uygulamanızı Azure 'da otomatik olarak etkinleştirse ve yayımladığında, mantıksal uygulamanızın Şu anda aldığı tek eylem, veritabanınızı belirtilen aralığa ve sıklığa göre denetlemenize bağlıdır.
Yineleme kaydırma ve DRFT tetikleme
SQL tetikleyicisi gibi öncelikle bir bağlantı oluşturmanız gereken bağlantı tabanlı tetikleyiciler, yineleme tetikleyicisigibi Azure Logic Apps yerel olarak çalışan yerleşik tetikleyicilerden farklıdır. Yinelenen bağlantı tabanlı tetikleyicilerle, yineleme zamanlaması, yürütmeyi denetleyen tek sürücü değildir ve saat dilimi yalnızca ilk başlangıç saatini belirler. Sonraki çalıştırmalar yineleme zamanlaması, son tetikleme yürütmesi ve çalışma sürelerinin, gün ışığından yararlanma saatı (DST) başladığında ve sona erdiğinde belirtilen zamanlamayı sürdürmemesine neden olabilecek diğer faktörlere bağlıdır. DST 'nin etkin olduğu zaman yinelenme saatinin kaymasını sağlamak için, mantıksal uygulamanızın beklenen sürede çalışmaya devam edebilmesi için yinelemeyi el ile ayarlayın. Aksi takdirde, DST başlatıldığında başlangıç saati bir saat ileri ve DST sona erdiğinde bir saat geriye geçer. Daha fazla bilgi için bkz. bağlantı tabanlı tetikleyiciler Için yinelenme.
SQL eylemi ekleme
bu örnekte, mantıksal uygulama yinelenme tetikleyicisiylebaşlar ve bir SQL veritabanından bir satır alan bir eylemi çağırır.
Azure portal veya Visual Studio ' de mantıksal uygulama tasarımcısı 'nda mantıksal uygulamanızı açın. Bu örnek Azure portal devam eder.
SQL eylemini eklemek istediğiniz tetikleyici veya eylem altında yeni adım' ı seçin.
Ya da varolan adımlar arasında bir eylem eklemek için farenizi bağlantı oku üzerine taşıyın. Görüntülenen artı işaretini ( + ) seçin ve ardından Eylem Ekle' yi seçin.
Eylem seçin altında, arama kutusuna girin
sql server. eylemler listesinden istediğiniz SQL eylemi seçin. Bu örnek, tek bir kayıt alan satırı al eylemini kullanır.
ilk kez SQL veritabanınıza bağlanıyorsanız, SQL veritabanı bağlantınızı şimdi oluşturmanızistenir. Bu bağlantıyı oluşturduktan sonra, bir sonraki adımla devam edebilirsiniz.
Bu örnekteki tablo adını seçin
SalesLT.Customer. İstediğiniz kayıt için satır kimliğini girin.
Bu eylem, seçili tablodan yalnızca bir satır döndürür, başka hiçbir şey yapmaz. Bu nedenle, bu satırdaki verileri görüntülemek için döndürülen satırdaki alanları içeren bir dosya oluşturan ve bu dosyayı bir bulut depolama hesabında depolayabilen başka eylemler ekleyebilirsiniz. Bu bağlayıcıya yönelik diğer mevcut eylemler hakkında bilgi edinmek için bağlayıcının başvuru sayfasınabakın.
İşiniz bittiğinde, Tasarımcı araç çubuğunda Kaydet' i seçin.
Bu adım otomatik olarak Azure 'da mantıksal uygulamanızı etkin bir şekilde etkinleştirilir ve yayımlar.
Toplu verileri işle
Bazen, bağlayıcının tüm sonuçları aynı anda döndürmemesi veya sonuç kümelerinizin boyutu ve yapısı üzerinde daha iyi denetim sağlamak istiyorsanız sonuç kümeleriyle çalışmanız gerekir. Bu tür büyük sonuç kümelerini işleyebilmeniz için bazı yollar şunlardır:
Sonuçları daha küçük kümeler olarak yönetmenize yardımcı olmak için sayfalandırma'yı açın. Daha fazla bilgi için bkz. sayfalandırma kullanarak toplu verileri, kayıtları ve öğeleri edinme. daha fazla bilgi için bkz. Logic Apps ile toplu veri aktarımı için SQL sayfalandırma.
Sonuçları istediğiniz şekilde düzenleyen bir saklı yordam oluşturun. SQL bağlayıcısı, SQL veritabanı tablolarıyla çalışan iş görevlerini daha kolay otomatikleştirebilmeniz için Azure Logic Apps kullanarak erişebileceğiniz birçok arka uç özelliği sağlar.
Birden çok satır alırken veya eklerken, mantıksal uygulamanız bu sınırlardahilinde bir until döngüsü kullanarak bu satırları yineleyebilir. Ancak, mantıksal uygulamanızın kayıt kümeleriyle birlikte çalışması gerektiğinde, büyük bir deyişle, binlerce veya milyonlarca satır olmak üzere veritabanına yapılan çağrılardan elde edilen maliyetleri en aza indirmek istersiniz.
sonuçları istediğiniz şekilde düzenlemek için, SQL örneğinizde çalışan bir saklı yordam oluşturabilir ve SELECT-ORDER BY ifadesini kullanabilirsiniz. Bu çözüm, sonuçlarınızın boyutu ve yapısı üzerinde daha fazla denetim sağlar. mantıksal uygulamanız, SQL Server bağlayıcısının saklı yordamı çalıştır eylemini kullanarak saklı yordamı çağırır. Daha fazla bilgi için bkz. Select-order by yan tümcesi.
Not
SQL bağlayıcısı, 2 dakikadan kısabir saklı yordam zaman aşımı sınırına sahiptir. Bazı saklı yordamların tamamlanması bu sınırdan daha uzun sürebilir ve hataya neden olur
504 Timeout. SQL tamamlama tetikleyicisi, yerel SQL geçişli sorgu, durum tablosu ve sunucu tarafı işleri kullanarak bu soruna geçici bir çözüm bulabilirsiniz.
bu görev için Azure elastik iş aracısını Azure SQL Veritabanıiçin kullanabilirsiniz. şirket içi ve Azure SQL yönetilen örnekSQL Server için SQL Server aracısınıkullanabilirsiniz. daha fazla bilgi edinmek için, Azure Logic Apps için SQL bağlayıcısında uzun süre çalışan saklı yordam zaman aşımlarını işlemebölümüne bakın.
Dinamik toplu verileri işle
SQL Server bağlayıcısını kullanarak bir saklı yordamı çağırdığınızda döndürülen çıkış bazen dinamik olur. Bu senaryoda, aşağıdaki adımları izleyin:
Azure Portalmantıksal uygulama tasarımcısında mantıksal uygulamanızı açın.
Bir test çalıştırması gerçekleştirerek çıkış biçimini görüntüleyin. Örnek çıkışınızı kopyalayıp kaydedin.
Tasarımcıda saklı yordamı çağıran eylemin altında Yeni adım'ı seçin.
Eylem seçin altında JSON Ayrıştır eylemlerini bulun ve seçin.
JSON Ayrıştır eylemsinde Şema oluşturmak için örnek yük kullan'ı seçin.
Örnek bir JSON yükü girin veya yapıştırın kutusuna örnek çıktınızı yapıştırın ve Bitti'yi seçin.
Not
Şema oluşturamayabilirsiniz Logic Apps hata alırsanız, örnek çıkış söz dizimnizin doğru biçimlendirilmiş olup olmadığını denetleyin. Yine de şemayı oluşturamadıysanız Şema kutusuna şemayı el ile girin.
Tasarımcı araç çubuğunda Kaydet'i seçin.
JSON içerik özelliklerine başvuru yapmak için, bu özelliklere başvurarak dinamik içerik listesinin görüntülendiğinden, düzenleme kutularının içine tıklayın. Listede, JSON Ayrıştır başlığı altında, istediğiniz JSON içerik özellikleri için veri belirteçlerini seçin.
Sorunları giderme
Bağlantı sorunları
Bağlantı sorunları yaygın olarak ortaya çıkar, bu nedenle bu tür sorunları gidermek ve çözmek için bağlantı hatalarını SQL Server. İşte bazı örnekler:
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections.
(provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) (Microsoft SQL Server, Error: 53)
(provider: TCP Provider, error: 0 - No such host is known.) (Microsoft SQL Server, Error: 11001)
Bağlayıcıya özgü ayrıntılar
Sonraki adımlar
- Azure Logic Apps için diğer bağlayıcılar hakkında bilgi Azure Logic Apps