sql >> Database teknologi >  >> RDS >> Sqlserver

Forbind SQL Server til SugarCRM

Brug SugarCRM ODBC-driveren til at forbinde Microsoft SQL Server til SugarCRM og:

  • Brug en linket server til at arbejde med SugarCRM-data, ligesom hvis du arbejdede med data gemt i en SQL Server-tabel.
  • Integrer SugarCRM med SQL Server ved at bruge SQL Server Integration Services (SSIS).
  1. Installer og licenser SugarCRM ODBC-driveren på den maskine, hvor SQL Server er installeret .

    Bemærk Hvis du vil bruge den sammenkædede server i et klyngemiljø, skal du installere ODBC-driveren på hver node i klyngen.

    For installationsinstruktioner, se SugarCRM ODBC-driverdokumentationen.

Før du kan bruge SugarCRM ODBC-driveren til at forbinde SQL Server til SugarCRM, skal du konfigurere en ODBC-datakilde. En ODBC-datakilde gemmer forbindelsesdetaljerne for måldatabasen (f.eks. SugarCRM) og den ODBC-driver, der kræves for at oprette forbindelse til den (f.eks. SugarCRM ODBC-driveren).

Bemærk Hvis du vil bruge den sammenkædede server i et klyngemiljø, skal du konfigurere datakilden på hver node i klyngen.

Du kan konfigurere en bruger-ODBC-datakilde, som kun er tilgængelig for den bruger, der opretter den, eller en system-ODBC-datakilde, som er tilgængelig for alle brugere på maskinen. Du konfigurerer ODBC-datakilder i ODBC Administrator, som er inkluderet i Windows. Bemærk, at en brugerdatakilde kun er tilgængelig for en SQL Server-instans, hvis den instans køres som en specifik bruger, ellers skal du bruge konfigurere en systemdatakilde.

64-bit Windows Der er to versioner af ODBC Administrator på denne platform. (Hvis du ikke er sikker på, om din version af Windows er 32-bit eller 64-bit, skal du følge instruktionerne i denne Microsoft Knowledge Base-artikel for at finde ud af det). Den version af ODBC Administrator, du skal køre, afhænger af, om du har en 32-bit eller en 64-bit version af SQL Server. For at finde ud af, hvilken version af SQL Server du har, skal du oprette forbindelse til din SQL Server-instans og derefter køre denne SQL-sætning:

select SERVERPROPERTY('edition')

Hvis du har 64-bit versionen af ​​SQL Server og ønsker at bruge en forbundet server med SugarCRM ODBC-driveren, skal du køre 64-bit version af ODBC Administrator. For at gøre dette skal du åbne Administrative værktøjer i Kontrolpanel og derefter åbne Datakilder (ODBC). (På Windows Server 2003 og tidligere er kontrolpanel-appletten, der starter ODBC Administrator, mærket Datakilder. På Windows 8 og nyere er kontrolpanel-appletten mærket ODBC-datakilder (64-bit).)

Hvis du har 32-bit versionen af ​​SQL Server eller ønsker at bruge SSIS med SugarCRM ODBC-driveren, skal du køre 32-bit versionen af ​​ODBC Administrator. For at gøre dette skal du i Windows Kør-dialogboksen skrive:

%windir%\syswow64\odbcad32.exe

32-bit Windows For at køre ODBC Administrator på 32-bit Windows skal du åbne Administrative værktøjer i Kontrolpanel og derefter åbne Datakilder (ODBC). (På ældre versioner af Windows er kontrolpanel-appletten, der starter ODBC Administrator, mærket Datakilder.)

