打开sql数据库报错;无法加载任何数据库包括系统数据库;且本人完全卸载后安装还是出现同样的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了打开sql数据库报错;无法加载任何数据库包括系统数据库;且本人完全卸载后安装还是出现同样的问题相关的知识,希望对你有一定的参考价值。

标题: Microsoft SQL Server Management Studio------------------------------无法将类型为“System.__ComObject”的 COM 对象强制转换为接口类型“Microsoft.VisualStudio.OLE.Interop.IServiceProvider”。此操作失败的原因是对 IID 为“6D5140C1-7436-11CE-8034-00AA006009FA”的接口的 COM 组件调用 QueryInterface 因以下错误而失败: 不支持此接口 (异常来自 HRESULT:0x80004002 (E_NOINTERFACE))。 (Microsoft.VisualStudio.OLE.Interop)------------------------------按钮:确定------------------------------

一、某些软件运行时在任 务栏列表中是不可见的,而是以进程的方式在后台运行,常见的有来电防火墙 、短信防火墙类软件、杀毒软件、加密软件等需要实时监控的软件 ,因此,当然无法删 除正在运行中的软件;二、解决方法为:1、用进程管理器 查看进程表,如你 能判断哪个线程是该程序的进程,则可以关闭它,如无法判断则可以先设臵不显示 系统进程;2、然后关闭所有的非系统进程,这样就可以到程序管理 里正常卸载软件了。追问

谢谢;已经重装系统;系统文件丢失原因。不过还是给你分

参考技术A 你可以试试卸载清理后,再重新下载安装看看。

先下个腾讯电脑管家。
该软件除了提供强力卸载外,还支持深度清理:
打开腾讯电脑管家~~~~工具箱~~~~软件卸载~~~~强力删除
打开腾讯电脑管家~~~~工具箱~~~~清理垃圾/注册表垃圾

完成以上管理后,可再通过软件管理重新下载安装:
打开腾讯电脑管家~~~~工具箱~~~~软件管理~~~~宝库内可下载众多资源

Azure blob 到 Azure SQL 数据库:无法批量加载,因为无法打开文件“xxxx.csv”。操作系统错误代码 5(访问被拒绝。)

【中文标题】Azure blob 到 Azure SQL 数据库:无法批量加载,因为无法打开文件“xxxx.csv”。操作系统错误代码 5(访问被拒绝。)【英文标题】:Azure blob to Azure SQL Database: Cannot bulk load because the file "xxxx.csv" could not be opened. Operating system error code 5(Access is denied.) 【发布时间】:2021-02-26 08:17:12 【问题描述】:

我正在尝试在 azure sql 数据库中批量加载 azure blob 存储中的一些数据。 文件内容为:

 customer,age,gender
'C1093826151','4','M'
'C352968107','2','M'
'C2054744914','4','F'

文件位于名为 silver 的容器中。 在银色容器中,我有 File1.fmt,其内容是:

14.0  
3
1       SQLCHAR       0       7       ","      1     customer       ""  
2       SQLCHAR       0       100     ","      2     age            SQL_Latin1_General_CP1_CI_AS 
3       SQLCHAR       0       100     "\r\n"   3     gender         SQL_Latin1_General_CP1_CI_AS

我有额外的行添加 fmt 文件的末尾。

我创建了一个 SAS 令牌,将全部启用和允许,如下面的屏幕截图所示:

datalake上的防火墙规则如下图:

以下是我的 sql 脚本(我删除了 SAS 令牌开头的 ?,因为我的银容器是公开的,我知道我应该需要 SAS 令牌):

CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'safepassword';
go
DROP EXTERNAL DATA SOURCE MyAzureInvoices

DROP DATABASE SCOPED CREDENTIAL UploadInvoices

CREATE DATABASE SCOPED CREDENTIAL UploadInvoices
WITH IDENTITY = 'SHARED ACCESS SIGNATURE',
SECRET = 'sv=2019-12-12**********************************88%3D'; -- dl

--DROP EXTERNAL DATA SOURCE MyAzureInvoices

CREATE EXTERNAL DATA SOURCE MyAzureInvoices
    WITH (
        TYPE = BLOB_STORAGE,
        LOCATION = 'https://mydatalake.blob.core.windows.net/silver',
        CREDENTIAL = UploadInvoices
    );

登陆表:

CREATE TABLE [ext].[customer](
    [customer_id] [int] IDENTITY(1,1) NOT NULL,
    [customer] [varchar](100) NOT NULL,
    [age] [int] NOT NULL,
    [gender] [varchar](50) NOT NULL
) ON [PRIMARY]
GO

