在VB中,把excel导入到SQL数据库中,请高手帮忙~

PrivateSubCommand11_Click()CommonDialog1.FileName=""CommonDialog1.Flags=4096CommonDia... Private Sub Command11_Click()
CommonDialog1.FileName = ""
CommonDialog1.Flags = 4096
CommonDialog1.Filter = "(*.xls)"
CommonDialog1.FilterIndex = 3
CommonDialog1.DialogTitle = "Open File(*.xls)"
CommonDialog1.Action = 1
If CommonDialog1.FileName = "" Then
MsgBox "no file selectd", 37, "checking"
Else
Dim Cn As ADODB.Connection
Dim strSQL As String
Dim lngRecsAff As Long

Set Cn = New ADODB.Connection

Cn.Open "Provider=MSDASQL.1;Persist Security Info=False;User ID=sa;Data Source=学生宿舍管理系统"
strSQL = "INSERT INTO 学生基本信息 select " & _
"姓名,性别,民族,学号,政治面貌,系别,区队,户籍地,联系方式,宿舍楼号,寝室号,床号,备注 FROM " & _
"OPENROWSET('Microsoft.Jet.OLEDB.4.0'," & _
"'Excel 8.0;Database=" & CommonDialog1.FileName & "',Sheet1$)"

Debug.Print strSQL
Cn.Execute strSQL, lngRecsAff, adExecuteNoRecords

Debug.Print "Records affected: " & lngRecsAff
MsgBox "本次共导入" & lngRecsAff & "条记录!"
Cn.Close
Set Cn = Nothing

End If
End Sub

以上是可以实现将EXCEL导入SQL中,但是缺点是也可以导入重复的信息,所以我想怎么让它能检测重复的信息,只导入不重复的,我想加一句
Where 学号 <> Adodc1.Recordset.Fields("学号"),但是提示说.Fields未定义,请问这是怎么回事?还有其他办法吗?

回答好了+分!!!谢谢
展开
 我来答
百度网友ba8fd4f
2009-05-21 · TA获得超过281个赞
知道小有建树答主
回答量:769
采纳率:0%
帮助的人:283万
展开全部
语句里怎么可以再引用数据集?当然不行了,

而且方法错了,你那种整体导入,是不管错对全导入,根本没法控制,

一条一条导再加引异常控制,出错写入TXT,非常简单完美的实现方式,我的程序就是这样弄的
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式