Brug ODBC Administrator til at oprette din SugarCRM ODBC Driver datakilde:

  1. Gør et af følgende:
    • For at oprette en brugerdatakilde skal du vælge Tilføj på fanen Bruger-DSN.

      Vigtigt Dette vil kun lykkes, hvis SQL Server-instansen kører under den samme brugerkonto som den, der blev brugt til at oprette datakilden. Ellers skal du oprette en System ODBC-datakilde i stedet.

      –Eller–

    • For at oprette en systemdatakilde skal du vælge fanen System DSN og derefter vælge Tilføj.
  2. Vælg Easysoft ODBC-SugarCRM-driver i dialogboksen Opret ny datakilde, og vælg derefter Udfør.
  3. Fuldfør dialogboksen Easysoft ODBC-SugarCRM Driver DSN Setup:
    Indstilling Værdi
    DSN SugarCRM
    Brugernavn Navnet på din SugarCRM-bruger. For eksempel admin.
    Adgangskode Adgangskoden til din SugarCRM-bruger.
    Login-Uri URI'en for den SugarCRM-instans, som du vil oprette forbindelse til. For eksempel:
    https://sg-richarddemo.demo.sugarcrm.eu/

    Easysoft ODBC-SugarCRM-driveren kan oprette forbindelse til en SugarCRM-instans både over https og http

  4. Brug knappen Test til at bekræfte, at du kan oprette forbindelse til SugarCRM.

Du kan nu forbinde SQL Server til SugarCRM.

Eksempel:Hent SugarCRM-data ved at bruge en sammenkædet server

  1. I Microsoft SQL Server Management Studio skal du oprette forbindelse til den SQL Server-instans, du vil oprette den sammenkædede server mod.

    Du skal logge på med en konto, der er medlem af SQL Server sysadmin faste serverrolle for at oprette en linket server.

  2. Højreklik på Serverobjekter. Fra pop op-menuen skal du vælge Ny> Sammenkædet server.
  3. Skriv "SugarCRM" i feltet Forbundet server.
  4. Vælg Microsoft OLE DB Provider til ODBC-drivere på listen Udbyder.
  5. Indtast navnet på din SugarCRM ODBC-datakilde i feltet Datakilde, og vælg derefter OK.

    SQL Server verificerer den sammenkædede server ved at teste forbindelsen.

    • Hvis du får fejlen "Specificeret driver kunne ikke indlæses på grund af systemfejl 126:Det angivne modul kunne ikke findes", skal du vælge Ja, når du bliver bedt om at beholde den linkede server. Du skal genstarte din SQL Server-instans, før du kan bruge den sammenkædede server. Hvis SQL Server allerede kørte, da du installerede SugarCRM ODBC-driveren, vil den ikke have den seneste version af System PATH-miljøvariablen. SugarCRM ODBC driver installationsprogrammet tilføjer indgange for driveren til System PATH. Genstart af forekomsten gør disse ændringer tilgængelige for SQL Server, så den kan indlæse SugarCRM ODBC-driveren.
    • Hvis du lavede en fejl, da du angav SugarCRM ODBC-datakilden, får du fejlen "Datakildenavn ikke fundet og ingen standarddriver angivet. Hvis du får denne fejl, skal du vælge Nej, når du bliver bedt om at beholde den linkede server og redigere værdien i feltet Datakilde.
  6. Du kan forespørge på dine SugarCRM-data enten ved at bruge en:
    • Firedelt tabelnavn i en distribueret forespørgsel.

      Et tabelnavn i fire dele har formatet:

      servernavn .[databasenavn ].[skemanavn ].tabelnavn .

      Selvom der med SugarCRM ikke er nogen database eller et skema, returnerer Easysoft ODBC-SugarCRM-driveren en "dummy"-værdi for begge identifikatorer, fordi nogle ODBC-applikationer forventer, at der er en database og et skema. Den database, som driveren returnerer, er SUGAR . Skemaet, som driveren returnerer, er DBO . Inkluder disse identifikatorer i dine SQL-sætninger. For eksempel:

      SELECT * FROM SUGARCRM.SF.DBO.Accounts
      

      Store bogstaver i tabelnavnet skal være det samme, som det er i SugarCRM. For eksempel er følgende forespørgsel ugyldig:

      SELECT * FROM SUGARCRM.SF.DBO.ACCOUNTS
      

      For at kontrollere brugen af ​​store og små bogstaver i SugarCRM-tabellerne (objekterne), skal du køre:

      EXEC sp_tables_ex @table_server = 'SUGARCRM'
      
    • Pass-through-forespørgsel i en OPENQUERY-funktion. For eksempel:
      SELECT * FROM OPENQUERY(SUGARCRM, 'SELECT * FROM ACCOUNTS')
      

      SQL Server sender pass-through-forespørgsler som ufortolkede forespørgselsstrenge til SugarCRM ODBC-driveren. Det betyder, at SQL Server ikke anvender nogen form for logik til forespørgslen eller forsøger at estimere, hvad forespørgslen vil gøre.

