Oracle 和 Mysql 数据库表字段对比讲解
- Oracle select * from user_tab_columns
复制代码
Oracle可以通过User_tab_columns查询相关表结构信息
- Mysql select * from information_schema.columns
复制代码
Oracle可以通过information_schema.columns查询相关表结构信息
如果有多张表可将他们带条件查询where table_name in('表名1','表名2')查询最终结果用Excl保存起来
类似这张
接着java用POI写文件流
- public Map getExclMap(String templateFilePath){
- 文件templateFile =新文件(templateFilePath);
- HSSFWorkbook workBookOut = null;
- Map <string,arraylist> tabMap1 = new HashMap <>();
- 尝试{
- FileInputStream inputStream = new FileInputStream(templateFile);
- workBookOut = new HSSFWorkbook(inputStream);
- HSSFSheet sheetOut = workBookOut.getSheetAt(0);
- int rows = sheetOut.getLastRowNum(); //得到Excl最后一行下标
- //第一次循环将表名作为关键值
- for(int i = 0; i <= rows; i ++){
- 字符串tabNameStr = sheetOut.getRow(i).getCell(1).getStringCellValue();
- tabNameStr = tabNameStr.toUpperCase(); //防止大小写不一致
- tabMap1.put(tabNameStr,new ArrayList());
- }
- //第二次循环将字段放值
- for(int i = 0; i <= rows; i ++){
- 字符串tabNameStr = sheetOut.getRow(i).getCell(1).getStringCellValue();
- tabNameStr = tabNameStr.toUpperCase();
- </string,arraylist>
复制代码
- String clumStr = sheetOut.getRow(i).getCell(2).getStringCellValue();
- clumStr = clumStr.toUpperCase();
- tabMap1.get(tabNameStr).add(clumStr);
- }
- } catch(Exception e){
- e.printStackTrace();
- }
- System.out.println(“templateFilePath = [”+ count +“]”);
- 返回tabMap1;
- }
复制代码
比较方法
- public static void main(String [] args){
- UtilExcl utilExcl =新的UtilExcl();
-
- 映射an50 = utilExcl.getExclMap(“D:\\ Users \\ User \\ Desktop \\ marClums \\ AN50.xls”); // 65
- map ship79 = utilExcl.getExclMap(“D:\\ Users \\ User \\ Desktop \\ marClums \\ ship79.xls”); // 65
- String [] tabs = utilExcl.getTabs();
- int coun = 0;
- //测试ship79有50没有的表或字段
- //循环79键
- for(对象键:ship79.keySet()){
- //判断是否包含键也就得到了不包含的表名
- 如果(an50.containsKey(键)){
- ArrayList <string> key50List =(ArrayList <string>)an50.get(key);
- ArrayList <string> key79List =(ArrayList <string>)ship79.get(key);
- //同第一个循环自行理解
- for(int i = 0; i<pre></pre>
- <p>最后希望大家喜欢如果是同类型数据库建议通过上面的表大写写sql个人sql写的不是很好</p>
- <p>也就不给上面sql方案了</p>
- </string></string></string></string>
复制代码