首页数据库excel导入数据库 将excel表导入数据库的方法步骤

excel导入数据库 将excel表导入数据库的方法步骤

编程之家2023-10-22115次浏览

大家好,今天来为大家分享excel导入数据库的一些知识点,和将excel表导入数据库的方法步骤的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!

excel导入数据库 将excel表导入数据库的方法步骤

将excel表导入数据库的方法步骤

在 Excel中录入好数据以后,可能会有导入数据库的需求,这个时候就需要利用一些技巧导入。接下来是我为大家带来的如何将excel表导入数据库的方法,希望对你有用。

将excel表导入数据库的方法

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

Excel导入数据库步骤2:我们对下面数据进行组合,这用到excel中的一个功能。

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

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

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

excel导入数据库 将excel表导入数据库的方法步骤

Excel导入数据库步骤3:每个字符串之间用&符号进行连接。下面是第一条连接字符串

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

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

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

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

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

excel导入数据库 将excel表导入数据库的方法步骤
>>>下一页更多精彩“将EXCEL表格数据导入进CAD中的方法”

如何将excel中的数据导入数据库

操作步骤如下:

准备数据:在excel中构造出需要的数据

2.将excel中的数据另存为文本文件(有制表符分隔的)

3.将新保存到文本文件中的数据导入到pl*sql中

在pl*sql中选择tools-->text importer,在出现的窗口中选择"Data from Textfile",然后再选择"Open data file",

在弹出的文件选择框中选中保存有数据的文本文件,此时将会看到data from textfile中显示将要导入的数据

4.在configuration中进行如下配置

注:如果不将"Name in header"勾选上会导致字段名也当做记录被导入到数据库中,从而导致数据错误

5.点击data to oracle,选择将要导入数据的表,并在fields中将文本中的字段与表中的字段进行关联

6.点击import按钮进行导入

7.查看导入的数据

如何把Excel中的数据导入到数据库

NPOI.HSSF.UserModel;

using NPOI.SS.Formula.Eval;

using NPOI.SS.UserModel;

using NPOI.XSSF.UserModel;

using System;

using System.Data;

using System.IO;

namespace ZZAS.HNYZ.GPSInstallManage.Common

