Het Salesforce ODBC-stuurprogramma breidt het aantal toepassingen uit waaruit u Salesforce SOQL kunt gebruiken. In deze blog beschrijven we hoe u SOQL-instructies vanuit Java uitvoert met behulp van het Salesforce ODBC-stuurprogramma onder onze JDBC-ODBC Bridge, Java to ODBC-connector.
Om te beginnen:
- Installeer en licentieer het Salesforce.com ODBC-stuurprogramma op de computer waarop de JDBC-ODBC Bridge-server is geïnstalleerd.
Voordat u het ODBC-stuurprogramma van Salesforce.com kunt gebruiken om uw toepassing te verbinden met Salesforce.com, moet u een ODBC-gegevensbron configureren. Een ODBC-gegevensbron slaat de verbindingsdetails op voor de doeldatabase (bijv. Salesforce.com) en het ODBC-stuurprogramma dat nodig is om er verbinding mee te maken (bijv. het Salesforce.com ODBC-stuurprogramma).
- Start ODBC-beheerder. Typ hiervoor in het dialoogvenster Uitvoeren van Windows:
%windir%\syswow64\odbcad32.exe
- Kies in de ODBC-beheerder het tabblad Systeem-DSN en kies vervolgens Toevoegen.
- Kies in het dialoogvenster Nieuwe gegevensbron maken de optie Easysoft Salesforce SOQL ODBC-stuurprogramma en kies vervolgens Voltooien.
- Vul het dialoogvenster Easysoft Salesforce SOQL ODBC Driver DSN Setup in:
Instelling Waarde DSN Salesforce.com Gebruikersnaam De naam van uw Salesforce.com-gebruiker. Bijvoorbeeld [email protected]. Wachtwoord Het wachtwoord voor uw Salesforce.com-gebruiker. Token Het beveiligingstoken voor uw Salesforce.com-gebruiker, indien nodig. Als u wilt weten of u een beveiligingstoken moet aanleveren, kiest u de knop Test. Als de verbindingspoging mislukt met een fout die
LOGIN_MUST_USE_SECURITY_TOKEN
bevat , je moet er een aanleveren.Salesforce.com e-mailt het beveiligingstoken naar het e-mailadres dat is gekoppeld aan uw Salesforce.com-gebruikersaccount. Als u geen beveiligingstoken hebt ontvangen, kunt u deze opnieuw genereren. Salesforce.com zal vervolgens het nieuwe beveiligingstoken naar u e-mailen. Om uw beveiligingstoken opnieuw te genereren, logt u in op Salesforce.com en kiest u vervolgens Set-up in het gebruikersmenu. Zoek naar "beveiligingstoken" in het vak Snel zoeken. Klik op Beveiligingstoken opnieuw instellen op de pagina Beveiligingstoken opnieuw instellen. Wanneer u de token in uw e-mailclient ontvangt, kopieert u deze en plakt u deze in het veld Token.
- Gebruik de knop Test om te controleren of u verbinding kunt maken met Salesforce.com.
- Download de Easysoft JDBC-ODBC-brug. (Registratie vereist.)
- Installeer en licentieer de Easysoft JDBC-ODBC Bridge op de computer waarop u de gegevensbron hebt gemaakt.
Zie de Easysoft JDBC-ODBC Bridge-documentatie voor installatie-instructies.
Salesforce SOQL van Java gebruiken
- Kopieer EJOB.jar naar een computer waarop een Java Development Kit is geïnstalleerd.
Als de Easysoft JDBC-ODBC Bridge al op deze machine is geïnstalleerd, sla deze stap dan over.
EJOB.jar wordt geïnstalleerd op de volgende locatie op de machine waarop u de Easysoft JDBC-ODBC Bridge installeert:
<easysoft_install>\Jars
De standaardlocatie voor
is <drive>:\Program Files (x86)\Easysoft Limited\Easysoft JDBC-ODBC Bridge
. - Voeg deze Java-code toe aan een bestand met de naam ConnectToSalesforce.java:
import java.sql.*; import java.util.Properties; public class ConnectToSalesforce { public static void main(String[] args) { // Replace the <mydsn> value with your 32-bit Salesforce DSN. // If the JDBC-ODBC Bridge Server (JOB) is not located on the same machine as // ejob.jar replace localhost with the remote host name or IP address. // The :logonuser attribute value is a Windows user on the machine where // the JOB Server is running. String connectionUrl = "jdbc:easysoft://localhost/<mydsn>" + ":logonuser=mywindowsuser:logonpassword=mywindowspassword"; Driver driver = null; DriverPropertyInfo props[] = null; Connection con = null; Statement stmt = null; ResultSet rs = null; try { // Register the Easysoft JDBC-ODBC Bridge client. Class.forName("easysoft.sql.jobDriver"); driver = DriverManager.getDriver(connectionUrl); con = DriverManager.getConnection(connectionUrl); stmt = con.createStatement(); // You need to edit this query rs = stmt.executeQuery("SELECT Account.Name, (SELECT Contact.LastName FROM Account.Contacts) FROM Account"); System.out.print("Name LastName" + "\n"); while (rs.next()) { String n = rs.getString("Name"); String l = rs.getString("LastName"); System.out.print(n + " " + l + "\n"); } rs.close(); rs = null; stmt.close(); stmt = null; con.close(); // Return to connection pool con = null; // Make sure we do not close it twice } // Handle any errors that may have occurred. catch (Exception e) { e.printStackTrace(); } finally { if (rs != null) try { rs.close(); } catch(Exception e) {} if (con != null) try { con.close(); } catch(Exception e) {} } } }
- Voeg in een opdrachtvenster EJOB.jar toe aan het Java-klassenpad. Bijvoorbeeld:
set CLASSPATH="%CLASSPATH%;C:\Program Files (x86)\Easysoft Limited\Easysoft JDBC-ODBC Bridge\Jars\EJOB.jar"
cd
naar de map waar ConnectToSalesforce.java zich bevindt, en compileer en voer het Java-bestand uit. Bijvoorbeeld:"C:\Program Files\Java\jdk1.8.0_144\bin\javac.exe" ConnectToSalesforce.java java ConnectToSalesforce Name LastName GenePoint Ltd Frank United Oil & Gas, UK James United Oil & Gas, Singapore D'Cruz United Oil & Gas, Singapore Ripley