这些是我尝试将文件加载到 sql 数据库中的方式:

-- 1
    SELECT * FROM OPENROWSET(
   BULK 'bs140513_032310-demo.csv',
   DATA_SOURCE = 'MyAzureInvoices',
   FORMAT = 'CSV',
   FORMATFILE='File1.fmt',
   FORMATFILE_DATA_SOURCE = 'MyAzureInvoices'
   ) AS DataFile;   
-- 2    
    go
    SELECT * FROM OPENROWSET(
   BULK 'bs140513_032310-demo.csv',
   DATA_SOURCE = 'MyAzureInvoices',
   SINGLE_CLOB) AS DataFile;
   go
-- 3
BULK INSERT ext.customer
FROM 'bs140513_032310-demo.csv'
WITH (
DATA_SOURCE = 'MyAzureInvoices', FORMAT = 'CSV' );

它们都给出相同的错误:

Msg 4861, Level 16, State 1, Line 2
Cannot bulk load because the file "bs140513_032310-demo.csv" could not be opened. Operating system error code 5(Access is denied.).

我已经尝试了 3 天,但我迷路了。谢谢你的帮助 注意:

在断开连接时,它可以访问文件:

*

https://mydatalake.blob.core.windows.net/silver/File1.fmt https://mydatalake.blob.core.windows.net/silver/bs140513_032310-demo.csv

mydatalake是假的,但我可以用真名访问

【问题讨论】:

查看文件是否在任何电子表格应用程序中打开。很多次发生在我身上,我将一个 excel 保存为 csv 并尝试在 sql 中上传它但失败了,因为它仍然在电子表格应用程序中打开 感谢 Codeek,所有文件编辑器都已关闭,文件位于 Azure Data Lake 容器中 你可以尝试删除bs140513_032310-demo.csv,它会显示文件不存在。侧面确认了这个错误,SQL引擎可以访问该文件。 嗨约瑟夫,我可以下载文件 【参考方案1】:

我认为此错误消息具有误导性。 我创建了与您相同的测试,但遇到了相同的错误。 但是在我编辑了bs140513_032310-demo.csvFile1.fmt 之后,效果很好。

    我像这样更改了bs140513_032310-demo.csv

    我像这样更改了File1.fmt,我将 cutomer 列 的长度从 7 更改为 100,并将 age 列 的长度从 100 更改为 7:

14.0  
3
1       SQLCHAR       0       100       ","      1     customer       ""
2       SQLCHAR       0       7         ","      2     age            SQL_Latin1_General_CP1_CI_AS
3       SQLCHAR       0       100       "\r\n"   3     gender         ""
    我使用如下语句查询:
   SELECT * FROM OPENROWSET(
   BULK 'bs140513_032310-demo.csv',
   DATA_SOURCE = 'MyAzureInvoices',
   FORMAT = 'CSV',
   FORMATFILE='File1.fmt',
   FORMATFILE_DATA_SOURCE = 'MyAzureInvoices'
   ) AS DataFile; 

结果显示:

    不要直接BULK INSERT到您的真实表格中。
我总是会从 CSV 文件插入临时表 ext.customer_Staging(没有 IDENTITY 列) 可能编辑/清理/操作您导入的数据 然后使用以下 T-SQL 语句将数据复制到真实表中:
INSERT into  ext.customer_Staging with (TABLOCK) (customer, age, gender)
   SELECT * FROM OPENROWSET(
   BULK 'bs140513_032310-demo.csv',
   DATA_SOURCE = 'MyAzureInvoices',
   FORMAT = 'CSV',
   FORMATFILE='File1.fmt',
   FORMATFILE_DATA_SOURCE = 'MyAzureInvoices'
   ) AS DataFile;
   go

INSERT INTO ext.customer(Name, Address) 
   SELECT customer, age, gender
   FROM ext.customer_Staging

【讨论】:

以上是关于打开sql数据库报错;无法加载任何数据库包括系统数据库;且本人完全卸载后安装还是出现同样的问题的主要内容,如果未能解决你的问题,请参考以下文章

Azure blob 到 Azure SQL 数据库:无法批量加载,因为无法打开文件“xxxx.csv”。操作系统错误代码 5(访问被拒绝。)

SQL的日志文件太大导致不能写入任何数据,急~~~

.NET把excel数据导入到sql数据库报错:无法打开excel(本地没问题,IIS发布到网站报错),求解!

win7系统下,sql server 2012 在打开SSMS的时候,报错提示“无法创建窗口”

微信小程序打不开啥原因?

无法批量加载,因为无法打开文件“ File.csv”。操作系统错误代码5(访问被拒绝。)