Excel导入SQL数据库出现的问题【解决】
【问题一
】:已拒绝对 OLE DB 提供程序 'MICROSOFT.JET.OLEDB.4.0' 的特殊访问。必须通过链接服务器来访问此提供程序。
【分析
】:这是因为您当前用来访问数据库的登录的权限不够(权限太低)。
【解决
】:要么您还用sa登录,要么修改当前登录的权限,步骤如下:企业管理器→安全性→登录→找到你所用的登录名→右击"属性"→服务器角色→将System Administrator选项打钩→确定即可。
【问题二
】:OLE
DB 提供程序 'MICROSOFT.JET.OLEDB.4.0' 报错。提供程序未给出有关错误的任何信息。 OLE DB
错误跟踪[OLE/DB Provider 'MICROSOFT.JET.OLEDB.4.0'
IDBInitialize::Initialize returned 0x80004005: 提供程序未给出有关错误的任何信息。]。
【分析
】:
首先先检查一下你用来导入的Excel表是否已经打开,如果打开了,请关闭后重试一下。
还
是不行的话,继续往下看。如果你用来数据库操作的sql语句是用striing字符串保存的,且其中包含着.xsl文件的存放路径。那么问题可能就出在这
个路径上。您是否值用了一个斜杠"\"。如果只有一个斜杠的话,在运行前,错误列表中会提示"无法识别转义序列"。一旦运行,该提示就会消失,可能您就是
因为这样而没有注意到这错误。
【解决
】:把单斜杠("\") 改成 双斜杠("\\") 如:e:\\aillo\\tt.xsl
相关文档:
exists (sql 返回结果集为真)
not exists (sql 不返回结果集为真)
如下:
表A
ID NAME
1 A1
2 A2
3 A3
表B
ID AID NAME
1 1 B1
2 2 B2
3 2 B3
表A和表B是1对多的关系 A.ID => B.AID
......
现在用MSSQL的地方太多了,有很多做技术的个人电脑上也安装SQL专业版,因为它用的多,但用的人都知道,SQL有个超级用户sa,此用户默认情况下,它指派给固定服务器角色 sysadmin,并不能进行更改。一般懂点安全问题的技术人员都会把这个密码修改掉,但修改再复杂的密码都不是绝对安全的,一些暴力破解软件,菜鸟都会用。
那 ......
精妙SQL语句收集
1、说明:创建数据库CREATE DATABASE database-name 2、说明:删除数据库drop database dbn ......
--聚合函数
use pubs
go
select avg(distinct price) --算平均数
from titles
where type='business'
go
use pubs
go
select max(ytd_sales) --最大数
from titles
go
use pubs
go
select min(ytd_sales) --最小数
from titles
go
use pubs
go
select type,sum(price),sum(advance)  ......