Excel ODBC - ทั่วไป 'ทำงานอย่างไร'


4

คิดถึงการย้ายสเปรดชีตที่เชื่อมโยงสองสามรายการไปเป็นแบบจำลองฐานข้อมูลแทน อย่างไรก็ตามฉันมีการใช้ที่ไม่ใช่ด้านเทคนิคจำนวนมากซึ่งแทบจะไม่สามารถใช้ Excel ได้ แต่การที่พวกเขาใช้บางอย่างเช่น MS Access จะไม่เป็นปัญหา (หรือ OOBase / MySQL เนื่องจากเราไม่มี MS Access)

ฉันต้องการให้ Excel เป็นอินเทอร์เฟซผู้ใช้หลักสำหรับการรายงานและคิดว่าจะใช้การเชื่อมต่อ ODBC สำหรับสิ่งนี้ แต่ฉันไม่เคยใช้มาก่อนและสงสัยว่าเหมาะสมหรือไม่

  1. ถ้าฉันสร้างคิวรีให้อิมพอร์ตข้อมูลไปยังไฟล์ Excel และบันทึกว่า ... ข้อมูลนั้นยังคงอยู่หรือไม่ จะยังคงมีอยู่หลังจากปิดและเปิดไฟล์หรือผู้ใช้จะต้องเลือกแบบสอบถามทุกครั้งหรือไม่

  2. ฉันสามารถใช้เป็นแหล่งข้อมูลสำหรับแผนภูมิของ Excel (ไม่ใช่เดือย) และเป็นเรื่องง่ายหรือไม่ที่จะทำให้คล้ายกับตารางปกติของ Excel โดยใช้การอ้างอิงที่มีโครงสร้าง

  3. ฉันสามารถผนวกตาราง excel สำหรับคอลัมน์จากการคำนวณตามข้อมูลฐานข้อมูลได้อย่างง่ายดายหรือจะเป็นการดีที่สุดที่จะรวมการคำนวณดังกล่าวในตัวแบบฐานข้อมูลเอง

  4. ฉันเข้าใจคำค้นหาที่อ่านได้เท่านั้น? มีวิธีการป้อนข้อมูลใด ๆ ที่เป็นไปได้ในการเขียนไปยังฐานข้อมูลโดยใช้ excel แทนที่จะเป็นฟอร์มภายใน DBMS หรือไม่? ง่ายกว่าสำหรับผู้ใช้ปลายทาง

  5. ไฟล์ฐานข้อมูลจะถูกเก็บไว้ในเครือข่ายที่ใช้ร่วมกัน ฉันจะต้องกำหนดค่า / ติดตั้งอะไรบนเครื่องแต่ละเครื่องเพื่อให้สามารถเข้าถึงข้อมูลได้หรือไม่ (เครื่องทั้งหมดมี excel แล้ว)

คำตอบ:


