求解VB数据库编程中程序出错解决方法
用VB制作一个程序将EXCEL文件导入到SQL数据表,运行时提示:“实时错误‘-2147217900(80040e14)'___仅当使用了列的列表,并且IDENTITY INSERT为ON时,才能在表‘people'中为标识列指定显示值。”检查后发现数据库文件中的数据表“people”有一列"ID"列,被指定为标识列,只是不知道这个“仅当使用了列的列表,并且IDENTITY INSERT为ON时,才能在表‘people'中为标识列指定显示值。”是什么意思?请教高手,如果不对数据库进行修改,也就是说不想取消该表的标识列。怎样才能解决上述问题?程序代码如下:
Private Sub Command1_Click()
Dim strconn As String
CommonDialog1.Filter = "电子表格文件(.xls)|*.xls"
CommonDialog1.DialogTitle = "请选择要导入数据的文件"
Set rstemp = CreateObject("ADODB.Recordset")
Set conn = CreateObject("Adodb.connection")
strconn = "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=PData_" & Year(Now) & ";Data Source=(local)"
conn.Open strconn
CommonDialog1.ShowOpen
strsql = "INSERT INTO People_Money select * From OpenRowset('microsoft.jet.oledb.4.0','Excel 8.0;HDR=Yes;database=" & CommonDialog1.FileName & ";','select * from [存款单$]') "
rstemp.Open strsql,conn,1,1
MsgBox "数据导入完成", vbExclamation + vbOKOnly
conn.Close
Set conn = Nothing
retemp.Close
Set rstemp = Nothing
End
End Sub