怎样将EXCEL数据表导入到SQL中

如题所述

在Excel中录入好数据以后,可能会有导入数据库的需求,这个时候就需要利用一些技巧导入。

如何将excel表导入数据库的方法:

1、对于把大量数据存放到数据库中,最好是用图形化数据库管理工具,可是如果没有了工具,只能执行命令的话这会是很费时间的事。那只能对数据进行组合,把数据组成insert语句然后在命令行中批量直行即可。

2、对下面数据进行组合,这用到excel中的一个功能。

在excel中有个fx的输入框,在这里把组好的字符串填上去就好了。

注:字符串1 & A2 &字符串2 & ...

A2可以直接输入,也可以用鼠标点对应的单元格。

3、每个字符串之间用 & 符号进行连接。下面是第一条连接字符串

="insert into tavern values('"&A2&"','"&B2&"','"&C2&"','"&D2&"');"

写好后按回车键Enter就能组合出对应的字符串了。

insert into tavern values('jw_agi','曙光','0','1');

4、组好第一行的字符串后,把鼠标放到单元格右下方,出现加粗的十字,单击按下(别松开),一直往下拉,直到最后一行再放开就行了。

5、这样就把insert语句都整理好了,接下来就是把这些语句批量执行就可以了。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-03-13
方法/步骤
1
  打开SQL Server Management Studio,按图中的路径进入导入数据界面。

2
  导入的时候需要将EXCEL的文件准备好,不能打开。点击下一步。

3
  数据源:选择“Microsoft Excel”除了EXCEL类型的数据,SQL还支持很多其它数据源类型。

4
  选择需要导入的EXCEL文件。点击浏览,找到导入的文件确定。

5
  再次确认文件路径没有问题,点击下一步。

6
  默认为是使用的WINODWS身份验证,改为使用SQL身份验证。输入数据库密码,注意:数据库,这里看看是不是导入的数据库。也可以在这里临时改变,选择其它数据库。

7
  选择导入数据EXCEL表内容范围,若有几个SHEET表,或一个SHEET表中有些数据我们不想导入,则可以编写查询指定的数据进行导入。点击下一步。

8
  选择我们需要导入的SHEET表,比如我在这里将SHEET表名改为price,则导入后生面的SQL数据库表为price$。点击进入下一步。

9
  点击进入下一步。

10
  在这里完整显示了我们的导入的信息,执行内容,再次确认无误后,点击完成,开始执行。

11
  可以看到任务执行的过程和进度。

12
  执行成功:我们可以看看执行结果,已传输1754行,表示从EXCEL表中导入1754条数据,包括列名标题。这样就完成了,执行SQL查询语句:SELECT * FROM price$就可以查看已导入的数据内容。

http://jingyan.baidu.com/article/358570f66145a6ce4724fcba.html本回答被网友采纳
第2个回答  2016-02-22
第一步:登录到 SQL Server Management Studio
第二步:在 “对象资源管理器 ”中右键单击 “管理 ”,在弹出列表中单击 “导入数据 ”
第三步:在 “导入向导 ”对话框中单击 “下一步 ”,进入到 “选择数据源 ”对话框,在 “数据源 ”列表中选择 “Microsoft Excel ”,同时选择相应的 Excel 文档,完成后单击 “下一步 ”(一定要勾选该对话框中的 “首行包含列名称 ”,因此它是将 Excel文档中的列标题为数据库表中的列项标题)
第四步:指定目标数据库服务,依次单击 “下一步 ”。。。。至到 “完成 ”
第五步:重新打到 SQL Server Management Studio,进入到导入的数据库表,可以发现所导入的 Excel文档数据。本回答被提问者采纳
第3个回答  2018-07-30
方法/步骤
1
打开sql server 2005,如图,并且准备好Excel数据表,下面工作马上开始

2
打开sql server 2005之后随意选择一个数据库,右击任务——导入数据。

3
导入数据第一个页面,点击下一步

4
选择数据源为Excel,选择文件路径和Excel版本,点击下一步

