当我在SQL Server 2012中恢复我的数据库时,我可以让你显示脚本或命令行动作.这些附加参数做了什么,Nounload and stats = 10.
RESTORE DATABASE [db2] FROM DISK = N'C:\folder\db2.bak' WITH FILE = 1, NOUNLOAD, STATS = 10
GO
Run Code Online (Sandbox Code Playgroud) 我想将用户放在SQL Server脚本中,但我需要首先测试存在,否则我会收到脚本错误.当删除表或存储过程时,我检查sysobjects表,如下所示:
IF EXISTS (
SELECT *
FROM sysobjects
WHERE id = object_id(N'[dbo].[up_SetMedOptions]')
AND OBJECTPROPERTY(id, N'IsProcedure') = 1
)
Drop Procedure up_SetMedOptions;
GO
Run Code Online (Sandbox Code Playgroud)
检查用户的必然结果是什么?请注意,我不是要求数据库登录到服务器!该问题与特定数据库中的用户有关.
我在使用以前的版本(SQL Server 2008)还原备份时使用SQL Server 2012时出错.我实际上有几个相同数据库的备份文件(在过去的不同时间拍摄).最新的恢复没有任何问题; 但是,其中一个给出以下错误:
System.Data.SqlClient.SqlError:文件"C:\ PROGRAM FILES\MICROSOFT SQL SERVER\MSSQL.1\MSSQL\DATA\MYDB_ABC.MDF"的目录查找失败,出现操作系统错误3(系统无法找到路径指定).(Microsoft.SqlServer.SmoExtended)
这是一台x64机器,我的数据库文件位于以下位置:c:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL.
我不明白为什么它试图恢复MSSQL.1而不是MSSQL11.MSSQLSERVER.
database sql-server exception-handling restore sql-server-2012
如果当前安装了LocalDB,如何签入c#代码?另外,如何检查SQLNCLI11是否存在于系统中?
无法启动LocalDB实例,我已经反复安装并重新安装.
继续收到此错误:
由于以下错误,LocalDB实例"v11.0"的启动失败:在LocalDB实例启动期间发生错误:SQL Server进程无法启动.
有人建议吗??
Microsoft SQL Server 2012,我确保了完整的安装选项,停止了所有与SQL相关的服务并尝试重新启动.
sqllocal info
Run Code Online (Sandbox Code Playgroud)
给我 :
项目v11.0
当我尝试
sqllocal start v11.0
Run Code Online (Sandbox Code Playgroud)
我得到了上述错误.
为什么使用强制实现ToList()使我的查询数量级更快,如果有的话,它应该完全相反?
1)First()立即打电话
// "Context" is an Entity Framework DB-first model
var query = from x in Context.Users
where x.Username.ToLower().Equals(User.Identity.Name.ToLower())
select x;
var User = query.First();
// ** The above takes 30+ seconds to run **
Run Code Online (Sandbox Code Playgroud)
2)致电First() 后致电ToList():
var query = from x in Context.Users
where x.Username.ToLower().Equals(User.Identity.Name.ToLower())
select x;
var User = query.ToList().First(); // Added ToList() before First()
// ** Now it takes < 1 second to run! **
Run Code Online (Sandbox Code Playgroud)
获取生成的SQL后,唯一的区别是,正如预期的那样,TOP (1) …
今天我无法使用以下错误消息登录到我的本地SQL Server 2012实例
已成功与服务器建立连接,但在登录前握手期间发生错误.
provider:SSL Provider,错误:0 - 发生内部错误.(Microsoft SQL Server,错误:-2146893792)
我在这里和论坛上发现了许多类似的问题,但没有任何帮助.请注意,就我而言,它只是说
0 - 发生内部错误
Force Protocol Entryption设置为False,Trust Server Certificate设置为Yes(原来它是No,但在两种情况下它都不起作用);它昨天工作正常,从那以后我没有安装任何软件.
我们有一个SQL Server 2012数据库,其中包含我们用于开发网站的测试数据.我们将很快需要清空数据库并导入实际数据,但是我们在Web开发期间多次更改了数据库设计,因此我们无法使用我们在开始时创建的空副本!
有没有办法复制数据库,没有数据,但包含其他所有内容(包括视图,SP函数,安全对象等),并将所有索引重置为设计种子值?换句话说,我们希望保持数据库的原样,但删除所有数据,将所有表索引重置为其原始设计种子值,然后导入数据.
任何帮助感激不尽
在我们的开发环境中,我们长期以来通过各种SQL Server版本和不同的环境配置为我们的每个产品使用特定的备份和还原脚本,没有任何问题.
最近,我们已升级到SQL Server 2012,作为我们的标准开发服务器,具有SQL兼容级别2005(90),以维持对旧系统的支持.现在我们发现在一个特定的dev机器上,我们在尝试备份数据库时会出现以下错误:
无法使用备份文件'D:\ MyDB.bak',因为它最初使用扇区大小512格式化,现在位于扇区大小为4096的设备上.BACKUP DATABASE异常终止.
命令是:
BACKUP DATABASE MyDB TO DISK = N'D:\MyDB.bak' WITH INIT , NOUNLOAD , NAME = N'MyDB backup', NOSKIP , STATS = 10, NOFORMAT
Run Code Online (Sandbox Code Playgroud)
奇怪的是,该开发机器上的硬件和分区都没有改变,即使它们的扇区大小不同,这在以前也不是问题.
从我的研究(即谷歌搜索),除了使用该WITH BLOCKSIZE选项的建议之外,在这个问题上没有太多,但是那给了我相同的错误信息.
我的查询是:
BACKUP DATABASE MyDB TO DISK = N'D:\MyDB.bak' WITH INIT , NOUNLOAD , NAME = N'MyDB backup', NOSKIP , STATS = 10, NOFORMAT, BLOCKSIZE = 4096
Run Code Online (Sandbox Code Playgroud)
任何人都可以了解如何将数据库备份和恢复到具有不同扇区大小的HDD?
我正在从实体框架调用一个表值函数,并且需要能够添加option (recompile)它,因为它拾取的执行计划不是最佳的.在SQL Server Management Studio中运行查询,它看起来像这样:
select
*
from dbo.fDE_myquery(0, 0, 3309, '7/1/2013', '7/1/2014', 0, 0)
option (recompile)
Run Code Online (Sandbox Code Playgroud)
来自EF,没有办法添加这个提示,AFAIK.EF部分看起来像:
var query = from f in ctx.fDE_myQuery(aBool, anotherBool, StartDate,
EndDate, someInt, moreBool)
select f;
Run Code Online (Sandbox Code Playgroud)
我看到了这个问题:
但它已经过时了,所接受的解决方案并没有提供足够的信息来说明如何使用实体框架实际实施建议的解决方案(使用计划指南).如果这是唯一的解决方案,那么如何让实体框架使用计划指南呢?
sql-server-2012 ×10
sql-server ×5
sql ×3
database ×2
restore ×2
backup ×1
c# ×1
linq ×1
localdb ×1
performance ×1
t-sql ×1