MICROSOFT.ACE.OLEDB.12.0 du serveur lié

MICROSOFT.ACE.OLEDB.12.0 du serveur lié

Comme j'ai besoin d'importer des fichiers CSV avec SQL Serveur et OPENROWSET, j'ai besoin d'installer l'accès Access sur le serveur. 

disponible ici et prendre la version 64 bits. 

Paramétrage

Suite à l'installation il faut paramétrer son usage 

Cela va me servir pour faire des tests de droits sur le dossier d'import. 


EXEC sp_configure 'xp_cmdshell', 1;

GO

RECONFIGURE;

go

Activation du composant 


USE [master]

GO

sp_configure 'show advanced options', 1

reconfigure

GO

sp_configure 'Ad Hoc Distributed Queries', 1

reconfigure


EXEC master . dbo. sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0' , N'AllowInProcess' , 1

GO

EXEC master . dbo. sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0' , N'DynamicParameters' , 1

GO


Le Test


Vérification d'accès au dossier d'import de fichier 
exec master..xp_cmdshell 'dir E:\dossier\' 

et test d'import d'un fichier 

select * from
OPENROWSET ('MICROSOFT.ACE.OLEDB.12.0', 'Text;Database=E:\dossier\;HDR=YES', 'SELECT * FROM fichier.csv' )  

Message d'erreur 


Le fournisseur OLE DB "MICROSOFT.ACE.OLEDB.12.0" du serveur lié "(null)" a retourné le message "Erreur non spécifiée"

Si vous n'êtes pas en session administrateur, vous pouvez avoir besoin de mettre les droits sur le dossier temporaire 

J'ai simplement ajouter le groupe utilisateurs avec CT sur le dossier C:\Users\<SQL Server Service Account>\AppData\Local\Temp 




    • Related Articles

    • Purge LOG Files toutes les tables du serveur SQL

      -- Purge des logs all database  -- SELECT 'use '+name+'; ALTER DATABASE ' + name +' SET RECOVERY SIMPLE; DBCC SHRINKFILE('+name + '_Log); ALTER DATABASE '+name+' SET RECOVERY FULL' FROM sys.databases WHERE name NOT IN ('master', 'model', 'tempdb', ...
    • Acces impossible serveur via le nom mais accessible via l'adressse IP

      Il s'agit d'un conflit d'authentification (ouverture session Windows / Authentification local)  Résolution  Dans gestionnaire d'identification / Credential manage  Dans la partie authentificaiton Windows :  Rechercher le nom du serveur Supprimer ...
    • Interdire l'accès à un site web depuis le serveur Windows AD (youtube)

      Sur un site avec une connexion ADSL l'usage de Youtube par les utilisateurs pour écouter de la music occupe trop de bande passante. Malheuresement les autres utilisateurs ont remarqué une lenteur abusive d'internet surtout avec les pièces jointes ...
    • Windows 10 Impossible de se connecter à un partage sur un serveur ou un NAS

      Cela fait plusieurs mois que le poste et le NAS Synology sont installés (18 mois), et brusquement plus d'accès.  Impossible d'accéder au partage, systématiquement une erreur de connexion. Cela n'affecte qu'un poste particulier.  Vérification état de ...
    • SQL Serveur -Backup toutes les bases sauf

      Le script  DECLARE @name VARCHAR(50) -- database name   DECLARE @path VARCHAR(256) -- path for backup files   DECLARE @fileName VARCHAR(256) -- filename for backup   DECLARE @fileDate VARCHAR(20) -- used for file name   -- specify database backup ...