5
选择目标源和服务器名称,使用你自己的登录方式,点击下一步,选择第一个选项,复制。。。。

6
选择表和数据目标,如图所示,可以点击预览,然后下一步——立即执行——下一步——完成

7
传输完成,如图所示

8
刷新数据库,查看新出现的数据表,就可以发现新导入的数据了,OK了本回答被网友采纳
第4个回答  2016-09-22

下面是使用Java实现的,将Excel数据表中的数据导入到数据库里里面。


public class ReadExcel {
   /**
    * 对外提供读取excel 的方法
    * */
   public static List<List<Object>> readExcel(File file) throws IOException {
       String fileName = file.getName();
       String extension = fileName.lastIndexOf(".") == -1 ? "" : fileName
               .substring(fileName.lastIndexOf(".") + 1);
       if ("xls".equals(extension)) {
           return read2003Excel(file);
       } else if ("xlsx".equals(extension)) {
           return read2007Excel(file);
       } else {
           throw new IOException("不支持的文件类型");
       }
   }

   /**
    * 读取 office 2003 excel
    *
    * @throws IOException
    * @throws FileNotFoundException
    */
   private static List<List<Object>> read2003Excel(File file)
           throws IOException {
       List<List<Object>> list = new LinkedList<List<Object>>();
       HSSFWorkbook hwb = new HSSFWorkbook(new FileInputStream(file));
       HSSFSheet sheet = hwb.getSheetAt(0);
       Object value = null;
       HSSFRow row = null;
       HSSFCell cell = null;
       int counter = 0;
       for (int i = sheet.getFirstRowNum(); counter < sheet
               .getPhysicalNumberOfRows(); i++) {
           row = sheet.getRow(i);
           if (row == null) {
               continue;
           } else {
               counter++;
           }
           List<Object> linked = new LinkedList<Object>();
           for (int j = row.getFirstCellNum(); j <= row.getLastCellNum(); j++) {
               cell = row.getCell(j);
               if (cell == null) {
                   continue;
               }
               DecimalFormat df = new DecimalFormat("0");// 格式化 number String
                                                           // 字符
               SimpleDateFormat sdf = new SimpleDateFormat(
                       "yyyy-MM-dd HH:mm:ss");// 格式化日期字符串
               DecimalFormat nf = new DecimalFormat("0.00");// 格式化数字
               switch (cell.getCellType()) {
               case XSSFCell.CELL_TYPE_STRING:
               //  System.out.println(i + "行" + j + " 列 is String type");
                   value = cell.getStringCellValue();
                   break;
               case XSSFCell.CELL_TYPE_NUMERIC:
                   /*System.out.println(i + "行" + j
                           + " 列 is Number type ; DateFormt:"
                           + cell.getCellStyle().getDataFormatString());*/
                   if ("@".equals(cell.getCellStyle().getDataFormatString())) {
                       value = df.format(cell.getNumericCellValue());
                   } else if ("General".equals(cell.getCellStyle()
                           .getDataFormatString())) {
                       value = nf.format(cell.getNumericCellValue());
                   } else {
                       value = sdf.format(HSSFDateUtil.getJavaDate(cell
                               .getNumericCellValue()));
                   }
                   break;
               case XSSFCell.CELL_TYPE_BOOLEAN:
               //  System.out.println(i + "行" + j + " 列 is Boolean type");
                   value = cell.getBooleanCellValue();
                   break;
               case XSSFCell.CELL_TYPE_BLANK:
               //  System.out.println(i + "行" + j + " 列 is Blank type");
                   value = "";
                   break;
               default:
               //  System.out.println(i + "行" + j + " 列 is default type");
                   value = cell.toString();
               }
               if (value == null || "".equals(value)) {
                   continue;
               }
               linked.add(value);
           }
           list.add(linked);
       }
       return list;
   }