Eksempel:Hent SugarCRM-data ved at bruge OPENDATASOURCE / OPENROWSET

OPENDATASOURCE / OPENROWSET funktioner giver dig mulighed for at arbejde med SugarCRM-data i SQL Server uden at konfigurere en forbundet server. Der er nogle sikkerhedsimplikationer forbundet med deres brug, og disse funktioner er derfor ikke aktiveret som standard.

  1. Kør disse kommandoer i Microsoft SQL Server Management Studio for at aktivere OPENDATASOURCE / OPENROWSET funktioner:
    EXEC sp_configure 'show advanced options', 1
    RECONFIGURE
    GO
    EXEC sp_configure 'ad hoc distributed queries', 1
    RECONFIGURE
    GO
  2. Kør:
    SELECT * FROM OPENDATASOURCE('MSDASQL', 'DSN=MY_SUGARCRM_ODBC_DATA_SOURCE;') .SF.DBO.Accounts

    —Eller—

    SELECT * FROM OPENROWSET('MSDASQL', 'DSN=MY_SUGARCRM_ODBC_DATA_SOURCE;', 'select * from Accounts;')

Eksempel:Sikkerhedskopier en SugarCRM-tabel i SQL Server

Denne kommando opretter en kopi af kontotabellen, den antager, at den linkede server hedder SUGARCRM .

IF OBJECT_ID('dbo.Account', 'U') IS NOT NULL DROP TABLE dbo.Accounts;
SELECT * INTO Accounts FROM OPENQUERY(SUGARCRM,'SELECT * FROM Accounts')

Eksempel:Integrer SugarCRM med SQL Server ved at bruge SQL Server Integration Services (SSIS)

Disse instruktioner forudsætter, at du har Microsoft Visual Studio og SQL Server Data Tools til Visual Studio installeret.

  1. Opret en .csv-fil med navnet categories.csv med følgende indhold:
    name,is_external
    "Test Category 1",1
    "Test Category 2",0
  2. Opret et nyt integrationsserviceprojekt i Visual Studio.
  3. Træk en dataflowopgave fra værktøjskassen til fanen Kontrolflow.
  4. Vælg fanen Dataflow.
  5. Træk en flad filkilde fra værktøjskassen til fanen Dataflow, og tryk derefter på Retur.

    Flad filkilde er under listen Andre kilder.

  6. Vælg Ny i editoren for flad filkilde.
  7. Gennemse efter din .csv-fil i dialogboksen Flat File Connection Manager Editor.
  8. Indtast ".
  9. i tekstkvalifikationsfeltet
  10. Vælg Eksempel, og vælg derefter OK for at afslutte dialogboksene.
  11. Træk en ODBC-destination fra værktøjskassen til fanen Dataflow, og tryk derefter på Retur.

    ODBC-destination er på listen Andre destinationer.

  12. Vælg den flade filkilde. Træk den blå pil over til ODBC-destinationen.
  13. Vælg ODBC-destinationen, og tryk derefter på Retur.
  14. Vælg Ny i dialogboksen ODBC-destination.
  15. Vælg Ny i dialogboksen Konfigurer ODBC Connection Manager.
  16. Vælg din SugarCRM ODBC-datakilde i dialogboksen Connection Manager, og brug derefter knappen OK for at vende tilbage til dialogboksen ODBC-kilde.
  17. Vælg Produkt2 i navnet på tabellen eller visningslisten.
  18. Vælg Mappings.
  19. Tilknyt kolonnerne Navn, Beskrivelse og Familie på inputlisten til de samme kolonner på destinationslisten.

    Dine input- og destinationskolonner skulle se sådan ud:

    Indtastningskolonne Destinationskolonne
    [er_ekstern] er_ekstern
    navn navn

    Alle andre kolonnenavne vil have deres input sat til <ignore>

  20. Vælg knappen Start for at indsætte posterne fra .csv-filen i SugarCRM.

  1. De bedste SQL Server Performance-fora til hjælp til de sværeste spørgsmål

  2. PostgreSQL-implementering og vedligeholdelse med Ansible

  3. Hvordan man kortlægger en streng til DB-sekvens i Hibernate

  4. SQL AVG() for begyndere