{

public class ExcelHelper: IDisposable

{

private string fileName= null;//文件名

private IWorkbook workbook= null;

private FileStream fs= null;

private bool disposed;

public ExcelHelper(string fileName)

{

this.fileName= fileName;

disposed= false;

}

///<summary>

///将DataTable数据导入到excel中

///</summary>

///<param name="data">要导入的数据</param>

///<param name="isColumnWritten">DataTable的列名是否要导入</param>

///<param name="sheetName">要导入的excel的sheet的名称</param>

///<returns>导入数据行数(包含列名那一行)</returns>

public int DataTableToExcel(DataTable data, string sheetName, bool isColumnWritten)

{

int i= 0;

int j= 0;

int count= 0;

ISheet sheet= null;

fs= new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.ReadWrite);

if(fileName.IndexOf(".xlsx")> 0)// 2007版本

workbook= new XSSFWorkbook();

else if(fileName.IndexOf(".xls")> 0)// 2003版本

workbook= new HSSFWorkbook();

try

{

if(workbook!= null)

{

sheet= workbook.CreateSheet(sheetName);

}

else

{

return-1;

}

if(isColumnWritten== true)//写入DataTable的列名

{

IRow row= sheet.CreateRow(0);

for(j= 0; j< data.Columns.Count;++j)

{

row.CreateCell(j).SetCellValue(data.Columns[j].ColumnName);

}

count= 1;

}

else

{

count= 0;

}

for(i= 0; i< data.Rows.Count;++i)

{

IRow row= sheet.CreateRow(count);

for(j= 0; j< data.Columns.Count;++j)

{

row.CreateCell(j).SetCellValue(data.Rows[i][j].ToString());

}

++count;

}

workbook.Write(fs);//写入到excel

return count;

}

catch(Exception ex)

{

Console.WriteLine("Exception:"+ ex.Message);

return-1;

}

}

///<summary>

///将excel中的数据导入到DataTable中

///</summary>

///<param name="sheetName">excel工作薄sheet的名称</param>

///<param name="isFirstRowColumn">第一行是否是DataTable的列名</param>

///<returns>返回的DataTable</returns>

public DataTable ExcelToDataTable(string sheetName, bool isFirstRowColumn)

{

ISheet sheet= null;

DataTable data= new DataTable();

int startRow= 0;

fs= new FileStream(fileName, FileMode.Open, FileAccess.Read);

if(fileName.IndexOf(".xlsx")> 0)// 2007版本

workbook= new XSSFWorkbook(fs);

else if(fileName.IndexOf(".xls")> 0)// 2003版本

workbook= new HSSFWorkbook(fs);

if(sheetName!= null)

{

sheet= workbook.GetSheet(sheetName);

if(sheet== null)//如果没有找到指定的sheetName对应的sheet,则尝试获取第一个sheet

{

sheet= workbook.GetSheetAt(0);

}

}

else

{

sheet= workbook.GetSheetAt(0);

}

if(sheet!= null)

{

IRow firstRow= sheet.GetRow(0);

int cellCount= firstRow.LastCellNum;//一行最后一个cell的编号即总的列数

if(isFirstRowColumn)

{

for(int i= firstRow.FirstCellNum; i< cellCount;++i)

{

ICell cell= firstRow.GetCell(i);

if(cell!= null)

{

string cellValue= cell.StringCellValue;

if(cellValue!= null)

{

DataColumn column= new DataColumn(cellValue, typeof(string));

data.Columns.Add(column);

}

}

}

startRow= sheet.FirstRowNum+ 1;

}

else

{

startRow= sheet.FirstRowNum;

}

//最后一行的编号

int rowCount= sheet.LastRowNum;

for(int i= startRow; i< rowCount;++i)

{

IRow row= sheet.GetRow(i);

if(row== null) continue;//没有数据的行默认是null

DataRow dataRow= data.NewRow();

for(int j= row.FirstCellNum; j< cellCount;++j)

{

if(row.GetCell(j)== null)

{

continue;

}

switch(row.GetCell(j).CellType)

{

case CellType.Boolean:

dataRow[j]= row.GetCell(j).BooleanCellValue;

break;

case CellType.Error:

dataRow[j]= ErrorEval.GetText(row.GetCell(j).ErrorCellValue);

break;

case CellType.Formula:

switch(row.GetCell(j).CachedFormulaResultType)

{

case CellType.Boolean:

dataRow[j]= row.GetCell(j).BooleanCellValue;

break;

case CellType.Error:

dataRow[j]= ErrorEval.GetText(row.GetCell(j).ErrorCellValue);

break;

case CellType.Numeric:

if(DateUtil.IsCellDateFormatted(row.GetCell(j)))

{

dataRow[j]= row.GetCell(j).DateCellValue.ToString("yyyy-MM-dd");

}

else

{

dataRow[j]= row.GetCell(j).NumericCellValue;

}

break;

case CellType.String:

string str= row.GetCell(j).StringCellValue;

if(!string.IsNullOrEmpty(str))

{

dataRow[j]= str.ToString();

}

else

{

dataRow[j]= null;

}

break;

case CellType.Unknown:

case CellType.Blank:

default:

dataRow[j]= string.Empty;

break;

}

break;

case CellType.Numeric:

if(DateUtil.IsCellDateFormatted(row.GetCell(j)))

{

dataRow[j]= row.GetCell(j).DateCellValue.ToString("yyyy-MM-dd");

}

else

{

dataRow[j]= row.GetCell(j).NumericCellValue;

}

break;

case CellType.String:

string strValue= row.GetCell(j).StringCellValue;

if(!string.IsNullOrEmpty(strValue))

{

dataRow[j]= strValue.ToString();

}

else

{

dataRow[j]= null;

}

break;

case CellType.Unknown:

case CellType.Blank:

default:

dataRow[j]= string.Empty;

break;

}

}

data.Rows.Add(dataRow);

}

}

return data;

}

public void Dispose()

{

Dispose(true);

GC.SuppressFinalize(this);

}

protected virtual void Dispose(bool disposing)

{

if(!this.disposed)

{

if(disposing)

{

if(fs!= null)

fs.Close();

}

fs= null;

disposed= true;

}

}

}

}

如何把Excel中的数据导入到数据库

标签:

如何把excel表格数据导入到数据库

1、打开SQL Server 2014 Management Studio数据库,并且登录进去;

2、新建一个数据库,将excel导入,在新建的数据名字上,鼠标右键,选择任务选项,之后导入数据,就会看到导入excel文件的窗口;

3、下拉框选中Microsoft Excel,浏览添加你需要导入到数据库的excel文件,然后点击下一步;

4、下拉框选中sql开头的,验证方式自己选择,一般是默认的验证方式,然后下面的数据库;

5、出现的这个页面不用动任何操作,直接继续点击下一步即可;

6、现在表示导入成功,上面有各类详细的数据,可以选择关闭,这个时候记得刷新数据库的表,否则看不到新导入的数据。

好了,关于excel导入数据库和将excel表导入数据库的方法步骤的问题到这里结束啦,希望可以解决您的问题哈!

ssh连接不上服务器?为什么我的linux服务器通过ssh连接不上服务器回收(服务器回收价格怎么算)