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

怎样将EXCEL数据表导入到SQL中,第1张

第一步:登录到

sql

server

management

studio

第二步:在

“对象资源管理器

”中右键单击

“管理

”,在d出列表中单击

“导入数据

第三步:在

“导入向导

”对话框中单击

下一步

”,进入到

“选择数据源

”对话框,在

“数据源

”列表中选择

“microsoft

excel

”,同时选择相应的

excel

文档,完成后单击

“下一步

”(一定要勾选该对话框中的

“首行包含列名称

”,因此它是将

excel文档中的列标题为数据库表中的列项标题)

第四步:指定目标数据库服务,依次单击

“下一步

”。。。。至到

“完成

第五步:重新打到

sql

server

management

studio,进入到导入的数据库表,可以发现所导入的

excel文档数据。

在查询分析器里,直接写 SQL语句:

如果是导入数据到现有表,则采用形式

INSERT INTO 表 SELECT FROM OPENROWSET('MICROSOFTJETOLEDB40' ,'Excel 50;HDR=YES;DATABASE=c:\testxls',sheet1$)

如果是导入数据并新增表,则采用形式

SELECT INTO 表 FROM OPENROWSET('MICROSOFTJETOLEDB40' ,'Excel 50;HDR=YES;DATABASE=c:\testxls',sheet1$)

SQL2005中直接可以实现导入功能 SQL2008不知道可不可以。 *** 作过程如下:

第一步:登录到 SQL Server Management Studio

第二步:在 “对象资源管理器 ”中右键单击 “管理 ”,在d出列表中单击 “导入数据 ”

第三步:在 “导入向导 ”对话框中单击 “下一步 ”,进入到 “选择数据源 ”对话框,在 “数据源 ”列表中选择 “Microsoft Excel ”,同时选择相应的 Excel 文档,完成后单击 “下一步 ”(一定要勾选该对话框中的 “首行包含列名称 ”,因此它是将 Excel文档中的列标题为数据库表中的列项标题)

第四步:指定目标数据库服务,依次单击 “下一步 ”。。。。至到 “完成 ”

第五步:重新打到 SQL Server Management Studio,进入到导入的数据库表,可以发现所导入的 Excel文档数据。

用SqlCel查询Sql Server数据库。SqlCel可以同时支持Mysql,sql server,access,oracal。sqlcel的sql语句可以引用excel单元格的值作为变量。比如楼主要将123替换成Sheet1工作表的A1单元格的内容,那么SQL语句可以这么写

select from AAA WHERE A = [Sheet1!A1]

这样执行就可以引用A1单元格的值了

呵呵,以前就帮人家解决过这个,请看下面的代码,有注释的!

Private Sub CommandButton5_Click()

Dim Conn As New ADODBConnection '定义ADODB连接对象

Dim ConnStr As String '定义连接字符串

Dim xiao As String

xiao = ComDataText

'对于SQL 2008,如果以IP方式访问服务器,必须要启动SQL Server Browser服务,如果是Express版本,要以“IP(计算机名)\实例名”方式访问

ConnStr = txtDataText

Dim Records As New ADODBRecordset '定义ADODB对象的记录集

Dim Sheet As Worksheet '定义工作表

Set Sheet = ThisWorkbookWorksheets("Sheet2") '给变量Sheet赋值,注意:是工作簿中索引为1的那个表(通常一个新的工作簿Sheet1的索引为1)

'SheetName = "Data" '把Sheet名称改为Data

SheetCellsClear '清空表中原有的数据

'连接状态是打开就不在进行Open *** 作

ConnOpen ConnStr

Dim SQLStr As String '要执行的SQL语句

SQLStr = "select from Shift_Code where Club='" + xiao + "'" '可以执行更复杂的SQL语句

RecordsOpen SQLStr, Conn, adOpenStatic, adLockBatchOptimistic '读取SQL查询结果到Records记录集

'RecordsOpen

Dim i, j, TotalRows, TotalColumns As Integer

j = 0

TotalRows = RecordsRecordCount

