Çalışmamdaki bir projeyle ilgili bir sorunum var. Sharepoint'te bir veritabanım var. .accdb dosyasına bağlanır (Access 2007/2010). Şimdiye kadar, standart ConnectionString (sadece Sağlayıcı - ACEDB 12.0) ile ADODB Bağlantısı kullandım.ADODB Recordset, tüm çok değer alanlı alanları Access'ten erişemiyor
Veritabanından çok değerli alanlardan birinden veri almaya çalıştığımda, bu sütun için kayıt kümesi boş. Örnek:
Birkaç sütun almalıyım: Kimlik, Yer, İsim, İnsanlar (MVF), Eğitmenler (MVF).
Kişiler sütununda tek kayıt 3-4 değerden daha büyük olduğunda - bu sütunun kayıt seti boş. Eğer 3-4'ten az değerler varsa, noktalı virgülle ayrılmış değerler alıyorum (MVF'nin kaynak verilerini almak için bir SOL JOIN deyimi bile fark yaratmaz)
Excel üzerinde çalışıyorum - End- kullanıcı SADECE Excel kullanır.
Bir Recordset'i izlediğimde - insanların değerlerinin yerleştirilmesi gerektiğinde boş değerlere sahiptir - Buna dayanarak sorunun bağlantı türünden veya bir şeyden kaynaklandığını düşünüyorum. Ayrıca DAO bağlantısını denedim - olumlu sonuç yok.
Ayrıca .accdb dosyasında sadece SQL'i çalıştırmak için geçici bir veritabanı yapmayı denedim (INSERT INTO tmpDB SELECT People FROM inputDB; - bir sözde koddur, sözdizimi iyidir) Ve sonra "Yapılamıyor" Çoklu değer alan için INSERT INTO ".
MVF'nin kullanılması önerilmez, ancak bir SharePoint DB'sidir ve rolüm yalnızca db'den Excel'e veri almaktır. Ben ODBC sürücüsü kullanmaya çalıştı
Güncelleme ...
objConn.ConnectionString = "Driver={Microsoft Access Driver (*.mdb, *.accdb)};Dbq=" & myconn & ";Uid=Admin;Pwd=;"
... yerine OLEDB sağlayıcı ...
objConn.Provider = "Microsoft.ACE.OLEDB.12.0"
objConn.Open myconn
... ama şimdi MVF daima boş.
Daha iyi çalışıp çalışmadığını görmek için OLEDB sürücüsü yerine Access ODBC sürücüsünü kullanmayı denediniz mi? –
Bu yardımcı olabilir. Yarın kontrol edeceğim. – Krukosz