   /**
    * 读取Office 2007 excel
    * */
   private static List<List<Object>> read2007Excel(File file)
           throws IOException {
       List<List<Object>> list = new LinkedList<List<Object>>();
       // 构造 XSSFWorkbook 对象,strPath 传入文件路径
       XSSFWorkbook xwb = new XSSFWorkbook(new FileInputStream(file));
       // 读取第一章表格内容
       XSSFSheet sheet = xwb.getSheetAt(0);
       Object value = null;
       XSSFRow row = null;
       XSSFCell cell = null;
       int counter = 0;
       for (int i = sheet.getFirstRowNum(); counter < sheet
               .getPhysicalNumberOfRows(); i++) {
           row = sheet.getRow(i);
           if (row == null) {
               continue;
           } else {
               counter++;
           }
           List<Object> linked = new LinkedList<Object>();
           for (int j = row.getFirstCellNum(); j <= row.getLastCellNum(); j++) {
               cell = row.getCell(j);
               if (cell == null) {
                   continue;
               }
               DecimalFormat df = new DecimalFormat("0");// 格式化 number String
                                                           // 字符
               SimpleDateFormat sdf = new SimpleDateFormat(
                       "yyyy-MM-dd HH:mm:ss");// 格式化日期字符串
               DecimalFormat nf = new DecimalFormat("0.00");// 格式化数字
               switch (cell.getCellType()) {
               case XSSFCell.CELL_TYPE_STRING:
                   System.out.println(i + "行" + j + " 列 is String type");
                   value = cell.getStringCellValue();
                   break;
               case XSSFCell.CELL_TYPE_NUMERIC:
               /*  System.out.println(i + "行" + j
                           + " 列 is Number type ; DateFormt:"
                           + cell.getCellStyle().getDataFormatString());*/
                   if ("@".equals(cell.getCellStyle().getDataFormatString())) {
                       value = df.format(cell.getNumericCellValue());
                   } else if ("General".equals(cell.getCellStyle()
                           .getDataFormatString())) {
                       value = nf.format(cell.getNumericCellValue());
                   } else {
                       value = sdf.format(HSSFDateUtil.getJavaDate(cell
                               .getNumericCellValue()));
                   }
                   break;
               case XSSFCell.CELL_TYPE_BOOLEAN:
           //      System.out.println(i + "行" + j + " 列 is Boolean type");
                   value = cell.getBooleanCellValue();
                   break;
               case XSSFCell.CELL_TYPE_BLANK:
               //  System.out.println(i + "行" + j + " 列 is Blank type");
                   value = "";
                   break;
               default:
               //  System.out.println(i + "行" + j + " 列 is default type");
                   value = cell.toString();
               }
               if (value == null || "".equals(value)) {
                   continue;
               }
               linked.add(value);
           }
           list.add(linked);
       }
       return list;
   }

   public static void main(String[] args) {
       try {
           readExcel(new File("D:\\Java\\apache-tomcat-8.0.26\\webapps\\poi\\docs\\testRead.xls"));
           // readExcel(new File("D:\\test.xls"));
           /*
               String docsPath = request.getSession(true).getServletContext()
                       .getRealPath("docs");
               String fileName = "testRead.xls";
               String filePath = docsPath;
               if (EPlatform.Windows.equals(OSinfo.getOSname())) {
                   filePath = filePath + "\\" + fileName;
               } else {
                   filePath = filePath + "/" + fileName;
               }
               filePath = "E:\\testRead.xls";
               List<List<Object>> list = readExcel(new File(filePath));
               request.setAttribute("list", list);
               RequestDispatcher dispatcher = request
                       .getRequestDispatcher("/read.jsp");
               dispatcher.forward(request, response);
            */
       } catch (IOException e) {
           e.printStackTrace();
       }
   }
}

excel表格怎么弄到sql中?
方法一:使用SQL Server管理工具 1. 打开SQL Server Management Studio(SSMS)并连接到目标数据库实例。2. 在“对象资源管理器”窗口中,选择数据库中的目标表。3. 右键单击该表,在上下文菜单中选择“任务”>“导入数据”。4. 在“导入向导”对话框中,选择“Microsoft Excel”作为数据源,点击“下...