TotalColumns = RecordsFieldsCount

'下面的循环把表头(即列名)写到Excel表的第一行

For i = 0 To TotalColumns - 1

Sheet2Cells(1, i + 1) = RecordsFields(i)Name

Next

'下面的循环把查询结果写到Excel表中

Do While Not RecordsEOF

For i = 0 To TotalColumns - 1

Sheet2Cells(j + 2, i + 1) = RecordsFields(i)Value

Next

RecordsMoveNext

j = j + 1

Loop

RecordsClose '关闭记录集

ConnClose '关闭连接

Set Records = Nothing '清空对象

Set Conn = Nothing '清空对象

End Sub

有什么不懂的话Hi我!

SQL SERVER 和EXCEL的数据导入导出

1、在SQL SERVER里查询Excel数据:

======================================================

SELECT

FROM OpenDataSource( 'MicrosoftJetOLEDB40',

'Data Source="c:\book1xls";User ID=Admin;Password=;Extended properties=Excel 50')[Sheet1$]

下面是个查询的示例,它通过用于 Jet 的 OLE DB 提供程序查询 Excel 电子表格。

SELECT

FROM OpenDataSource ( 'MicrosoftJetOLEDB40',

'Data Source="c:\Finance\accountxls";User ID=Admin;Password=;Extended properties=Excel 50')xactions

2、将Excel的数据导入SQL server :

======================================================

SELECT into newtable

FROM OpenDataSource( 'MicrosoftJetOLEDB40',

'Data Source="c:\book1xls";User ID=Admin;Password=;Extended properties=Excel 50')[Sheet1$]

实例:

SELECT into newtable

FROM OpenDataSource( 'MicrosoftJetOLEDB40',

'Data Source="c:\Finance\accountxls";User ID=Admin;Password=;Extended properties=Excel 50')xactions

3、将SQL SERVER中查询到的数据导成一个Excel文件

======================================================

T-SQL代码:

EXEC masterxp_cmdshell 'bcp 库名dbo表名out c:\Tempxls -c -q -S"servername" -U"sa" -P""'

参数:S 是SQL服务器名;U是用户;P是密码

说明:还可以导出文本文件等多种格式

实例:EXEC masterxp_cmdshell 'bcp saletesttmpdboCusAccount out c:\temp1xls -c -q -S"pmserver" -U"sa" -P"sa"'

EXEC masterxp_cmdshell 'bcp "SELECT au_fname, au_lname FROM pubsauthors ORDER BY au_lname" queryout C:\ authorsxls -c -Sservername -Usa -Ppassword'

在VB6中应用ADO导出EXCEL文件代码:

Dim cn As New ADODBConnection

cnopen "Driver={SQL Server};Server=WEBSVR;DataBase=WebMis;UID=sa;WD=123;"

cnexecute "masterxp_cmdshell 'bcp "SELECT col1, col2 FROM 库名dbo表名" queryout E:\DTxls -c -Sservername -Usa -Ppassword'"

4、在SQL SERVER里往Excel插入数据:

======================================================

insert into OpenDataSource( 'MicrosoftJetOLEDB40',

'Data Source="c:\Tempxls";User ID=Admin;Password=;Extended properties=Excel 50')table1 (A1,A2,A3) values (1,2,3)

T-SQL代码:

INSERT INTO

OPENDATASOURCE('MicrosoftJETOLEDB40',

'Extended Properties=Excel 80;Data source=C:\training\inventurxls')[Filiale1$]

(bestand, produkt) VALUES (20, 'Test')

总结:利用以上语句,我们可以方便地将SQL SERVER、ACCESS和EXCEL电子表格软件中的数据进行转换,为我们提供了极大方便!

工具/原料

SQL Server Management Studio丶已建立sql数据库

方法/步骤

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$就可以查看已导入的数据内容。

以上就是关于怎样将EXCEL数据表导入到SQL中全部的内容,包括:怎样将EXCEL数据表导入到SQL中、请教如何将excle上面的数据批量导入至sql2008数据库、在EXCEL中查询SQL数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10066004.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存