I am working in a mule application and I am new in mule application development. In my application, how can I connect to MS Sql server. I have tried Database connector but it is not having Connection configuration for SQL Server.
Thanks.
I am working in a mule application and I am new in mule application development. In my application, how can I connect to MS Sql server. I have tried Database connector but it is not having Connection configuration for SQL Server.
Thanks.
I'm using SQLserver express 2012. - Download the sqljdbc41.jar file from microsoft sqljdbc41.jar - Put the jar file into the Anypoint Studio Plugin directory (e.g C:\Program Files (x86)\AnypointStudio\plugins) - Using SQL configuration manager, goto SQL Server Network Configuration --> Protocols for SQLEXPRESS and enable TCP/IP protocol
In AnyPoint studio (I'm using v5.1 March 2015), select the Database connector. In the General Tab --> Basic Settings, edit the connector configuration.
set the Datbase URL:
jdbc:sqlserver://localhost\SQLEXPRESS;database=your_database;user=your_dbuser;password=your_dbPassword
set the Driver Class to
com.microsoft.sqlserver.jdbc.SQLServerDriver
and press "Test Connection"
You must create a connection string to connect your application to SQL server. Like this: https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectionstring(v=vs.110).aspx
This is how you can connect MS SQL with Mule 3.5 :- Take this example :-
<db:generic-config name="Generic_Database_Configuration" url="jdbc:sqlserver://<your servername>:1433;databaseName=<your DB name>;user=<user name>;password=<password>"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
doc:name="Generic Database Configuration" />
<flow name="BestelItems" doc:name="BestelItems">
<poll doc:name="Poll">
<fixed-frequency-scheduler frequency="30" timeUnit="SECONDS"/>
<processor-chain doc:name="Processor Chain">
<db:select config-ref="Generic_Database_Configuration" doc:name="Database">
<db:dynamic-query><![CDATA[select * from table1 where ID=8]]>
</db:dynamic-query>
</db:select>
</processor-chain>
</poll><logger message="Payload :- #[message.payload]" level="INFO" doc:name="Logger" />
</flow>
For older Mule version (Mule 3.4 or before):- Please follow the example :-
<jdbc-ee:mssql-data-source name="MS_SQL_Data_Source" url="jdbc:sqlserver://<your servername>:1433;databaseName=<your DB name>;user=<user name>;password=<password>" transactionIsolation="UNSPECIFIED" doc:name="MS SQL Data Source"/>
<jdbc-ee:connector name="Database_Global" dataSource-ref="MS_SQL_Data_Source" validateConnections="true" queryTimeout="-1" pollingFrequency="0" doc:name="Database" transactionPerMessage="false">
<jdbc-ee:query key="RetriveQuery" value="Select * from table1"/>
</jdbc-ee:connector>
<flow name="InboundJDBC" doc:name="InboundJDBC" initialState="stopped">
<jdbc-ee:inbound-endpoint queryTimeout="-1" pollingFrequency="1000" doc:name="Database" connector-ref="Database_Global" queryKey="RetriveQuery">
<jdbc-ee:transaction action="ALWAYS_BEGIN" />
<property key="receiveMessageInTransaction" value="true"/>
</jdbc-ee:inbound-endpoint>
<mulexml:object-to-xml-transformer doc:name="Object to XML"/>
<logger message="JDBC Transaction #[message.payload] **************" level="INFO" doc:name="Logger"/>
</flow>