sql如何将excel表导入
1. 首先,将Excel表保存为CSV格式,以便更容易导入到SQL数据库中。2. 在SQL数据库中创建一个新的表,该表的结构应与Excel表的列相匹配。3. 使用SQL的LOAD DATA INFILE语句,将CSV文件导入到SQL数据库中的新表中。该语句将读取CSV文件的内容,并将其插入到新表中。4. 确保在LOAD DATA INFILE语句...

怎样将EXCEL数据导入到sql中
1.打开SQL server,选择想要导入的数据库,依次点击:“数据库”右键-任务-导入数据 2.、选择来源的数据为Microsoft Excel,并选择Excel文件所在的位置 3.使用SQL server身份验证登录,选择相对应的数据库(系统会默认你最开始的所选择的数据库),;4.选择数据需要导入的表下,在查看数据类型时选择“忽略”...

如何将excel数据导入Sql
将 Excel 数据导入到 SQL 中可以通过以下一般步骤进行:准备 Excel 数据:确保你的 Excel 数据具有良好的结构,并且每一列都有明确的标题。选择合适的导入工具:根据你使用的数据库管理系统(如 MySQL、SQL Server 等),选择相应的工具或方法来导入数据。常见的方法包括使用数据库管理系统提供的导入功能、...

怎样将EXCEL数据表导入到SQL中
打开SQL Server Management Studio,导入数据。导入的时候需要将EXCEL的文件准备好,不能打开。点击下一步。数据源:选择“Microsoft Excel”除了EXCEL类型的数据,SQL还支持很多其它数据源类型。选择需要导入的EXCEL文件。点击浏览,找到导入的文件确定。再次确认文件路径没有问题,点击下一步。认为是使用的...

excel导入sqlserver 导入数据到sqlserver
1、打开要导入的Excel文件,观察第一列是为字段还是数据 打开SQLServer,在需要导入的数据点击右键 【任务】-【导入数据】 出现导入导出向导。点击下一步 ,进入【选择数据源】页面,注意红框设置。点击下一步 ,进入【选择目标】页面,注意红框设置。点击下一步 ,进入【指定表复制或查询】页面,注意红...

怎样将EXCEL数据表导入到SQL中
步骤:1、打开SQL Server Management Studio,进入导入数据界面。点击下一步。2、数据源:选择“Microsoft Excel”。点击下一步。3、选择需要导入的EXCEL文件。点击浏览,找到导入的文件确定。点击下一步。4、默认为是使用的WINODWS身份验证,改为使用SQL身份验证。输入数据库密码。点击下一步。5、选择导入...

如何将Excel数据导入到SQL中?
1、数据透视视图是处理Excel常用的手段,而应用数据透视视图的第一步就是导入数据,如本例中,表中有889167行数据,那么将这些数据导入Excel表中将是一个很漫长的过程,可以借助SQL语句选择性的导入数据,以此来提交数据加载的速度。2.打开空白Excel,依次点击【数据】选项卡【自Access按钮】。3.在弹出的...

excel导入sql,用sql语句
1.打开SQL Server Management Studio,按图中的路径进入导入数据界面。2.导入的时候需要将EXCEL的文件准备好,不能打开。点击下一步。3.数据源:选择“Microsoft Excel”除了EXCEL类型的数据,SQL还支持很多其它数据源类型。4.选择需要导入的EXCEL文件。点击浏览,找到导入的文件确定。5.再次确认文件路径没...

怎样将EXCEL数据表导入到SQL中
如何将excel表导入数据库的方法:1、对于把大量数据存放到数据库中,最好是用图形化数据库管理工具,可是如果没有了工具,只能执行命令的话这会是很费时间的事。那只能对数据进行组合,把数据组成insert语句然后在命令行中批量直行即可。2、对下面数据进行组合,这用到excel中的一个功能。在excel中有个...

相似回答