sql插入excel
1 connectstring关连excel文件,然后执行 select * into [aa.mdb.]表 from [sheet1$]
2 用两个adoquery,分别连接数据库,和Excel文件,然后用 while not eof do一条一条记录移动另一个数据表里
❷ 用sql语句向excel插入数据
没装office2007的就不可以用ace驱动,换成JET.OLEDB.4.0
没表头吗?HDR=No;
另外插入时候关闭excel
❸ sql导入Excel
一个最直接的办法就是找我,把excel数据变成insert脚本,直接在sqlserver数据库引擎里面执行。
❹ 如何用sql语句从excel导入sql中
我做过这个功能,分3步。
第一步,校验Excel的数据是否符合条件,比如不能为空,数据类型不能冲突等等。
第二步,在数据库里创建临时表,表结构跟excel一模一样。把数据从excel照搬到临时表中。
第三步,根据过滤条件,把符合的数据从临时表中insert到对象表中。
//新文件名称
string newfile = name + lastName; //假定excel文件名 最终数据.excel
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("../../File/") + newfile + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'";
insertTempTable(strConn); //存入临时表 包含第一步和第二步
insertAllTable(); //第三步
/// <summary>
/// 把数据从xls导入临时创建表
/// </summary>
/// <param name="conn"></param>
public void insertTempTable(string conn)
{
string strConn = conn;
//这里假设excel字段名称为 字段(序号,零件编号,零件名称,数量,价格)
//excel表名称为Matrixkey
string query = "SELECT [序号],[零件编号],[零件名称],[数量],[价格] FROM [Matrixkey$] Where [零件编号] <> '' ";
OleDbCommand oleCommand = new OleDbCommand(query, new OleDbConnection(strConn));
OleDbDataAdapter oleAdapter = new OleDbDataAdapter(oleCommand);
DataSet PartsDataSet = new DataSet();
oleAdapter.Fill(PartsDataSet, "[Matrixkey$]");
DBAccess dba = DBAccessFactory.CreateAccess(); //这是我的数据库操作类
//存储过程 createtmptable 用来创建临时表 结构跟excel一模一样
dba.ExecuteProcere("createtmptable");
foreach (DataRow row in PartsDataSet.Tables[0].Rows)
{
if (row["价格"].ToString() == "")
{row["价格"] = "0.00";}
dba.ExecuteInsertSQL(row, "tmpparts"); //执行第2步 创建的临时表叫tmpparts
}
}
/// <summary>
/// 执行最终的插入存储过程
/// </summary>
public void insertAllTable()
{
DBAccess dba = DBAccessFactory.CreateAccess();
//存储过程BuildRelation用来实现第3步 这个就简单了 我写个例子你看看
dba.ExecuteProcere("BuildRelation");
}
存储过程:BuildRelation
insert into 对象表 --假设对象表字段为 ID No Code Name Quantity Price 其中ID自增
select * from tmpparts
where 零件编号 not in (select Code from tmpparts)
学会了哇?
❺ 使用sql 语句,将数据插入到excel中
出发点是好的,但方法有问题.SQL数据可以导出至EXCEL,SQL数据的字段也可以重新命名.
通过ODBC,SQL数据就直接导出至EXCEL,而且还可实时刷新.
❻ sql无法导入excel
ADDITIONAL INFORMATION:
The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine. (System.Data)
SQL Server 导入和导出向导
sql server 2017操作无法完成。未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序。 (System.Data)
Import Data如果导入excel失败,可能是没有安装相关的office组件。
有一些可以直接搜索相关的组件,安装就ok,但是有的电脑就不行,或者暂时找不到相关的组件。我们可以变通来实现。主要就是导出为csv,或者用access中转来实现导入数据。
1.可以尝试把excel数据导出为csv
然后使用Import Flate File导入csv
导入成功后,会自动导入一张新表中。这样可以直接使用sql进行操作了。
如果遇到csv不能正常识别数据。可以尝试在最前边增加id列。
2.打开access,新建一个空白的数据库
导入excel。
然后在access中导出到数据库,使用odbc
3.打开access,新建一个空白的数据库
导入excel。
然后在sql server中导入access.
注意:使用的是sql server 2017,office 2016.电脑os是win10,如果版本差异,可能需要调整。但是这3个思路,可以借鉴.
❼ excel如何导入sql表
在SQL SERVER中右击数据库,选择菜单“任务”--“导入数据”即可。
在导入过程中,勾选将第一行做为列标题就可以,你还可以定义每一字段的字段类型。
❽ sql server怎么导入excel
1
先给大家说一下本次经验的流程,我先从我的数据库中找一个表,然后把表信息导出到Excel中,然后为了方便期间,我会将Excel表中的数据再导入到SQL数据库中,当然会以一个新创建表的形式出现。Office的版本2003以后的都可以,过程大同小异。
2
先打开数据库,至于数据库相关的操作,我想不再多说了,因为这些经验都是给差不多入门的朋友看的,如果你还不知道sql是个什么东西,还不知道基本的操作,那对不住了亲,这个经验真不适合你哦。
3
新建一个Excel,直接从Excel的数据菜单中导入SQL数据库表数据。选择“数据”菜单:
4
然后选择“导入外部数据”--“导入数据”:
5
选择“新的SQL Server 连接.odc”,双击:
6
接下来,输入服务器名称,然后登录凭据,如果服务器是本地的话,可以直接用“.”或者localhost,点下一步:
7
选择要连接的数据库,同时选择要导出的表,然后点击下一步:
8
然后定义一个文件名称,点击“完成”:
9
这时候轮到Excel的部分的,系统需要你指定一个存放数据的位置。
10
确定存在位置后,点击“确定”:
11
ok,我们打开对应的数据库表来比对一下,数据导出的是否是正确的:
SQL导入Excel表数据
1
选择要导入的数据库---任务---导入数据:
2
选择excel数据源--浏览文件。注意如果excel中首行数据为字段,应勾选“首行包含列名称”。
3
按照提示单击下一步后选择服务器填写验证信息和目标数据库:
4
点击下一步,确定导入的类型:
5
选择数据库--选择源表和原视图,如果不选则目标,则会在数据库中自动生成同名的表,并把数据导入进去。
6
然后默认下一步,无须保存SSIS包,直接默认立即运行:
7
最后点击完成:
❾ 怎么写sql语句将Excel的数据插入到SQL Server数据库
方法和详细的操作步骤如下:
1、第一步,准备Excel表,并希望将其导入SQL
Server 2012中的QearlTest数据库,见下图,转到下面的步骤。
❿ sqlserver如何导入excel数据
1、选择要导入的数据库---任务---导入数据。