คำถามติดแท็ก oledb

21
ผู้ให้บริการ Microsoft.Jet.OLEDB.4.0 'ไม่ได้ลงทะเบียนในเครื่องท้องถิ่น
ฉันสร้างแอปพลิเคชัน windows ที่พัฒนาใน. NET 3.5 ในเซิร์ฟเวอร์ Windows 2008 32 บิต เมื่อปรับใช้แอปพลิเคชันในเซิร์ฟเวอร์ 64 บิตจะแสดงข้อผิดพลาด "ผู้ให้บริการ Microsoft.Jet.OLEDB.4.0 'ไม่ได้ลงทะเบียนในเครื่องท้องถิ่น" ดังนั้นเพื่อแก้ไขปัญหานี้ฉันได้เปลี่ยนคุณสมบัติ build ของโปรเจ็กต์เป็น X86 เพื่อที่จะสร้างในโหมด 32 บิตและสร้างโปรเจ็กต์ใหม่ในเครื่อง 32 บิต แต่โครงการเดียวกันใช้ไดรเวอร์ฐานข้อมูลอื่น (DB2, SQL เป็นต้น) เพื่อเชื่อมต่อกับฐานข้อมูลอื่น ดังนั้นเมื่อฉันปรับใช้แอปของฉันอีกครั้งในระบบปฏิบัติการ 64 บิตข้อผิดพลาด "พยายามโหลดแอสเซมบลี 64- บิตบนแพลตฟอร์ม 32 บิต" ฉันใช้ไดรเวอร์ Microsoft.Jet.OLEDB.4.0 เพื่ออ่านและเขียนไปยัง Excel (.xls)
191 c#  .net  oledb  32bit-64bit  jet 

11
อะไรคือความแตกต่างระหว่างแหล่งข้อมูล OLE DB และ ODBC?
ฉันอ่านบทความช่วยเหลือ MS Excel เกี่ยวกับ pivotcache และสงสัยว่าพวกเขาหมายถึงอะไรโดยแหล่งข้อมูล OLE DB และ ODBC ... คุณควรใช้คุณสมบัติ CommandText แทนคุณสมบัติ SQL ซึ่งตอนนี้มีอยู่เป็นหลักสำหรับความเข้ากันได้กับ Microsoft Excel รุ่นก่อนหน้า หากคุณใช้ทั้งสองคุณสมบัติค่าของ CommandText จะมีความสำคัญกว่า สำหรับแหล่ง OLE DBคุณสมบัติ CommandType จะอธิบายค่าของคุณสมบัติ CommandText สำหรับแหล่ง ODBCนั้นคุณสมบัติ CommandText จะทำงานเหมือนกับคุณสมบัติ SQL และการตั้งค่าคุณสมบัติจะทำให้ข้อมูลถูกรีเฟรช ... ฉันขอขอบคุณคำตอบสั้น ๆ ของคุณ
171 odbc  oledb 

6
“ ผู้ให้บริการ 'Microsoft.ACE.OLEDB.12.0' ไม่ได้ลงทะเบียนบนเครื่องท้องถิ่น” เกิดข้อผิดพลาดในการนำเข้า xlsx ไปยังเซิร์ฟเวอร์ sql
ฉันมี Windows 7 64 บิตและ SQLServer 2008 R2 (64 บิต) ฉันทำตามคำแนะนำที่นี่เพื่อนำเข้าไฟล์ excel ไปยังเซิร์ฟเวอร์ sql แต่ในส่วนรูปที่ 3 ของโพสต์นั้นเมื่อฉันพยายามเข้าถึงไฟล์ excel และเมื่อฉันคลิกถัดไปข้อผิดพลาดนี้ทำให้ฉันหยุด: The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine AccessDatabaseEngine_x64ฉันค้นหาเว็บฉันรู้ว่าฉันต้องติดตั้ง แต่เมื่อฉันติดตั้งฉันมีปัญหาเดียวกัน คุณช่วยฉันหน่อยได้ไหมว่าต้องทำอย่างไร

8
ผู้ให้บริการ 'Microsoft.ACE.OLEDB.16.0' ไม่ได้ลงทะเบียนบนเครื่องท้องถิ่น (System.Data)
ฉันได้รับข้อผิดพลาดนี้เมื่อพยายามเชื่อมต่อกับ excel ใด ๆ ผ่าน MSSQL Server Data Import เช่นแพ็คเกจ SSIS Microsoft.ACE.OLEDB.16.0ผู้ให้บริการไม่ได้ลงทะเบียนในเครื่องภายใน ( System.Data) ไม่ใช่เวอร์ชันเดียวกันฉันคิดว่าจำเป็นต้องมีการแก้ไขอื่น ๆ

11
ใช้ Excel OleDb เพื่อรับชื่อแผ่นงานใน SHEET ORDER
ฉันใช้ OleDb เพื่ออ่านจากสมุดงาน excel ที่มีแผ่นงานมากมาย ฉันต้องการอ่านชื่อแผ่นงาน แต่ต้องการตามลำดับที่กำหนดไว้ในสเปรดชีต ดังนั้นหากฉันมีไฟล์ที่มีลักษณะเช่นนี้ |_____|_____|____|____|____|____|____|____|____| |_____|_____|____|____|____|____|____|____|____| |_____|_____|____|____|____|____|____|____|____| \__GERMANY__/\__UK__/\__IRELAND__/ จากนั้นฉันต้องได้รับพจนานุกรม 1="GERMANY", 2="UK", 3="IRELAND" ฉันได้ลองใช้OleDbConnection.GetOleDbSchemaTable()แล้วและนั่นทำให้ฉันมีรายชื่อ แต่เรียงตามตัวอักษร การเรียงลำดับอัลฟาหมายความว่าฉันไม่รู้ว่าชื่อแผ่นงานใดตรงกับชื่อใด ดังนั้นฉันจึงได้รับ; GERMANY, IRELAND, UK ซึ่งมีการเปลี่ยนแปลงคำสั่งของและUKIRELAND เหตุผลที่ฉันต้องจัดเรียงก็คือฉันต้องให้ผู้ใช้เลือกช่วงข้อมูลตามชื่อหรือดัชนี พวกเขาสามารถขอ 'ข้อมูลทั้งหมดจาก GERMANY ถึง IRELAND' หรือ 'ข้อมูลจากแผ่นงาน 1 ถึงแผ่นงาน 3' ความคิดใด ๆ ที่จะได้รับการชื่นชมอย่างมาก. ถ้าฉันสามารถใช้คลาสการทำงานร่วมกันของสำนักงานได้นี่จะตรงไปตรงมา น่าเสียดายที่ฉันทำไม่ได้เพราะคลาสการทำงานร่วมกันไม่ทำงานได้อย่างน่าเชื่อถือในสภาพแวดล้อมที่ไม่โต้ตอบเช่นบริการ windows และไซต์ ASP.NET ดังนั้นฉันจึงจำเป็นต้องใช้ OLEDB
103 c#  excel  oledb  server-side 
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.