Mix jython code with sql
Hi,
I have just read the following sentence in the odi jyhon reference:
"Oracle Data Integrator users may write procedures or knowledge modules using Jython, and may mix Jython code with SQL, PL/SQL, OS Calls, etc."
Does anyone of you know how jython can be mixed with SQL in a knowledge module? I just know how to embed java code with the <% %> tag. But how about jython (e.g. when used in a knowledge module task with technology = "Oracle"?
I appreciate your help.
best regards,
Hans
So Firstly I have never done this in KM but it works well in Procedure so I think it would work in a KM but I'm not sure.
So I will show you an exemple which will be easyer than lot of explanation.
This exemple is a step of a procedure which is supposed to send an email if there is an error in an execution.
This Step retrieve informations about the execution as the error message or the execution context...
In the Target Command :
Technology= Jython
I have :
EmailBody = EmailBody + r'''<TR><TD><CENTER>#NO</CENTER></TD><TD>#SESS_NAME</TD><TD>#STEP_NAME
</TD><TD>#CONTEXT</TD><TD>#DEBUT</TD><TD>#MSG</TD></TR>'''
Contexte = '#CONTEXT'.
--> the #variable are the informations that I will extract in the source.
In the Source Command :
Technology = Oracle .
SELECT L.SESS_NO || ' / ' || L.NNO "NO", STEP_NAME, SESS_NAME, SS.CONTEXT_CODE "CONTEXT", L.STEP_BEG "DEBUT", X.TXT "MSG", L.step_rc "RC"
FROM <%=snpRef.getObjectName("L", "SNP_STEP_LOG", "D")%> L,
<%=snpRef.getObjectName("L", "SNP_SESS_STEP", "D")%> SS,
<%=snpRef.getObjectName("L", "SNP_SESSION", "D")%> S,
<%=snpRef.getObjectName("L", "SNP_EXP_TXT", "D")%> X
WHERE L.SESS_NO = <%=snpRef.getSession("SESS_NO")%> AND
L.SESS_NO = SS.SESS_NO AND L.NNO = SS.NNO AND S.SESS_NO = L.SESS_NO AND
STEP_STATUS = 'E' and L.I_TXT_STEP_MESS=X.I_TXT and X.TXT_ORD=0
And with this the Jython keep the information of the Query...
So I would like to apologize cause in my last post I have inversed the Target and the Source... Sorry. Hope that your problem didn't come from here...
Evidently you will have SQL as Source and Jython as Target...
Similar Messages
-
Pagination of output php code with sql code
if one program of php including sql query
it seems to output wrong .(means some data will be calculated sum)
if php code output all data in one page.pagination
it seems to output right(means some data will be calculated sum)
if there has column of company including two companies of A and B.
and if each page output 3 lines while A company has 4 lines in sql query,so
the last line of A company will output in second page,
i want to calculate A company including 4 lines sum
how to calculate sum of company of A in second page.
i think it will be a good interesting question of php code with sql code.
who can solution thus question ?
thanks !Hi,
for Example:
SELECT sum(quantity * price)
FROM orders
WHERE COMPANY = 'A';
This will give you the total amount for company A.
But remember that your example table will give no output, since you have no price column. So you must decide, what which sum to calculate.
A sum only calculated over the quantity makes IMHO no sense, because there are apples and bananas ...
Greetings from Hamburg
Thorsten Körner -
Re-Write the Node-DOM code with SQL-XML funtions
Hi Friends,
Could you please help in re-writing the below code using SQl-XML functions
DECLARE
l_domdoc dbms_xmldom.DOMDocument;
l_xmltype XMLTYPE;
l_root_node dbms_xmldom.DOMNode;
l_departments_node dbms_xmldom.DOMNode;
l_dept_element dbms_xmldom.DOMElement;
l_dept_node dbms_xmldom.DOMNode;
l_name_node dbms_xmldom.DOMNode;
l_name_textnode dbms_xmldom.DOMNode;
l_location_node dbms_xmldom.DOMNode;
l_location_textnode dbms_xmldom.DOMNode;
l_employees_node dbms_xmldom.DOMNode;
l_emp_element dbms_xmldom.DOMElement;
l_emp_node dbms_xmldom.DOMNode;
l_emp_first_name_node dbms_xmldom.DOMNode;
l_emp_first_name_textnode dbms_xmldom.DOMNode;
l_emp_last_name_node dbms_xmldom.DOMNode;
l_emp_last_name_textnode dbms_xmldom.DOMNode;
BEGIN
-- Create an empty XML document
l_domdoc := dbms_xmldom.newDomDocument;
-- Create a root node
l_root_node := dbms_xmldom.makeNode(l_domdoc);
-- Create a new node Departments and add it to the root node
l_departments_node := dbms_xmldom.appendChild( l_root_node
, dbms_xmldom.makeNode(dbms_xmldom.createElement(l_domdoc, 'Deptartments' ))
FOR r_dept IN (SELECT dept.department_id
, dept.department_name
, loc.city
FROM departments dept
JOIN locations loc
ON loc.location_id = dept.location_id
WHERE dept.department_id IN (10,20)
LOOP
-- For each record, create a new Dept element with the Department ID as attribute.
-- and add this new Dept element to the Departments node
l_dept_element := dbms_xmldom.createElement(l_domdoc, 'Dept' );
dbms_xmldom.setAttribute(l_dept_element, 'Deptno', r_dept.Department_Id );
l_dept_node := dbms_xmldom.appendChild( l_departments_node
, dbms_xmldom.makeNode(l_dept_element)
-- Each Dept node will get a Name node which contains the department name as text
l_name_node := dbms_xmldom.appendChild( l_dept_node
, dbms_xmldom.makeNode(dbms_xmldom.createElement(l_domdoc, 'Name' ))
l_name_textnode := dbms_xmldom.appendChild( l_name_node
, dbms_xmldom.makeNode(dbms_xmldom.createTextNode(l_domdoc, r_dept.department_name ))
-- Each Dept node will aslo get a Location node which contains the location(city) as text
l_location_node := dbms_xmldom.appendChild( l_dept_node
, dbms_xmldom.makeNode(dbms_xmldom.createElement(l_domdoc, 'Location' ))
l_location_textnode := dbms_xmldom.appendChild( l_location_node
, dbms_xmldom.makeNode(dbms_xmldom.createTextNode(l_domdoc, r_dept.city ))
-- For each department, add an Employees node
l_employees_node := dbms_xmldom.appendChild( l_dept_node
, dbms_xmldom.makeNode(dbms_xmldom.createElement(l_domdoc, 'Employees' ))
FOR r_emp IN (SELECT employee_id
, first_name
, last_name
FROM employees
WHERE department_id = r_dept.department_id
LOOP
-- For each record, create a new Emp element with the Employee ID as attribute.
-- and add this new Emp element to the Employees node
l_emp_element := dbms_xmldom.createElement(l_domdoc, 'Emp' );
dbms_xmldom.setAttribute(l_emp_element, 'empid', r_emp.employee_id );
l_emp_node := dbms_xmldom.appendChild( l_employees_node
, dbms_xmldom.makeNode(l_emp_element)
-- Each emp node will get a First name and Last name node which contains the first name and last name as text
l_emp_first_name_node := dbms_xmldom.appendChild( l_emp_node
, dbms_xmldom.makeNode(dbms_xmldom.createElement(l_domdoc, 'FirstName' ))
l_emp_first_name_textnode := dbms_xmldom.appendChild( l_emp_first_name_node
, dbms_xmldom.makeNode(dbms_xmldom.createTextNode(l_domdoc, r_emp.first_name ))
l_emp_last_name_node := dbms_xmldom.appendChild( l_emp_node
, dbms_xmldom.makeNode(dbms_xmldom.createElement(l_domdoc, 'LastName' ))
l_emp_last_name_textnode := dbms_xmldom.appendChild( l_emp_last_name_node
, dbms_xmldom.makeNode(dbms_xmldom.createTextNode(l_domdoc, r_emp.last_name ))
END LOOP;
END LOOP;
l_xmltype := dbms_xmldom.getXmlType(l_domdoc);
dbms_xmldom.freeDocument(l_domdoc);
dbms_output.put_line(l_xmltype.getClobVal);
END;
thanks and regards,
Arun Thomas TIt's as easy as this :
SQL> select xmlserialize(document
2 xmlelement("Departments"
3 , xmlagg(
4 xmlelement("Dept"
5 , xmlattributes(d.department_id as "Deptno")
6 , xmlforest(
7 d.department_name as "Name"
8 , l.city as "Location"
9 )
10 , xmlelement("Employees"
11 , (
12 select xmlagg(
13 xmlelement("Emp"
14 , xmlattributes(e.employee_id as "empid")
15 , xmlforest(
16 e.first_name as "FirstName"
17 , e.last_name as "LastName"
18 )
19 )
20 )
21 from hr.employees e
22 where e.department_id = d.department_id
23 )
24 )
25 )
26 )
27 )
28 indent
29 )
30 from hr.departments d
31 join hr.locations l on l.location_id = d.location_id
32 where d.department_id in (10,20) ;
XMLSERIALIZE(DOCUMENTXMLELEMEN
<Departments>
<Dept Deptno="10">
<Name>Administration</Name>
<Location>Seattle</Location>
<Employees>
<Emp empid="200">
<FirstName>Jennifer</FirstName>
<LastName>Whalen</LastName>
</Emp>
</Employees>
</Dept>
<Dept Deptno="20">
<Name>Marketing</Name>
<Location>Toronto</Location>
<Employees>
<Emp empid="201">
<FirstName>Michael</FirstName>
<LastName>Hartstein</LastName>
</Emp>
<Emp empid="202">
<FirstName>Pat</FirstName>
<LastName>Fay</LastName>
</Emp>
</Employees>
</Dept>
</Departments> -
Create Employee code with the mix of alphabets & numeric
Hai,
Is there any possibility to create Employee code with the mix of alphabets & numeric instead of the system generated employee code in employee master data? If so, pls explain.
Any suggestion is appreciated.
Thanks,
Parvatha Solai.NHi Solai,
You can do a work around for it. Just Leave the Employee ID field as it is. Create a new User Defined field (Alpha Numeric Type) And make it visible on the the employee master data form.
Step2 : Depending upon your need write the code that is if it should be auto generated write the code for else leave it blank for the user to enter the employee code.
Step3: In before action = True. Make the newly created field as mandatory and check whether the value in the field is unique.
Refer Route Class. Hope you understand
Regards,
P. Anand
Edited by: Anand peter on Jan 2, 2012 11:59 AM -
Reporting Service Error Code 7403, on SCCM 2012 R2 with SQL 2012 SP1 CU6
Dear All,
I am facing issue to install Reporting Services Point on SCCM 2012 R2 with SQL 2012 SP1 CU6. getting error messages id 7403. please let me know if SQL 2012 SP1 CU6 is supported with SCCM 2012 R2 or not & if you have any solution on it.
Error Message: The report server service is not running on Reporting Service Point server "SCCM2012"; start the service to enable reporting.I am getting below error msg when trying to browse both sites
1) For Reports
The report server cannot decrypt the
symmetric key that is used to access sensitive or encrypted data in a report
server database. You must either restore a backup key or delete all encrypted
content. (rsReportServerDisabled)
Get Online Help
Keyset does not exist (Exception from
HRESULT:
0x80090016)
2) For Reportserver
Reporting Services Error
The report server cannot decrypt the symmetric key that is used to access
sensitive or encrypted data in a report server database. You must either restore
a backup key or delete all encrypted content. (rsReportServerDisabled)
Get Online Help
Keyset does not exist (Exception from HRESULT: 0x80090016)
SQL Server Reporting Services -
How to Populate the JTable Object programatically with SQL Results
I'm wondering if someone could help me on how to populate the JTable Object with SQL Results wherein the Row of tjhe JTable object is automatically adjusted depending on how many records you have queried.
Thanks in advance and God bless! (",)
* frmMain.java
* Created on October 4, 2006, 6:15 AM
package tds;
import java.io.*;
import java.awt.Toolkit;
import javax.swing.JFrame;
import javax.imageio.*;
import javax.swing.JFrame;
import java.sql.*;
import javax.swing.table.DefaultTableModel;
* @author Dexter.Carlit
public class frmMain extends javax.swing.JFrame {
private Connection connection = null;
private DefaultTableModel model;
/** Creates new form frmMain */
public frmMain() {
initComponents();
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
// <editor-fold defaultstate="collapsed" desc=" Generated Code ">//GEN-BEGIN:initComponents
private void initComponents() {
jSplitPane = new javax.swing.JSplitPane();
jScrollPane1 = new javax.swing.JScrollPane();
jPanel3 = new javax.swing.JPanel();
jScrollPane2 = new javax.swing.JScrollPane();
jTree1 = new javax.swing.JTree();
jTabbedPane1 = new javax.swing.JTabbedPane();
jPanel1 = new javax.swing.JPanel();
jPanel4 = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jTextField1 = new javax.swing.JTextField();
jTextField2 = new javax.swing.JTextField();
jLabel3 = new javax.swing.JLabel();
jTextField3 = new javax.swing.JTextField();
jLabel4 = new javax.swing.JLabel();
jTextField4 = new javax.swing.JTextField();
jPanel5 = new javax.swing.JPanel();
jScrollPane3 = new javax.swing.JScrollPane();
jGrid = new javax.swing.JTable();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jProgressBar1 = new javax.swing.JProgressBar();
jPanel2 = new javax.swing.JPanel();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));
addWindowListener(new java.awt.event.WindowAdapter() {
public void windowOpened(java.awt.event.WindowEvent evt) {
formWindowOpened(evt);
getAccessibleContext().setAccessibleName("frmMain");
jSplitPane.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED));
jSplitPane.setDividerLocation(200);
jSplitPane.setDividerSize(10);
jScrollPane2.setViewportView(jTree1);
org.jdesktop.layout.GroupLayout jPanel3Layout = new org.jdesktop.layout.GroupLayout(jPanel3);
jPanel3.setLayout(jPanel3Layout);
jPanel3Layout.setHorizontalGroup(
jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel3Layout.createSequentialGroup()
.add(jScrollPane2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 916, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
jPanel3Layout.setVerticalGroup(
jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jScrollPane2, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 410, Short.MAX_VALUE)
jScrollPane1.setViewportView(jPanel3);
jSplitPane.setLeftComponent(jScrollPane1);
jPanel4.setBorder(javax.swing.BorderFactory.createTitledBorder(""));
jLabel1.setText("First Name:");
jLabel2.setText("Last Name:");
jLabel3.setText("Position :");
jLabel4.setText("Department:");
jPanel5.setBorder(javax.swing.BorderFactory.createTitledBorder("Search Results"));
jGrid.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
new String [] {
"LName", "FName", "Position", "Department", "Office No", "Local No", "Office Mobile No", "Home No", "MobileNo", "Email Address"
jGrid.setAutoResizeMode(javax.swing.JTable.AUTO_RESIZE_OFF);
jGrid.setColumnSelectionAllowed(true);
jGrid.setName("");
jGrid.setTableHeader(jGrid.getTableHeader());
jScrollPane3.setViewportView(jGrid);
jScrollPane3.getAccessibleContext().setAccessibleName("rset");
org.jdesktop.layout.GroupLayout jPanel5Layout = new org.jdesktop.layout.GroupLayout(jPanel5);
jPanel5.setLayout(jPanel5Layout);
jPanel5Layout.setHorizontalGroup(
jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jScrollPane3, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 386, Short.MAX_VALUE)
jPanel5Layout.setVerticalGroup(
jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jScrollPane3, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 175, Short.MAX_VALUE)
jButton1.setText("Find");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
jButton1.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jButton1MouseClicked(evt);
jButton2.setText("Clear");
jButton2.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
jButton2MouseClicked(evt);
org.jdesktop.layout.GroupLayout jPanel4Layout = new org.jdesktop.layout.GroupLayout(jPanel4);
jPanel4.setLayout(jPanel4Layout);
jPanel4Layout.setHorizontalGroup(
jPanel4Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel4Layout.createSequentialGroup()
.addContainerGap()
.add(jPanel4Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
.add(org.jdesktop.layout.GroupLayout.LEADING, jPanel5, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.add(org.jdesktop.layout.GroupLayout.LEADING, jPanel4Layout.createSequentialGroup()
.add(jLabel1)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jTextField1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 343, Short.MAX_VALUE))
.add(org.jdesktop.layout.GroupLayout.LEADING, jPanel4Layout.createSequentialGroup()
.add(jLabel2)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jTextField2, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 343, Short.MAX_VALUE)
.add(1, 1, 1))
.add(org.jdesktop.layout.GroupLayout.LEADING, jPanel4Layout.createSequentialGroup()
.add(jLabel3)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jTextField3, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 138, Short.MAX_VALUE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jLabel4)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jTextField4, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 138, Short.MAX_VALUE))
.add(jPanel4Layout.createSequentialGroup()
.add(jButton1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 66, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jButton2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 66, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
.addContainerGap())
jPanel4Layout.linkSize(new java.awt.Component[] {jButton1, jButton2}, org.jdesktop.layout.GroupLayout.HORIZONTAL);
jPanel4Layout.setVerticalGroup(
jPanel4Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel4Layout.createSequentialGroup()
.addContainerGap()
.add(jPanel4Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jLabel1)
.add(jTextField1))
.add(18, 18, 18)
.add(jPanel4Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jLabel2)
.add(jTextField2))
.add(16, 16, 16)
.add(jPanel4Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jLabel3)
.add(jTextField3)
.add(jLabel4)
.add(jTextField4))
.add(14, 14, 14)
.add(jPanel4Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jButton2, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.add(jButton1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jPanel5, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
org.jdesktop.layout.GroupLayout jPanel1Layout = new org.jdesktop.layout.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel1Layout.createSequentialGroup()
.addContainerGap()
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
.add(org.jdesktop.layout.GroupLayout.LEADING, jPanel4, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.add(org.jdesktop.layout.GroupLayout.LEADING, jProgressBar1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 438, Short.MAX_VALUE))
.addContainerGap())
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel1Layout.createSequentialGroup()
.addContainerGap()
.add(jPanel4, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jProgressBar1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
jTabbedPane1.addTab("Search", jPanel1);
org.jdesktop.layout.GroupLayout jPanel2Layout = new org.jdesktop.layout.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(0, 458, Short.MAX_VALUE)
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(0, 401, Short.MAX_VALUE)
jTabbedPane1.addTab("Directory", jPanel2);
jSplitPane.setRightComponent(jTabbedPane1);
org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jSplitPane, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 675, Short.MAX_VALUE)
layout.setVerticalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jSplitPane)
pack();
}// </editor-fold>//GEN-END:initComponents
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
}//GEN-LAST:event_jButton1ActionPerformed
private void jButton2MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jButton2MouseClicked
jGrid.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null},
{null, null, null, null, null, null, null, null, null, null}
new String [] {
"LName", "FName", "Position", "Department", "Office No", "Local No", "Office Mobile No", "Home No", "MobileNo", "Email Address"
jGrid.updateUI();
}//GEN-LAST:event_jButton2MouseClicked
private void jButton1MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jButton1MouseClicked
try {
//Load and register SQL Server driver
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
//Establish a connection
Connection connection = DriverManager.getConnection("jdbc:microsoft:sqlserver://X.X.X.X:1433","MyAccount","MyPassword");
//Create a Statement object
Statement sql_stmt = connection.createStatement();
//Create a ResultSet object, execute the query and return a
// resultset
ResultSet rset = sql_stmt.executeQuery("SELECT * FROM EpxDirectory..Directory Order By LName");
// Populates a JTABLE Object
int i=0;
while (rset.next()){
String LName = rset.getString(1);
String FName = rset.getString(2);
String Position = rset.getString(3);
String Dept_Code = rset.getString(4);
String OffPhoneNo = rset.getString(5);
String LocalNo = rset.getString(6);
String OffMobileNo = rset.getString(7);
String HomePhoneNo = rset.getString(8);
String MobileNo = rset.getString(9);
String Email = rset.getString(10);
jGrid.updateUI();
jGrid.setValueAt(rset.getString(1).trim(),i,0);
jGrid.setValueAt(rset.getString(2).trim(),i,1);
jGrid.setValueAt(rset.getString(3).trim(),i,2);
jGrid.setValueAt(rset.getString(4).trim(),i,3);
jGrid.setValueAt(rset.getString(5).trim(),i,4);
jGrid.setValueAt(rset.getString(6).trim(),i,5);
jGrid.setValueAt(rset.getString(7).trim(),i,6);
jGrid.setValueAt(rset.getString(8).trim(),i,7);
jGrid.setValueAt(rset.getString(9).trim(),i,8);
jGrid.setValueAt(rset.getString(10).trim(),i,9);
i++;
//Close the ResultSet and Statement
rset.close();
sql_stmt.close();
//Close the database connection
connection.close();
System.out.println(Integer.toString(i) + " rows found");
} catch(Exception e) {
System.out.println("Failed to connect; Please view Stack Trace");
e.printStackTrace();
}//GEN-LAST:event_jButton1MouseClicked
private void formWindowOpened(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_formWindowOpened
}//GEN-LAST:event_formWindowOpened
public static void run(){
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
frmMain frmMain = new frmMain();
frmMain.setLocationRelativeTo(null); // Center the JFrame on the
frmMain.setVisible(true);
private void exitApplication() {
// try {
// //gui.putStatus("Closing the connection....please wait.....");
// if(connection != null) {
// // connection.close(); //Closing the connection object.
// } catch(SQLException ex) { //Trap SQLException
// //gui.putStatus(ex.toString());
System.exit(0); //Exit the aplication
* @param args the command line arguments
public static void main(String args[]) {
run();
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JTable jGrid;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JPanel jPanel4;
private javax.swing.JPanel jPanel5;
private javax.swing.JProgressBar jProgressBar1;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JScrollPane jScrollPane3;
private javax.swing.JSplitPane jSplitPane;
private javax.swing.JTabbedPane jTabbedPane1;
private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;
private javax.swing.JTextField jTextField3;
private javax.swing.JTextField jTextField4;
private javax.swing.JTree jTree1;
// End of variables declaration//GEN-END:variables
}Use code tags.
Don't mix GUI and JDBC together. Split them out into separate classes.
You have a good start, but you will need to loop through your resultset and also pull the ResultSet metaData for you column headings -
Error with Sql Server and Java App
Hi i have a java based multithread application which comunicate with SQL SERVER via DSN bridge , some time my application crashes with this error any idea what its happend and how to remove it .
Thanks
************* Exception ********************************8
An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : EXCEPTION_ACCESS_VIOLATION occurred at PC=0x77F87EEB
Function=RtlEnterCriticalSection+0xB
Library=F:\WINNT\system32\ntdll.dll
Current Java thread:
at sun.jdbc.odbc.JdbcOdbc.numResultCols(Native Method)
at sun.jdbc.odbc.JdbcOdbc.SQLNumResultCols(JdbcOdbc.java:4625)
at sun.jdbc.odbc.JdbcOdbcStatement.getColumnCount(JdbcOdbcStatement.java:1235)
at sun.jdbc.odbc.JdbcOdbcStatement.execute(JdbcOdbcStatement.java:352)
- locked <04DC3EE0> (a sun.jdbc.odbc.JdbcOdbcStatement)
at sun.jdbc.odbc.JdbcOdbcStatement.executeUpdate(JdbcOdbcStatement.java:288)
at advcomm.advrad.DBParams.Ltht(Unknown Source)
at advcomm.advrad.DBParams.BDhb(Unknown Source)
at advcomm.advrad.DlkhlHz.run(Unknown Source)
Dynamic libraries:
0x00400000 - 0x00406000 F:\j2sdk1.4.1_03\bin\java.exe
0x77F80000 - 0x77FFC000 F:\WINNT\system32\ntdll.dll
0x7C2D0000 - 0x7C335000 F:\WINNT\system32\ADVAPI32.dll
0x7C570000 - 0x7C623000 F:\WINNT\system32\KERNEL32.dll
0x77D30000 - 0x77DA8000 F:\WINNT\system32\RPCRT4.dll
0x78000000 - 0x78045000 F:\WINNT\system32\MSVCRT.dll
0x75030000 - 0x75044000 F:\WINNT\system32\WS2_32.DLL
0x75020000 - 0x75028000 F:\WINNT\system32\WS2HELP.DLL
0x6D340000 - 0x6D46B000 F:\j2sdk1.4.1_03\jre\bin\client\jvm.dll
0x77E10000 - 0x77E79000 F:\WINNT\system32\USER32.dll
0x77F40000 - 0x77F7C000 F:\WINNT\system32\GDI32.dll
0x77570000 - 0x775A0000 F:\WINNT\system32\WINMM.dll
0x6D1E0000 - 0x6D1E7000 F:\j2sdk1.4.1_03\jre\bin\hpi.dll
0x6D310000 - 0x6D31E000 F:\j2sdk1.4.1_03\jre\bin\verify.dll
0x6D220000 - 0x6D239000 F:\j2sdk1.4.1_03\jre\bin\java.dll
0x6D330000 - 0x6D33D000 F:\j2sdk1.4.1_03\jre\bin\zip.dll
0x6D260000 - 0x6D26B000 F:\j2sdk1.4.1_03\jre\bin\JdbcOdbc.dll
0x1F7A0000 - 0x1F7DA000 F:\WINNT\system32\ODBC32.dll
0x71710000 - 0x71794000 F:\WINNT\system32\COMCTL32.dll
0x7CF30000 - 0x7D175000 F:\WINNT\system32\SHELL32.dll
0x70A70000 - 0x70AD6000 F:\WINNT\system32\SHLWAPI.dll
0x76B30000 - 0x76B6E000 F:\WINNT\system32\comdlg32.dll
0x1F840000 - 0x1F857000 F:\WINNT\system32\odbcint.dll
0x1F9C0000 - 0x1FA27000 F:\WINNT\System32\SQLSRV32.dll
0x41090000 - 0x410BD000 F:\WINNT\System32\SQLUNIRL.dll
0x77800000 - 0x7781E000 F:\WINNT\System32\WINSPOOL.DRV
0x76620000 - 0x76631000 F:\WINNT\system32\MPR.DLL
0x77820000 - 0x77827000 F:\WINNT\system32\VERSION.dll
0x759B0000 - 0x759B6000 F:\WINNT\system32\LZ32.DLL
0x779B0000 - 0x77A4B000 F:\WINNT\system32\OLEAUT32.dll
0x7CE20000 - 0x7CF0F000 F:\WINNT\system32\ole32.dll
0x7CDC0000 - 0x7CE13000 F:\WINNT\System32\NETAPI32.dll
0x77980000 - 0x779A4000 F:\WINNT\System32\DNSAPI.dll
0x75050000 - 0x75058000 F:\WINNT\System32\WSOCK32.dll
0x751C0000 - 0x751C6000 F:\WINNT\System32\NETRAP.dll
0x77BF0000 - 0x77C01000 F:\WINNT\System32\NTDSAPI.dll
0x77950000 - 0x7797B000 F:\WINNT\system32\WLDAP32.DLL
0x7C340000 - 0x7C34F000 F:\WINNT\System32\SECUR32.DLL
0x75150000 - 0x75160000 F:\WINNT\System32\SAMLIB.dll
0x769A0000 - 0x769A7000 F:\WINNT\system32\NDDEAPI.DLL
0x1FA30000 - 0x1FA46000 F:\WINNT\System32\sqlsrv32.rll
0x1F7F0000 - 0x1F80A000 F:\WINNT\system32\odbccp32.dll
0x74CB0000 - 0x74CCA000 F:\WINNT\system32\DBNETLIB.DLL
0x75500000 - 0x75504000 F:\WINNT\system32\security.dll
0x782D0000 - 0x782F2000 F:\WINNT\system32\msv1_0.dll
0x7C740000 - 0x7C7CC000 F:\WINNT\system32\CRYPT32.dll
0x77430000 - 0x77441000 F:\WINNT\system32\MSASN1.dll
0x77340000 - 0x77353000 F:\WINNT\system32\iphlpapi.dll
0x77520000 - 0x77525000 F:\WINNT\system32\ICMP.DLL
0x77320000 - 0x77337000 F:\WINNT\system32\MPRAPI.DLL
0x773B0000 - 0x773DF000 F:\WINNT\system32\ACTIVEDS.DLL
0x77380000 - 0x773A3000 F:\WINNT\system32\ADSLDPC.DLL
0x77830000 - 0x7783E000 F:\WINNT\system32\RTUTILS.DLL
0x77880000 - 0x7790E000 F:\WINNT\system32\SETUPAPI.DLL
0x7C0F0000 - 0x7C154000 F:\WINNT\system32\USERENV.DLL
0x774E0000 - 0x77514000 F:\WINNT\system32\RASAPI32.DLL
0x774C0000 - 0x774D1000 F:\WINNT\system32\rasman.dll
0x77530000 - 0x77552000 F:\WINNT\system32\TAPI32.dll
0x77360000 - 0x77379000 F:\WINNT\system32\DHCPCSVC.DLL
0x74CD0000 - 0x74CD8000 F:\WINNT\system32\DBmsLPCn.dll
0x0B990000 - 0x0B9E6000 F:\WINNT\system32\MSVCR71.dll
0x6D2E0000 - 0x6D2EE000 F:\j2sdk1.4.1_03\jre\bin\net.dll
0x782C0000 - 0x782CC000 F:\WINNT\System32\rnr20.dll
0x777E0000 - 0x777E8000 F:\WINNT\System32\winrnr.dll
0x777F0000 - 0x777F5000 F:\WINNT\system32\rasadhlp.dll
0x74FD0000 - 0x74FEE000 F:\WINNT\system32\msafd.dll
0x75010000 - 0x75017000 F:\WINNT\System32\wshtcpip.dll
0x77920000 - 0x77943000 F:\WINNT\system32\imagehlp.dll
0x72A00000 - 0x72A2D000 F:\WINNT\system32\DBGHELP.dll
0x690A0000 - 0x690AB000 F:\WINNT\system32\PSAPI.DLL
Local Time = Wed Mar 08 17:24:41 2006
Elapsed Time = 9294
# The exception above was detected in native code outside the VM
# Java VM: Java HotSpot(TM) Client VM (1.4.1_03-b02 mixed mode)
#I'm having the same problem.
One potential solutions is to use a custom SQL server JDBC driver instead of going through the ODBC bridge. This will minimize dependencies and should also improved performance. Hope this helps.
- Joe -
DbSl Trace: CONNECT failed with sql error '12518' at IMPORT ABAP
Hi
We are trying to install ECC 6.0 on windows 2008 SP2 and oracle 10.2.0.4. We get an error at IMPORT ABAP phase.
content of import_monitor.java :
java version "1.4.2_26"
Java(TM) Platform, Standard Edition for Business (build 1.4.2_26-b03)
Java HotSpot(TM) 64-Bit Server VM (build 1.4.2_26-b03, mixed mode)
Import Monitor jobs: running 1, waiting 1, completed 26, failed 0, total 28.
Loading of 'SAPSLOAD' import package: ERROR
Import Monitor jobs: running 0, waiting 1, completed 26, failed 1, total 28.
content of SAPSLOAD.log:
E:\usr\sap\UED\SYS\exe\uc\NTAMD64\R3load.exe: START OF LOG: 20100705173108
E:\usr\sap\UED\SYS\exe\uc\NTAMD64\R3load.exe: sccsid @(#) $Id: //bas/701_REL/src/R3ld/R3load/R3ldmain.c#5 $ SAP
E:\usr\sap\UED\SYS\exe\uc\NTAMD64\R3load.exe: version R7.01/V1.4 [UNICODE]
Compiled Feb 24 2009 23:41:07
E:\usr\sap\UED\SYS\exe\uc\NTAMD64\R3load.exe -i SAPSLOAD.cmd -dbcodepage 4103 -l SAPSLOAD.log -stop_on_error
DbSl Trace: OCI-call 'OCIServerAttach' failed with rc=12518
DbSl Trace: CONNECT failed with sql error '12518'
DbSl Trace: OCI-call 'OCIServerAttach' failed with rc=12518
DbSl Trace: CONNECT failed with sql error '12518'
(DB) ERROR: db_connect rc = 256
DbSl Trace: OCI-call 'OCIServerAttach' failed with rc=12518
DbSl Trace: CONNECT failed with sql error '12518'
DbSl Trace: OCI-call 'OCIServerAttach' failed with rc=12518
DbSl Trace: CONNECT failed with sql error '12518'
(DB) ERROR: DbSlErrorMsg rc = 99
E:\usr\sap\UED\SYS\exe\uc\NTAMD64\R3load.exe: job finished with 1 error(s)
E:\usr\sap\UED\SYS\exe\uc\NTAMD64\R3load.exe: END OF LOG: 20100705173108
content of sqlnet.log file:
Fatal NI connect error 12560, connecting to:
(DESCRIPTION=(ADDRESS=(PROTOCOL=BEQ)(PROGRAM=oracle)(ARGV0=oracleUED)(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))'))(CONNECT_DATA=(SID=UED)(CID=(PROGRAM=E:\oracle\UED\102\bin\sqlplus.exe)(HOST=U34SSAPUED)(USER=uedadm))))
VERSION INFORMATION:
TNS for 64-bit Windows: Version 10.2.0.4.0 - Production
Oracle Bequeath NT Protocol Adapter for 64-bit Windows: Version 10.2.0.4.0 - Production
Time: 05-JUL-2010 16:19:39
Tracing not turned on.
Tns error struct:
ns main err code: 12560
TNS-12560: TNS:protocol adapter error
ns secondary err code: 0
nt main err code: 530
TNS-00530: Protocol adapter error
nt secondary err code: 2
nt OS err code: 0
Fatal NI connect error 12518, connecting to:
(DESCRIPTION=(ADDRESS=(COMMUNITY=SAP.WORLD)(PROTOCOL=TCP)(HOST=u34ssapued)(PORT=1527))(CONNECT_DATA=(SID=UED)(GLOBAL_NAME=UED.WORLD)(CID=(PROGRAM=E:\usr\sap\UED\SYS\exe\uc\NTAMD64\R3load.exe)(HOST=U34SSAPUED)(USER=uedadm))))
VERSION INFORMATION:
TNS for 64-bit Windows: Version 10.2.0.2.0 - Production
Windows NT TCP/IP NT Protocol Adapter for 64-bit Windows: Version 10.2.0.2.0 - Production
Time: 05-JUL-2010 17:28:38
Tracing not turned on.
Tns error struct:
ns main err code: 12564
TNS-12564: TNS:connection refused
ns secondary err code: 0
nt main err code: 0
nt secondary err code: 0
nt OS err code: 0
Best Regards...,Hi,
TNS-12560: TNS:protocol adapter error
Probably your listener or database is down...
If both are running, just stop the installation and reboot the server.
Then again start listener and database and continue SAP installation with "Continue old installation" option..
Also make sure that below environment variables are set properly...
ORACLE_HOME
ORACLE_SID
DBSID
Regards.
Rajesh Narkhede -
Hi my name is vishal
For past 10 days i have been breaking my head on how to make column headers in table appear bold while datas in table appear regular from c# windows forms with sql server2008 using iTextSharp.
Given below is my code in c# on how i export datas from different tables in sql server to PDF report using iTextSharp:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
using iTextSharp.text;
using iTextSharp.text.pdf;
using System.Diagnostics;
using System.IO;
namespace DRRS_CSharp
public partial class frmPDF : Form
public frmPDF()
InitializeComponent();
private void button1_Click(object sender, EventArgs e)
Document doc = new Document(PageSize.A4.Rotate());
var writer = PdfWriter.GetInstance(doc, new FileStream("AssignedDialyzer.pdf", FileMode.Create));
doc.SetMargins(50, 50, 50, 50);
doc.SetPageSize(new iTextSharp.text.Rectangle(iTextSharp.text.PageSize.LETTER.Width, iTextSharp.text.PageSize.LETTER.Height));
doc.Open();
PdfPTable table = new PdfPTable(6);
table.TotalWidth =530f;
table.LockedWidth = true;
PdfPCell cell = new PdfPCell(new Phrase("Institute/Hospital:AIIMS,NEW DELHI", FontFactory.GetFont("Arial", 14, iTextSharp.text.Font.BOLD, BaseColor.BLACK)));
cell.Colspan = 6;
cell.HorizontalAlignment = 0;
table.AddCell(cell);
Paragraph para=new Paragraph("DCS Clinical Record-Assigned Dialyzer",FontFactory.GetFont("Arial",16,iTextSharp.text.Font.BOLD,BaseColor.BLACK));
para.Alignment = Element.ALIGN_CENTER;
iTextSharp.text.Image png = iTextSharp.text.Image.GetInstance("logo5.png");
png.ScaleToFit(105f, 105f);
png.Alignment = Element.ALIGN_RIGHT;
SqlConnection conn = new SqlConnection("Data Source=NPD-4\\SQLEXPRESS;Initial Catalog=DRRS;Integrated Security=true");
SqlCommand cmd = new SqlCommand("Select d.dialyserID,r.errorCode,r.dialysis_date,pn.patient_first_name,pn.patient_last_name,d.manufacturer,d.dialyzer_size,r.start_date,r.end_date,d.packed_volume,r.bundle_vol,r.disinfectant,t.Technician_first_name,t.Technician_last_name from dialyser d,patient_name pn,reprocessor r,Techniciandetail t where pn.patient_id=d.patient_id and r.dialyzer_id=d.dialyserID and t.technician_id=r.technician_id and d.deleted_status=0 and d.closed_status=0 and pn.status=1 and r.errorCode<106 and r.reprocessor_id in (Select max(reprocessor_id) from reprocessor where dialyzer_id=d.dialyserID) order by pn.patient_first_name,pn.patient_last_name", conn);
conn.Open();
SqlDataReader dr;
dr = cmd.ExecuteReader();
table.AddCell("Reprocessing Date");
table.AddCell("Patient Name");
table.AddCell("Dialyzer(Manufacturer,Size)");
table.AddCell("No.of Reuse");
table.AddCell("Verification");
table.AddCell("DialyzerID");
while (dr.Read())
table.AddCell(dr[2].ToString());
table.AddCell(dr[3].ToString() +"_"+ dr[4].ToString());
table.AddCell(dr[5].ToString() + "-" + dr[6].ToString());
table.AddCell("@count".ToString());
table.AddCell(dr[12].ToString() + "-" + dr[13].ToString());
table.AddCell(dr[0].ToString());
dr.Close();
table.SpacingBefore = 15f;
doc.Add(para);
doc.Add(png);
doc.Add(table);
doc.Close();
System.Diagnostics.Process.Start("AssignedDialyzer.pdf");
if (MessageBox.Show("Do you want to save changes to AssignedDialyzer.pdf before closing?", "DRRS", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Exclamation) == DialogResult.Yes)
var writer2 = PdfWriter.GetInstance(doc, new FileStream("AssignedDialyzer.pdf", FileMode.Create));
else if (MessageBox.Show("Do you want to save changes to AssignedDialyzer.pdf before closing?", "DRRS", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Exclamation) == DialogResult.No)
this.Close();
The above code executes well with no problem at all!
As you can see the file to which i create and save and open my pdf report is
AssignedDialyzer.pdf.
The column headers of table in pdf report from c# windows forms using iTextSharp are
"Reprocessing Date","Patient Name","Dialyzer(Manufacturer,Size)","No.of Reuse","Verification" and
"DialyzerID".
However the problem i am facing is after execution and opening of document is my
column headers in table in pdf report from
c# and datas in it all appear in bold.
I have browsed through net regarding to solve this problem but with no success.
What i want is my pdf report from c# should be similar to following format which i was able to accomplish in vb6,adodb with MS access using iTextSharp.:
Given below is report which i have achieved from vb6,adodb with MS access using iTextSharp
I know that there has to be another way to solve my problem.I have browsed many articles in net regarding exporting sql datas to above format but with no success!
Is there is any another way to solve to my problem on exporting sql datas from c# windows forms using iTextSharp to above format given in the picture/image above?!
If so Then Can anyone tell me what modifications must i do in my c# code given above so that my pdf report from c# windows forms using iTextSharp will look similar to image/picture(pdf report) which i was able to accomplish from
vb6,adodb with ms access using iTextSharp?
I have approached Sound Forge.Net for help but with no success.
I hope anyone/someone truly understands what i am trying to ask!
I know i have to do lot of modifications in my c# code to achieve this level of perfection but i dont know how to do it.
Can anyone help me please! Any help/guidance in solving this problem would be greatly appreciated.
I hope i get a reply in terms of solving this problem.
vishalHi,
About iTextSharp component issue , I think this case is off-topic in here.
I suggest you consulting to compenent provider.
http://sourceforge.net/projects/itextsharp/
Regards,
Marvin
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. -
Hi,
I am trying to connect to a SQL server database by giving table name in (SPVC) database as spvc.dbo.tablename.. If i want to access another database (SPVC_D), how can i do it without changing my java code?? Can i be able to add the database name to the connection string and i can remove the hard coding (spvc.dbo.) from my java code?? How shall i be able to do that..
Please let me know.. I am very new with JDBC with SQL server..
Thanks
Praveen PadalaIn the MS SQL Server that I use, the following syntax
spvc.dbo.tablename
Breaks done as follows...
<database>.<user>.<tablename>
However connections are always to a database. Thus when one uses the above syntax it basically runs 'in' the one database and accesses another.
Depending on various attributes of the tables, if and only if, a table called 'tablename' exists in a database called 'spvc_d' then if you connect to 'spvc_d' then you can access 'tablename' just by using 'tablename'.
So if that is what you are doing you will not have a problem. -
Loading "fixed length" text files in UTF8 with SQL*Loader
Hi!
We have a lot of files, we load with SQL*Loader into our database. All Datafiles have fixed length columns, so we use POSITION(pos1, pos2) in the ctl-file. Till now the files were in WE8ISO8859P1 and everything was fine.
Now the source-system generating the files changes to unicode and the files are in UTF8!
The SQL-Loader docu says "The start and end arguments to the POSITION parameter are interpreted in bytes, even if character-length semantics are in use in a datafile....."
As I see this now, there is no way to say "column A starts at "CHARACTER Position pos1" and ends at "Character Position pos2".
I tested with
load data
CHARACTERSET AL32UTF8
LENGTH SEMANTICS CHARACTER
replace ...
in the .ctl file, but when the first character with more than one byte encoding (for example ü ) is in the file, all positions of that record are mixed up.
Is there a way to load these files in UTF8 without changing the file-definition to a column-seperator?
Thanks for any hints - charlyI have not tested this but you should be able to achieve what you want by using LENGTH SEMANTICS CHARACTER and by specifying field lengths (e.g. CHAR(5)) instead of only their positions. You could still use the POSITION(*+n) syntax to skip any separator columns that contain only spaces or tabs.
If the above does not work, an alternative would be to convert all UTF8 files to UTF16 before loading so that they become fixed-width.
-- Sergiusz -
Vb6,adodb with sql server 2008
hi for i am new to vb6 with sql server 2008. I have managed to create database named : Tuscan77 in project folder with all the necessary tables with primary and foreign keys in tables. I have done the same project in vb6 with adodb with ms access and i have
finished it. But now based on my boss orders i have to connect vb6 with adodb with sql server 2008.
Now below is my code in mdi parent form in vb6 which i used to connect to database in access.:
Dim i As Integer
Dim AccessConnect As String
Dim dBOOL As Boolean
Dim dMstr As String
If (Left(App.Path, 1) = "\") Then
dMstr = Dir(App.Path & "tuscanDB.mdb")
Else
dMstr = Dir(App.Path & "\tuscanDB.mdb")
End If
dBOOL = IIf(dMstr = "", False, True)
If (dBOOL) Then
AccessConnect = "Driver={Microsoft Access Driver (*.mdb)};" & _
"Dbq=tuscanDB.mdb;" & _
"DefaultDir=" & App.Path & ";" & _
"Uid=Admin;Pwd=;"
If (adoDatabase.State <> 0) Then
adoDatabase.Close
End If
adoDatabase.ConnectionString = AccessConnect
adoDatabase.Open
Else
Dim mPath As String
CommonDialog1.CancelError = True
CommonDialog1.Flags = cdlOFNHideReadOnly + cdlOFNPathMustExist + cdlOFNFileMustExist
' Set filters
CommonDialog1.Filter = "All Files (*.*)|*.*|RTF (*.rtf)|*.rtf|Text Files (*.txt)|*.txt"
' Display the Save dialog box
CommonDialog1.FileName = ""
CommonDialog1.ShowOpen
dMstr = Dir(CommonDialog1.FileName)
mPath = Left(CommonDialog1.FileName, InStr(mPath, dMstr) - 2)
If (CommonDialog1.CancelError = False) Then
AccessConnect = "Driver={Microsoft Access Driver (*.mdb)};" & _
"Dbq=" & dMstr & ";" & _
"DefaultDir=" & mPath & ";" & _
"Uid=Admin;Pwd=;"
' Connection Object Methods
adoDatabase.ConnectionString = AccessConnect
adoDatabase.Open
End If
End If
where adoDatabase is name of my connection in vb6 with adodb with ms access.
Now how i connect vb6,adodb with sql server 2008?
Now my sql server 2008 details:
Server type: Database Engine
Server name: NPD-4\SQLEXPRESS
Authentication: Windows authentication
User name: NPD-4\TUSCANO
password:(it is left blank or not necessary)
Database name: Tuscan77
How to i connect my Database named Tuscan77 in vb6 and adodb.? Can anyone help me please.Any help or guidance would be greatly appreciated.Hi,
It would be more appropriate to post all your vb6 related queries in the below forums.
http://www.vbforums.com/forumdisplay.php?1-Visual-Basic-6-and-Earlier
http://forums.codeguru.com/forumdisplay.php?4-Visual-Basic-6-0-Programming
SRIRAM -
Connection pooling with SQL Server 2008 and Tomcat 6.0
Hello Everybody,
I'm creating a web application using struts 2.0 , tomcat 6.0 and sql server 2008.
Everything works fine but i'm unable to create connection pooling with sql server 2008.Please help me to solve this issue.
Code for this is as foolows:
in my META-INF/context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context path="/spas" docBase="spas"
debug="5" reloadable="true" crossContext="true">
<Resource
name="jdbc/spas_new"
auth="Container"
type="javax.sql.DataSource"
maxActive="20"
maxIdle="10"
maxWait="-1"
user="spas_user"
password="spas123"
driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://HGL-0053\dbo:1433;databaseName=spas_new;responseBuffering=adaptive;"/>
</Context>
in my web.xml
<resource-ref>
<description>SQL Server Datasource</description>
<res-ref-name>jdbc/spas_new</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
and in my ConnectionThread.java file i've used:
Context ctx = new InitialContext();
if(ctx == null )
throw new Exception("Sorry! No Context Exception");
DataSource ds = (DataSource)ctx.lookup("java:/comp/env/jdbc/spas_new");
System.out.println("ds:"+ds);
conn=ds.getConnection();
Following is the exception:
org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Login failed for user ''.)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1225)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
at login.V_SPAS_ConnectionThread.getConnection(V_SPAS_ConnectionThread.java:87)
at org.apache.jsp.login.v_005fspas_005flogin_005fpage_jsp._jspService(v_005fspas_005flogin_005fpage_jsp.java:95)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
at org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:263)
at org.apache.struts.action.RequestProcessor.internalModuleRelativeForward(RequestProcessor.java:1023)
at org.apache.struts.tiles.TilesRequestProcessor.internalModuleRelativeForward(TilesRequestProcessor.java:345)
at org.apache.struts.action.RequestProcessor.processForward(RequestProcessor.java:572)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:221)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:630)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
at org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:694)
at org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:665)
at org.apache.jsp.index_jsp._jspService(index_jsp.java:54)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:337)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at login.V_SPAS_SecurityCheckFilter.doFilter(V_SPAS_SecurityCheckFilter.java:108)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user ''.Hi Karthikeyan,
This is not the issue at all. I can open the management studio by the same login id and password and also i can make the database jdbc connection from plain java file.
It does not give me any problem by them.
I'm unable to find the actual problem. May be i'm missing something in connection pooling.
Please help.
Regards
Mina -
Integrating J2EE application with SQL Server Reporting Services
Hello everybody,
I want to integrate a J2EE application with SQL Server 2005 Reporting Services. In fact, it is the first time to be involved in developing an interoperability component between .Net web service and Java application. So I have learned for some time how to pass this challenge. Moreover, I found the following virtual lab is an excellent starting point "MSDN Virtual Lab: Implementing SQL Server Reporting Services with a Java Enterprise Edition (EE) Application" [http://msevents.microsoft.com/CUI/WebCastEventDetails.aspx?EventID=1032315323&EventCategory=3&culture=en-US&CountryCode=US]
After going through the lab, I tried to apply the same code in my machine but I have stuck with the following error:
{color:#ff0000}*; nested exception is:*
org.xml.sax.SAXParseException: Premature end of file.
{color}{color:#333333}I use the following tools:
- Netbeans IDE 6.5
- Java SDK: build 1.6.0_01-b06
- Web Server: Apache Tomcat 6.0
- axis Jars (axis.jar, axis-ant.jar, commons-discovery-0.2.jar, commons-logging-1.0.4.jar, jaxrpc.jar, log4j-1.2.8.jar, saaj.jar, wsdl4j-1.5.1.jar)
- Reporting Tool: SQL Server 2005 Reporting Services
I will be so grateful if someone help me. I am waiting your response
this is a snippet of my code :
{color}{color:#333333}
package net;
{color}{color:#333333}
//import java.io.*;
import com.microsoft.schemas.sqlserver._2005._06._30.reporting.reportingservices.*;
import java.io.Serializable;
* @author Abdullah Al Fararjeh
public class NetData implements Serializable
static String[] data;
public NetData(){}
public static String[] getData(String myURL, String searchStr)
try{
CatalogItem[] returnedItems;
String folderName = "/";
returnedItems = FindReports(folderName, myURL, searchStr);
if(returnedItems != null && returnedItems.length > 0){
int count = returnedItems.length;
data = new String[count];
for(int x = 0; x < returnedItems.length; x++){
data[x] = returnedItems[x].getPath();
else
data = new String[] {"No Records Found"};
return (data);
catch(Exception e){
System.out.println(e.getMessage());
String[] s = new String[1];
s[0] = e.getMessage();
return (s);
private static CatalogItem[] FindReports(String folderName, String serverUrl, String searchStr)
try
//CatalogItem find;
ReportingService2005Locator loc = new ReportingService2005Locator();
//retrieve a report from the service locator
ReportingService2005Soap port = loc.getReportingService2005Soap(new java.net.URL(serverUrl));
//set the HTTP Basic Authentication credintials using Stub object methods
javax.xml.rpc.Stub stub = (javax.xml.rpc.Stub) port;
stub._setProperty(javax.xml.rpc.Stub.USERNAME_PROPERTY, "abdullahPC\\abdullah");
stub._setProperty(javax.xml.rpc.Stub.PASSWORD_PROPERTY, "mypassword");
//set up a search condition where the item name contains the specified search string
SearchCondition condition = new SearchCondition();
condition.setCondition(ConditionEnum.Contains);
condition.setName("Name");
if(searchStr != null)
condition.setValue(searchStr);
else
condition.setValue("");
//create an array of SearchCondition which will contain our single search condition
SearchCondition[] conditions;
conditions = new SearchCondition[1];
conditions[0] = condition;
//Call the web service with the appropriate parameters
CatalogItem[] returnedItems;
System.out.println("before port.findItems");
returnedItems = port.findItems(folderName, BooleanOperatorEnum.Or, conditions);
System.out.println("after port.findItems");
return returnedItems;
catch(Exception e){
System.out.println(e.getMessage());
return null;
{color}
Edited by: Abdullah on Feb 8, 2009 3:03 AMI also need to do this. Were you successful in getting this to work? Is it possible for you to share how you accomplished this?
-
Hi Pls help me, How to work with SQL 2000 Database
I have database using SQL 2000, How to connect and work with SQL 2000 Database. thanks
Log on to www.SQLite.org that may help you.
Using the Sqlite3.dll and after customizing your code with SQLite3.h you can read and write on to that DB.
Maybe you are looking for
-
downloaded Appleworks 6.2.9 for Mac Updater-2.sim but when i try to open the file i receive the message "legacy image should be updated". what does this mean and/or entail?
-
Need help with adding the following to a program
Modify the mortgage program to display the mortgage payment amount. Then, list the loan balance and interest paid for each payment over the term of the loan. The list would scroll off the screen, but use loops to display a partial list, hesitate, and
-
Boosting signal for TV playback via a Wii - with airport?
To boost the quality of my kitchen TV when playing catch-up via a Wii (i.e. picture is freezing), should I buy another airport express and join it to the existing network in the rest of the house (I have two at the moment - a base station and one in
-
Installed SL last night. The install went fine until the very end. A dialog popped up that said "To open notifications, you need to install Rosetta." Then the same dialog kept popping up until I had about 20 instances of it. I quit each one. Now the
-
How can i use Tax code created in Tax Declaration Setup in an Invoice? I have created a Tax code in Administration>Setup>Financials>Tax>Tax Declaration Boxes with Formula i.e. TC = V1+V2 where V1 and V2 are existing valid Tax code created in Administ