2
  1. Excel เก็บสำเนาของข้อมูลที่สอบถามในสเปรดชีต คุณสามารถตั้งค่าตัวเลือกว่าคุณต้องการให้รีเฟรชโหลดหรือเฉพาะการขัดจังหวะโดยผู้ใช้หรือเหตุการณ์ VBA

  2. คุณสามารถใช้ข้อมูลแบบสอบถาม Excel เช่นเดียวกับข้อมูลอื่น ๆ ใน Excel ในกรณีที่เลวร้ายที่สุดแน่นอนหากมีข้อ จำกัด บางประการคุณสามารถคัดลอกข้อมูลที่สอบถามไปยังแผ่นงานใหม่และ "วางค่า" เพื่อแบ่งการเชื่อมโยงกับแบบสอบถาม

  3. ไม่ว่าจะทำการคำนวณคอลัมน์ในเครื่องหรือบนฐานข้อมูลขึ้นอยู่กับความต้องการด้านประสิทธิภาพของคุณ ในแง่หนึ่งการคำนวณบางอย่างสามารถทำได้อย่างมีประสิทธิภาพมากขึ้นบนเซิร์ฟเวอร์ฐานข้อมูลเฉพาะที่มีสเปคระดับสูงและเอ็นจิ้น SQL ที่ปรับให้เหมาะสม (ODBC ของ Excel นั้นไม่น่าเชื่อถือเลย) ในทางกลับกันถ้าคุณจะมีลูกค้าหลายพันคนกดปุ่ม DB คุณอาจไปถึงข้อ จำกัด ของ CPU หรือปริมาณงานหากคุณมีข้อมูลเพิ่มเติมจำนวนมากที่จะถ่ายโอนโดยเฉพาะถ้าคุณไม่มีอัปลิงค์ที่รวดเร็วเป็นพิเศษ ระหว่างลูกค้าและฐานข้อมูล ดังนั้นคุณอาจต้องการให้เวิร์กสเตชันของลูกค้าแต่ละรายทำการคำนวณเขตข้อมูลซึ่งจะกระจายการโหลดให้กับลูกค้าทั้งหมดและลดจำนวนข้อมูลที่ถ่ายโอนผ่านเครือข่าย แม้ว่า Excel จะไม่มีประสิทธิภาพในการจัดการข้อมูลขนาดใหญ่เช่นเดียวกับฐานข้อมูลเฉพาะ

  4. เอ็นจิ้น "Microsoft Query" ภายใน Excel อาจไม่สามารถทำการปรับปรุง / แทรกคิวรี่ได้ แต่คุณสามารถเขียนแมโคร VBA หรือ C # addin ที่ใช้ ADO เพื่อรัน SQL ตามอำเภอใจกับแบ็กเอนด์ได้

  5. ขึ้นอยู่กับว่าคุณเลือกฐานข้อมูลใด คุณพูดถึง Access, OOBase (ฉันไม่แน่ใจด้วยซ้ำว่ามันจะใช้งานได้) และ MySQL จนถึงตอนนี้ Access มีไดรเวอร์ ODBC ในตัวในทุกระบบที่ติดตั้ง Access MySQL จะต้องมีไดร์เวอร์ MySQL ODBC แบบกำหนดเองที่ติดตั้งในแต่ละระบบไคลเอนต์ ฐานข้อมูลอื่น ๆ ส่วนใหญ่จะต้องการไดร์เวอร์ ODBC บางประเภทที่ติดตั้งบนระบบเว้นแต่คุณจะโชคดีและ DB ที่คุณต้องการใช้นั้นมีไดรเวอร์ในตัวที่มาพร้อมกับ Windows


ปัจจุบันยังไม่มี MS Access แต่เป็นส่วนหนึ่งของ MS Office ดูเหมือนจะเป็นทางออกที่ง่ายที่สุด ขณะนี้เราติดตั้ง Office 2013 แล้ว (มาโดยไม่มีการเข้าถึง) เรายังมี Office 2007 Professional อยู่ ฉันจะสามารถติดตั้งเฉพาะ Access 2007 และเก็บ Office 2013 ที่เหลือโดยไม่มีปัญหาได้หรือไม่ ฉันรู้ว่าคุณควรจะติดตั้งรุ่นแรกสุดก่อนโดยปกติ แต่ไม่แน่ใจว่าสิ่งนี้ใช้ได้หรือไม่หากเราไม่มีส่วนเฉพาะของ Office ที่ติดตั้งไว้แล้ว

คุณสามารถติดตั้ง Office หลายรุ่นพร้อมกัน อย่างไรก็ตามหากคุณวางแผนที่จะใช้งาน Access ฉันจะใช้งาน Accessให้ครบทุกอย่าง หากผู้ใช้ของคุณกลัว UI ของ Access เพียงแค่เขียนแบบฟอร์มผู้ใช้ด้วยปุ่มที่ระบุว่า "คลิกที่นี่!" หรือบางสิ่งบางอย่าง. คุณจะต้องทำการเข้ารหัสใน VBA แต่มันมีความเป็นระเบียบมากกว่าการเชื่อม Excel และ Access
allquixotic
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.