excel 파일 내용을 읽고 데이터베이스에 쓰기
11078 단어 Excel
excel 파일의 내용을 읽고 문자열을 연결하여oracle 데이터베이스 임시 테이블에 데이터를 삽입한 다음 임시 테이블의 데이터를 조작합니다
package com.cici.testExcel;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
/**
* @param sourcefile
* @return
*/
public class ReadExcel {
public static void main(String[] args) {
/* System.out.println("Please insert the pageNO :");
int pageNo = SystemIn.readInt();
System.out.println("Please insert the lineMount :");
int lineMount = SystemIn.readInt();
System.out.println("Please insert the listMount :");
int listMount = SystemIn.readInt();*/
//List list = readExcel("E:\\F\\UtilJars\\TABLE NAMES.xlsx","AR_STATISTIC_EMPTYPE", 4, 7, 4);
List list = readExcel("E:\\F\\UtilJars\\TABLE NAMES.xlsx","TEST", 5, 52, 2);
for (int i = 0; i < list.size(); ++i)
System.out.println(list.get(i));
}
/**
* ReadData from Excel txt form
*
* @param sourcefile the source file path
* @param sheetPageNo the sheet no of target content
* @param lineNo the line no of target content
* @param listNo the list no of target content
* @return
*/
public static List<StringBuffer> readExcel(String sourcefile,String tableName,int pageNo,int lineMount,int listMount ) {
XSSFWorkbook xwb = null;
try {
xwb = new XSSFWorkbook(new FileInputStream(sourcefile));
} catch (IOException e) {
e.printStackTrace();
}
List lists = new ArrayList();
for (int i = 0; i < lineMount; ++i) {
XSSFSheet xSheet = xwb.getSheetAt(pageNo);
XSSFRow row = xSheet.getRow(i);
StringBuffer s1 = new StringBuffer("INSERT INTO "+tableName+" VALUES( '");
for (int j = 0; j < listMount; ++j)
{
row.getCell(j).setCellType(1);
String msgj = row.getCell(j).getStringCellValue();
if ((msgj != null) && (j != listMount - 1))
s1 = s1.append(msgj.trim() + "','");
else
s1 = s1.append(msgj.trim() + "');");
}
lists.add(s1);
}
return lists;
}
}
다음 문자열 결합 (insert 문장)
INSERT INTO TEST VALUES( 'CPNY_ID','EMPID');
INSERT INTO TEST VALUES( 'PERSON_ID','CHINESE_PINYIN');
INSERT INTO TEST VALUES( 'EMPID','ENGLISH_NAME');
INSERT INTO TEST VALUES( 'LOCAL_NAME','KOREAN_NAME');
INSERT INTO TEST VALUES( 'CHINESE_PINYIN','POSITION_NO');
INSERT INTO TEST VALUES( 'ENGLISH_NAME','DUTY_NO');
INSERT INTO TEST VALUES( 'KOREAN_NAME','POST_NO');
INSERT INTO TEST VALUES( 'STEP_CHANGE_DATE','POST_GRADE_NO');
INSERT INTO TEST VALUES( 'EMP_OFFICE','PAY_STEP');
INSERT INTO TEST VALUES( 'OLD_PERSON_ID','STATUS_CODE');
데이터베이스 로그인
두 필드의 차집합 1 비교(필드 A에 데이터가 있지만 필드 B에 없는 데이터)
SELECT A FROM TEST MINUSSELECT B FROM TEST;
결과 표시
1 AGENT_POST_GRADE_ID2 DUTY_ID3 OLD_POST_GRADE_ID4 POSITION_ID5 POST_GRADE_ID6 POST_ID7
두 필드의 차집합 2 비교(필드 B에 데이터가 있지만 필드 A에 없는 데이터)
SELECT B FROM TEST MINUSSELECT A FROM TEST ;
결과 표시
1 ACTIVITY2 AGENT_POST_GRADE_NO3 CREATED_BY4 CREATE_DATE5 DUTY_NO6 JOIN_BLOC_DATE7 OLD_POST_GRADE_NO8 ORDERNO9 POSITION_NO10 POST_GRADE_NO11 POST_NO12 SETTLEMENT_DATE13 STAT_NO14 UPDATED_BY15 UPDATE_DATE
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Excel Grep toolExcel Grep tool ■히나가타 ■ 시트 구성 ExcelGrep.cls...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.