java select 语句怎么写_JAVA中的SELECT语句

public void search() throws Exception{

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

String url = "jdbc:odbc:******";

String user = "*****";

String pass = "*****";

Connection con = DriverManager.getConnection(url,user,pass);

Statement state = con.createStatement();

ResultSet rs = state.executeQuery("");

ResultSetMetaData rsMetadata = rs.getMetaData();

int columns = rsMetadata.getColumnCount();

DefaultTableModel dtm = new DefaultTableModel();

Vector column_name = new Vector();

Vector data_rows = new Vector();

for (int i=1; i

column_name.addElement(rsMetadata.getColumnName(i));

}

dtm.setColumnIdentifiers(column_name);

while(rs.next()){

data_rows = new Vector();

for (int j=1; j

data_rows.addElement(rs.getString(j));

}

dtm.addRow(data_rows);

}

tblPatient.setModel(dtm);

}

在我的ResultSet rs = state.executeQuery()我使用这个sql

"SELECT "

+ "pIDNo AS 'Patient ID',"

+ "pLName AS 'Last Name',"

+ "pFName AS 'First Name',"

+ "pMI AS 'M.I.',"

+ "pSex AS 'Sex',"

+ "pStatus AS 'Status',"

+ "pTelNo AS 'Contact No.',"

+ "pDocID AS 'Doctor ID',"

+ "pAddr AS 'St. No.',"

+ "pStreet AS 'St. Name',"

+ "pBarangay AS 'Barangay',"

+ "pCity AS 'City',"

+ " pProvince AS 'Province',"

+ " pLNameKIN AS 'Last Name',"

+ "pFNameKIN AS 'First Name',"

+ "pMIKIN AS 'M.I.',"

+ "pRelationKIN AS 'Relation',"

+ "pTotalDue AS 'Total Due'"

+ " FROM dbo.Patients");

首先我运行这一行(pTotalDue没有来到jTable.)

在我第二次尝试显示它的时候我这样做:

"SELECT pTotalDue AS 'Total Due' FROM dbo.Patients"

现在我试过这个,我觉得我的代码真的错了. BTW此列具有货币数据类型

为什么没有显示给我的JTable?任何人都可以告诉我我的代码是什么问题?

(给我的答案中有问题)

公共类QueryOnWorkerThread扩展了SwingWorker {

私人最终JTable tableToUpdate;

public QueryOnWorkerThread( JTable aTableToUpdate ) {

tableToUpdate = aTableToUpdate;

}

@Override

protected TableModel doInBackground() throws Exception {

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

String url = "jdbc:odbc:OJT_dsn";

String user = "sa";

String pass = "";

Connection con = DriverManager.getConnection( url,pass );

Statement state = con.createStatement();

ResultSet rs = state.executeQuery("");

ResultSetMetaData rsMetadata = rs.getMetaData();

int columns = rsMetadata.getColumnCount();

DefaultTableModel dtm = new DefaultTableModel();

Vector column_name = new Vector();

Vector data_rows;

//note the <= check iso the < check (as the count starts at index 1)

for (int i=1; i<=columns;i++){

column_name.addElement(rsMetadata.getColumnName(i));

}

dtm.setColumnIdentifiers(column_name);

while(rs.next()){

data_rows = new Vector();

//note the <= check iso the < check (as the count starts at index 1)

for (int j=1; j<=columns; j++){

data_rows.addElement(rs.getString(j));

}

dtm.addRow(data_rows);

}

return dtm;

}

`@Override <<<<<<<<<<<<<<<<<<<<< I have a problem here it says : done() in javaapplication25.SearchPatient.QueryWorkerThread cannot override done() in javax.swing.SwingWorker overriden method does not throw java.lang.Exception,what does it mean sir?`

protected void done() throws Exception{

//this method runs on the EDT,so it is safe to update our table here

try {

tableToUpdate.setModel( get() );

} catch ( InterruptedException e ) {

throw new RuntimeException( e );

} catch ( ExecutionException e ) {

throw new RuntimeException( e );

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值