ฉันจะทำให้โครงการฐานข้อมูล visualstudio ของฉันสอดคล้องกับฐานข้อมูลของฉันได้อย่างไร


11

ฉันต้องการให้สคีมาฐานข้อมูลของฉันตรงกับโครงการฐานข้อมูล. dbproj ของ Visual Studio

ตอนนี้ฉันกำลังใช้ SSMS สำหรับงานพัฒนาฐานข้อมูลส่วนใหญ่ของฉันและฉันจะใช้เครื่องมือเปรียบเทียบ schema ของ visual studio ด้วยตนเองเมื่อฉันต้องการ db schema และ. dbproj เพื่อซิงโครไนซ์ ทำไมฉันต้องการสิ่งนี้ เพราะ :

  • เป็นวิธีเดียวที่จะตรวจสอบการเปลี่ยนแปลง
  • เป็นวิธีเดียวที่จะใช้การเปลี่ยนแปลง
  • การล้มเหลวในการทำเช่นนั้นจะทำให้เกิดปัญหาการรวมบางอย่างเมื่อรับไฟล์ (โดยทั่วไปถ้า "รับล่าสุด" มีการเปลี่ยนแปลงฐานข้อมูลบางอย่างในวัตถุฐานข้อมูลที่ฉันได้รับการอัปเดตโดยไม่ต้องตรวจสอบพวกเขาการผสานจะไม่ทำงาน ติดตามเวอร์ชันที่เป็น)
  • ยินดีที่ได้ใช้คุณลักษณะการค้นหาของ VisualStudio บนสคีมารุ่นล่าสุด
  • เป็นเรื่องดีที่จะสามารถแก้ไขขั้นตอนการจัดเก็บจาก VS (โดยทั่วไปเมื่อคุณเปลี่ยนชื่อไฟล์) โดยใช้ผลการค้นหา

นอกเหนือจากการใช้เครื่องมือ "schema เปรียบเทียบ" โดยอัตโนมัติเพื่อให้มันทำงานทุก ๆ 5 นาที (ซึ่งฟังดูเหมือนเป็นโซลูชันที่ "สะอาด") มีวิธีใดที่จะทำให้บรรลุผลนี้

ฉันต้องการใช้ SSMS ต่อไปหากเป็นไปได้ แต่ฉันก็สนใจที่จะเผยแพร่การเปลี่ยนแปลงที่ทำโดยอัตโนมัติโดยใช้ "การเชื่อมต่อเซิร์ฟเวอร์ Explorer / ฐานข้อมูล" ของ visual studio ไปยัง. dbproj


คุณพบวิธีการซิงโครไนซ์โครงการฐานข้อมูลของคุณกับ SSMS หรือไม่

คำตอบ:


4

SQL Server Management Studio เป็นเครื่องมือจัดการเซิร์ฟเวอร์ SQL เป็นหลักและไม่จำเป็นต้องสร้างขึ้นเพื่อรองรับสถานการณ์ที่คุณกำลังมองหา

Visual Studio Team System 2008 Database Editionและ Visual Studio Team System 2010 Pro / Ultimate รวมเครื่องมือ Database Developer tools (VSDB) เพื่อช่วยผู้ที่มีทรัพย์สินฐานข้อมูลที่กว้างขวางผสานรวมสคีมาฐานข้อมูล / view / proc / etc การพัฒนาด้วยการพัฒนาแอพของพวกเขา

VSDB ช่วยให้คุณสามารถย้อนกลับ schema ของฐานข้อมูลที่มีอยู่ในโครงการ Visual Studio เพื่อให้คุณสามารถควบคุมไฟล์สคริปต์ต่อองค์ประกอบสคีมา คุณยังสามารถแก้ไข / สร้างสคริปต์สคีมา SQL Server สำหรับการสร้างองค์ประกอบสคีมาทั้งหมดที่สนับสนุนโดย SQL 2005/2008/2010

VSDB ยังรองรับความสามารถในการปรับใช้การปรับปรุง DB schema เต็ม / บางส่วนเพื่อฐานข้อมูลว่างเปล่า / ที่มีอยู่ของที่มันทำงานจำนวนมากเพื่อพยายามใช้การเปลี่ยนแปลงที่จำเป็นในการปรับเปลี่ยนฐานข้อมูลที่มีอยู่เท่านั้น (ถ้ามี) เพื่อให้สะท้อนโครงสร้างของ โครงการฐานข้อมูล VSDB ต้นทาง

VSDB ยังมีเครื่องมือจำนวนหนึ่งที่จะช่วยคุณเปรียบเทียบ schema ระหว่างโครงการ DB และ / หรือ DB และยังช่วยให้คุณสามารถกระจายและผสานเนื้อหาของตาราง

อย่างไรก็ตามโปรดทราบว่าในขณะที่ชุดเครื่องมือนี้ได้รับการสนับสนุนในวันนี้ทีมได้ถูกยกเลิกและผลิตภัณฑ์อยู่ในโหมดการบำรุงรักษา กลุ่มผลิตภัณฑ์ SQL Server เป็นเจ้าของความรับผิดชอบในการสร้างเครื่องมือสำหรับนักพัฒนาและทำงานอย่างหนักเพื่อที่จะทำ :)


1
ฉันเป็นผู้ใช้คุณสมบัติ VS 2010 db อยู่แล้ว แต่ฉันยังไม่พบวิธีใช้เพื่อแก้ไขทั้งโครงการฐานข้อมูลและโครงการฐานข้อมูลของฉันในเวลาเดียวกันทันที ใช้สคีมาเปรียบเทียบหลังจากการปรับเปลี่ยนทุกครั้งเป็นเพียงเรื่องยุ่งยากมากเกินไป ... :(
Brann

เมื่อเริ่มดู VSDB เมื่อวานนี้ฉันพบว่าย่อหน้าสุดท้ายของคุณค่อนข้างน่าตกใจ ฟังดูเหมือนว่าฉันไม่ควรลงทุนเวลาหรือพลังงานมาก ...
Benjol

1

มีสองวิธีที่ฉันรู้ด้วยคุณสมบัติขั้นสูงของ VS2010 ในการทำสิ่งนี้

  1. ใช้ SSMS หรือเครื่องมืออื่นเพื่อแก้ไข DB schema จากนั้นเรียกใช้ schema เปรียบเทียบเป็นระยะ (สิ้นสุดวัน) แล้วนำเข้าการเปลี่ยนแปลง schema ใด ๆ กับโครงการ DB
  2. แก้ไขไฟล์ในโครงการ DB ของคุณผ่าน VS จากนั้นสร้างแพ็คเกจการปรับใช้ที่รันโดยตรงบน DB ของคุณหรือสร้างสคริปต์เพื่อให้คุณเรียกใช้เพื่ออัปเดตสคีมาของคุณใน DB

ทางออกที่สองคือในความคิดของฉันทางออกที่ดีที่สุด คุณสามารถตั้งค่ากระบวนการปรับใช้ที่ใช้เพียงคลิกเดียว การแก้ไขไฟล์ของคุณใน Visual Studio จะทำการตรวจสอบโดยอัตโนมัติจากตัวควบคุมแหล่งที่มา ฉันทำงานกับวิธีแรกแล้ว แต่ก็ยากที่จะเปรียบเทียบสคีมาเสมอ นอกจากนี้อย่างน้อยสำหรับฉันเครื่องมือเปรียบเทียบสคีมาขัดข้อง Visual Studio เป็นจำนวนมาก
Kris Harper
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.