Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > Mobile > Mobile Forum > ขอคำแนะนำเรื่องการ sync ข้อมูลระหว่าง Android App, Azure และ SQL Server ค่ะ



 

ขอคำแนะนำเรื่องการ sync ข้อมูลระหว่าง Android App, Azure และ SQL Server ค่ะ

 



Topic : 117611



โพสกระทู้ ( 2 )
บทความ ( 0 )



สถานะออฟไลน์




ขอคำแนะนำเกี่ยวกับการเขียน Android App โดยใช้งานร่วมกับ Azure ด้วยเงื่อนไขด้านล่างค่ะ

  • มี DB อยู่แล้ว (SQL Server) schema dbo และอื่นๆ

  • ต้องการให้ Client App จาก Android (และในอนาคตจะมี iOS ด้วย) connect กับ DB ของ Azure

  • ต้องการให้ DB ที่ Azure กับ SQL Server มีการ sync ข้อมูลกัน เนื่องจากข้อมูลที่ SQL Server ยังมีการนำไปใช้งานแบบ local รวมถึงนำไปออกรายงานต่างๆ



ปัญหา และข้อมูลเพิ่มเติมที่พบ
- แบบที่ 1: ใช้ Mobile Services ในการ connect ระหว่าง Android App กับ Azure และใช้ Microsoft SQL Data Sync Agent ในการ connect ระหว่าง Azure กับ SQL Server ... ข้อจำกัดที่พบคือการ insert หรือทำการใดๆ ผ่าน Mobile Service (BCP) จะใช้ schema เดียวกับชื่อ Mobile Servicen (BCP.TableAAA) แต่ในส่วนของข้อมูลเดิมที่มีการ sync ผ่าน MS SQL Data Sync Agent จะใช้ schema เดิม คือ dbo

  • ต้องการใช้ schema dbo หากเปลี่ยนจะกระทบหลายส่วน

  • MS SQL Data Sync Agent มีข้อจำกัดในการ sync คือต้องมี schema และชื่อ table เหมือนกัน

  • คาดว่าการ sync ยึดตาม id ดังนั้นถ้ามี AAA เป็น primary key อยู่ ต้องเพิ่ม id และใช้ id เป็น primary key แทน

  • ข้อจำกัดเรื่อง id เนื่องจากระหว่างการ sync ข้อมูล อาจมีการ insert ข้อมูลใหม่จากทั้ง 2 ฝั่ง ถ้า id เป็น auto increment อาจเกิน dup ได้

  • หากจะใช้ Mobile Services กับ TableAAA ต้องเพิ่ม __createdAt, __updatedAt และ __version ด้วยหรือไม่ หรือเพียงแค่เพิ่ม id แล้ว id เป็น string ได้หรือไม่ หรือต้องเป็น int กับ bigint เท่านั้น ?


สรุปผล: จากวิธีข้างต้น ด้วย schema ที่ต่างกัน จึงไม่สามารถ sync ข้อมูลกันได้

- แบบที่ 2: สร้าง view ที่ Azure DB จาก schema dbo เพื่อให้แสดงที่ Mobile Service, Refer: http://chrisrisner.com/Using-Existing-Databases-with-Windows-Azure-Mobile-Services-without-changing-the-Schema
สรุปผล: หลังจากสร้าง view แล้ว ตรวจสอบที่ tab data พบ error ไม่สามารถใช้ view แทน table ได้

- แบบที่ 3: connect ระหว่าง Android App กับ Azure DB โดยตรงด้วย java โดยใช้ jdbc และ jtds
สรุปผล: ไม่สามารถ connect ได้ พบ error แตกต่างกันไป

**มีวิธีการอื่น หรือสามารถปรับใช้วิธีการด้านบน เพื่อให้สามารถทำงานได้ตามเงื่อนไขไหมคะ**

เพิ่มเติม
- รบกวนขอตัวอย่างเพิ่มเติม เกี่ยวกับการตรวจสอบ และ update ข้อมูลใหม่(ตาม Table ที่ระบุ)จาก Azure กลับมาที่ SQLite ด้วยค่ะ

รบกวนท่านๆ ผู้มีประสบการณ์ด้วยค่ะ ขอบคุณค่ะ



Tag : Mobile, Ms SQL Server 2008, Android, Mobile, Windows Azure









ประวัติการแก้ไข
2015-07-07 10:32:42
2015-07-07 10:38:28
2015-07-07 10:40:07
2015-07-07 10:40:56
2015-07-07 10:41:55
2015-07-07 10:42:24
2015-07-07 10:44:32
2015-07-07 10:45:16
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2015-07-07 10:08:54 By : h2c View : 1444 Reply : 1
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ตอบไว้ในนี้ครับ เหตุผลที่ไม่สามารถเชื่อมต่อพวก Mobile กับ Database Schema โดยตรงได้ เพราะเรื่องความปลอดภัยครับ ลองคิดดูถ้ามีการใส่ค่า User/Password ใน ConnectionString ความเสี่ยงมันจะสูงแค่ไหนครับ เค้าถึงมี Mobile Services ขึ้นมารองรับครับ

https://www.thaicreate.com/mobile/forum/117629.html#1






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2015-07-07 17:17:03 By : mr.win
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ขอคำแนะนำเรื่องการ sync ข้อมูลระหว่าง Android App, Azure และ SQL Server ค่ะ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่