Ado.Net ile Sap Hana Veritabanı bağlantısı


Hedefimiz Sap dışındaki bir uygulama ile (web, windows form, web servis, vb.) Sap Hana veritabanına bağlamak ve ihtiyacımız olan sorguları çalıştırmak(“select * from ORDR where CardCode=’OZR123′”), aracımız Microsoft un tarihi teknolojilerinden ado.net.

Öncelikli olarak aşağıdaki yolda Sap Hana Client kurulumu ile gelen dll i projemize eklemeyi unutmuyoruz.

“C:\Program Files\sap\hdbclient\ado.net\v4.5” bu yoldaki Sap.Data.Hana.v4.5.dll i projeye ref alınmalıdır.

Projemizde dll referansı aldıktan sonra gelelim bağlantımızı kurmaya

 Console.WriteLine("Selam!");

            PYOEntities db = new PYOEntities();

            Sap.Data.Hana.HanaConnection conn_ = new Sap.Data.Hana.HanaConnection("Server =10.234.76.87:30015; UserName=SYSTEM;Password=Asdtir2018!");



            conn_.Open(); //üstteki satırlarımızda herşey açık Sap Hana’nın kapılarına dayanıp köprüleri indiriyoruz.

            string sqlClause = "select \"U_SasiNo\", \"U_SipNo\", \"U_SipKlm\" from \"HS_EPCSAML\" ";

            Sap.Data.Hana.HanaCommand cmd = new Sap.Data.Hana.HanaCommand("SET SCHEMA " + "SALESPORTAL ", conn_);

            cmd.ExecuteNonQuery();

            cmd.CommandText = sqlClause;

            var values = cmd.ExecuteReader();

            while (values.Read()) 

            {

                try

                {

                    Console.WriteLine("U_SasiNo : " + values.GetString(0).ToString());

                    db.Database.ExecuteSqlCommand("INSERT INTO [dbo].[HS_EPCSAML] ([U_SasiNo],[U_SipNo],[U_SipKlm]) VALUES ('"+ values.GetString(0) + "','" + values.GetString(1) + "','" + values.GetString(2) + "')");
                    

                }

                catch

                {

                }

            }

            cmd.Dispose(); //kapıyom kapa

            Console.ReadLine();

 

No comment

Bir cevap yazın

E-posta hesabınız yayımlanmayacak.