javascript

java

python

c#

android

c++

node.js

php

html

jquery

reactjs

ios

css

.net

git

ruby-on-rails

sql

c

string

ruby

实体框架在每次编译后第一次加载非常慢

顾名思义,我在使用实体框架对SQL Server数据库的第一次查询时遇到问题。 我试图寻找答案,但似乎没有人对此有实际解决方案。

测试是在Visual Studio 2012中使用Entity Framework 6进行的,我还使用了T4视图模板来预编译视图。 该数据库位于SQL Server 2008上。我们大约有400个POCO(400个映射文件),数据库表中只有100行数据。

捕获后是我的测试代码和结果。

static void Main(string[] args){
    Stopwatch st=new Stopwatch();
    st.Start();
    new TestDbContext().Set<Table1>.FirstOrDefault();
    st.stop();
    Console.WriteLine("First Time "+st.ElapsedMilliseconds+ " milliseconds");

    st.Reset();
    st.Start();
    new TestDbContext().Set<Table1>.FirstOrDefault();
    st.stop();
    Console.WriteLine("Second Time "+st.ElapsedMilliseconds+ " milliseconds");
}

检测结果

First Time 15480 milliseconds
Second Time 10 milliseconds
trans by 2020-08-03T21:01:40Z

sql server-SQL临时表变量

我正在努力实现:

declare @TEMP table (ID int, Name varchar(max))
insert into @temp SELECT ID, Name FROM Table

SELECT * FROM @TEMP 
WHERE @TEMP.ID  = 1        <--- ERROR AT @TEMP.ID

但是出现错误

必须声明标量变量“ @temp”。

有帮助吗?

trans by 2020-08-03T18:55:42Z

SQL Server-如何锁定表,直到存储过程完成

我想做这个:

create procedure A as
  lock table a
  -- do some stuff unrelated to a to prepare to update a
  -- update a
  unlock table a
  return table b

这样有可能吗?

最终,我希望我的SQL Server报告服务报告调用过程A,然后仅在过程完成后显示表a。 (我无法将过程A更改为返回表a)。

trans by 2020-08-03T18:47:05Z

sql server-SQL Row_Number()函数在没有ORDER BY的子句中?

我在这个主题上发现了很多问题,都提供了很好的解决方案,但是如果不以特定的方式对数据进行排序,这些问题都无法解决。 例如,以下查询:

WITH MyCte AS 
(
    select   employee_id,
             RowNum = row_number() OVER ( order by employee_id )
    from     V_EMPLOYEE 
    ORDER BY Employee_ID
)
SELECT  employee_id
FROM    MyCte
WHERE   RowNum > 0

如果数据由employee_id排序,则效果很好。 但是,如果我的数据没有特定顺序,但行号本身充当ID怎么办? 我的目标是编写像这样的查询(使用Row_Number()函数没有ORDER BY子句):

WITH MyCte AS 
(
    select   employee_id,
             RowNum = row_number() OVER ( <PRESERVE ORIGINAL ORDER FROM DB> )
    from     V_EMPLOYEE 
    ORDER BY Employee_ID
)
SELECT  employee_id
FROM    MyCte
WHERE   RowNum > 0

编辑:在谷歌搜索时,我发现这实际上是不可能的。 有人可以建议解决方法吗?

trans by 2020-08-03T16:13:13Z

sql server-暂时禁用所有外键约束

我正在运行一个SSIS包,它将替换FlatFiles中的一些表的数据到数据库中的现有表。

我的程序包将截断表,然后插入新数据。 当我运行SSIS程序包时,由于外键而导致异常。

我可以禁用约束,运行导入然后重新启用约束吗?

trans by 2020-08-03T15:56:35Z

SQL Server进程队列竞争条件

我有一个订单队列,可通过存储过程由多个订单处理器访问。 每个处理器传递一个唯一的ID,该ID用于锁定接下来的20个订单以供自己使用。 然后,存储过程将这些记录返回给要处理的订单处理器。

在某些情况下,多个处理器能够检索相同的“ OrderTable”记录,此时它们将尝试同时对其进行操作。 这最终会导致在此过程的后期引发错误。

我的下一个动作是允许每个处理器抓住所有可用的订单,然后对处理器进行轮循,但是我希望简单地使这一部分代码线程安全,并允许处理器在需要时捕获记录。

如此明确-任何想法我为什么会遇到这种比赛情况以及如何解决问题。

BEGIN TRAN
    UPDATE  OrderTable WITH ( ROWLOCK )
    SET     ProcessorID = @PROCID
    WHERE   OrderID IN ( SELECT TOP ( 20 )
                                        OrderID
                                FROM    OrderTable WITH ( ROWLOCK )
                                WHERE   ProcessorID = 0)
COMMIT TRAN


SELECT  OrderID, ProcessorID, etc...
FROM    OrderTable
WHERE   ProcessorID = @PROCID
trans by 2020-08-03T09:28:38Z

SQL Server-如何在不删除SQL 2008中的表的情况下更改列

当我将列类型从int更改为real时,为什么SQL 2008突然想要删除表? 据我所知,这在SQL 2005中从未发生过。 任何见解都会有所帮助。

trans by 2020-08-03T03:09:44Z

sql server-确定选项卡的行大小

如何确定表的最大行大小? 我正在寻找可以做到这一点的工具或脚本,因此不必手动累加各列的大小。

我的目标是生成一个表格的报告,该表格太大了,因此我们可以考虑对其进行重组。 我知道我们有几行是如此之宽,以至于每8K页上只能容纳1行,但我想找到其余的行。

trans by 2020-08-02T03:59:23Z

如何使用git作为SQL Server Management Studio的源代码控制提供程序

我们可以使用GIT作为sql management studio的源代码控制吗?

trans by 2020-08-02T01:23:55Z

如何在SQL Server 2008上找到禁用的索引

不久前,当我向SQL Server数据库中进行一些数据批量插入时,我禁用了许多索引以提高插入性能。 现在,我需要回去重新构建/重新启用它们。

不幸的是,我不确定到底禁用了哪些索引。

有没有一种方法可以查询我确定哪些索引已禁用并应重新启用?

trans by 2020-08-01T23:50:12Z

SQL Server-临时表是线程安全的吗?

我正在使用SQL Server 2000,并且它的许多存储过程都广泛使用临时表。 数据库有很多流量,我担心创建和删除临时表的线程安全性。

假设我有一个存储过程,该存储过程创建了一些临时表,它甚至可能将临时表连接到其他临时表,等等。还可以说两个用户同时执行该存储过程。

  • 一个用户可以运行sp并创建一个名为#temp的临时表,而另一个用户是否可以运行相同的sp但由于数据库中已经存在一个名为#temp的表而被停止,这可能吗?

  • 如果同一用户在同一连接上两次执行相同的存储过程,该怎么办?

  • 是否还有其他可能导致两个用户查询相互干扰的怪异场景?

trans by 2020-08-01T22:10:31Z

SQL Server-使用事务进行选择语句?

我不经常使用存储过程,并且想知道将选择查询包装在事务中是否有意义。

我的过程有三个简单的选择查询,其中两个使用第一个的返回值。

trans by 2020-08-01T22:08:00Z

SQL Server-存储过程-返回标识作为输出参数或s

将记录插入带有标识列的表中时,可以使用SCOPE_IDENTITY()获取该值。 在存储过程的上下文中,这是返回标识值的推荐方法:

  1. 作为输出参数SELECT SCOPE_IDENTITY()
  2. 作为标量SELECT SCOPE_IDENTITY()
  3. 其他方式?

每个都有利弊吗?

trans by 2020-08-01T15:58:18Z

使用Python使用Windows身份验证连接到MS SQL Server吗?

如何使用Windows身份验证和pyodbc库连接MS SQL Server?

我可以通过MS Access和SQL Server Management Studio进行连接,但无法获得适用于Python的有效连接ODBC字符串。

这是我尝试过的方法(也没有'Trusted_Connection=yes'):

pyodbc.connect('Trusted_Connection=yes',
               driver='{SQL Server}', server='[system_name]',
               database='[databasename]')

pyodbc.connect('Trusted_Connection=yes', uid='me',
               driver='{SQL Server}', server='localhost',
               database='[databasename]')

pyodbc.connect('Trusted_Connection=yes',
               driver='{SQL Server}', server='localhost',
               uid='me', pwd='[windows_pass]', database='[database_name]')

pyodbc.connect('Trusted_Connection=yes',
               driver='{SQL Server}', server='localhost',
               database='[server_name]\\[database_name]')

pyodbc.connect('Trusted_Connection=yes',
               driver='{SQL Server}', server='localhost',
               database='[server_name]\[database_name]')

pyodbc.connect('Trusted_Connection=yes',
               driver='{SQL Server}',
               database='[server_name]\[database_name]')
trans by 2020-08-01T15:48:51Z

sql server-客户端PC上的LocalDB部署

我对新版本的SQL Server Express十分感兴趣。

(对我而言)尚不清楚安装程序应如何部署使用LocalDB的应用程序。

是否需要在客户端PC上安装SQL Server Express,然后附加MDF文件?

还是只需要运行LocalDB.msi,它就可以像SQL Server Compact一样作为独立文件使用?

trans by 2020-08-01T09:39:18Z

sql-还原SQL Server 2005数据库后将所有用户链接到登录

(请注意,此问题询问有关链接所有用户的问题,与可能询问有关链接单个用户的重复项不同)

我希望在两个服务器之间移动数据库,到目前为止,我已经从第一台服务器备份了数据库,并在第二台服务器上完成了数据库还原。

但是,我们的应用程序利用了数据库中定义的许多数据库用户。 这些必须链接到master数据库中定义的登录名。 我已将数据库还原到的服务器已定义了所有登录名,但是它们具有不同的sid。

我不是T-SQL专家...。

我认为sp_change_users_login是解决方案的一部分,但是我找不到如何使它自动将已还原数据库中的所有用户链接到同名登录名的方法。

我们用于应用程序的数据库创建脚本会创建用户和登录名,但是在创建登录名时未指定SID,因此会出现此问题。 现在如果我有一个时间机器...

(当我使用Google时,我的搜索量很高,但是大多数情况下,它们都是网站,而不必先在该网站上进行注册就无法让您看到答案。)

trans by 2020-08-01T01:53:33Z

SQL Server-唯一约束与唯一索引

我感兴趣的是了解开发人员更喜欢使用哪种技术在SQL Server中实施唯一性:UNIQUE CONSTRAINT或UNIQUE INDEX。 鉴于两者的物理实现几乎没有区别,您如何确定最佳选择?

除了性能以外,还有其他原因可以评估最佳解决方案吗?

两者之间是否具有数据库管理的优势?

trans by 2020-08-01T01:13:48Z

SQL Server-在SQL中使用条件更新语句

我想有一个这样的更新声明

 SELECT * from Employee
 WHERE age = CASE 
 WHEN (age < 20) THEN age=15
 WHEN (age > 20) THEN age= 20

这在SQL Server / MySQL中是不可能的。 我不想使用存储过程或其他东西。

建议我解决此问题的合适方法

trans by 2020-07-31T05:42:50Z

SQL Server 2005将变量设置为选择查询的结果

如何在不使用存储过程的情况下将变量设置为选择查询的结果?


我想做类似的事情:OOdate DATETIME

SET OOdate = Select OO.Date 
FROM OLAP.OutageHours as OO
WHERE OO.OutageID = 1

然后,我想在此查询中使用OOdate:

SELECT COUNT(FF.HALID) from Outages.FaultsInOutages as OFIO
INNER join Faults.Faults as FF ON FF.HALID = OFIO.HALID
WHERE CONVERT(VARCHAR(10),OO.Date,126) = CONVERT(VARCHAR(10),FF.FaultDate,126)) 
AND
OFIO.OutageID = 1
trans by 2020-07-31T04:51:04Z

sql server-基于delimi的T-SQL拆分字符串

我有一些数据要根据可能不存在的分隔符进行拆分。

示例数据:

John/Smith
Jane/Doe
Steve
Bob/Johnson

我正在使用以下代码将此数据拆分为名字和姓氏:

SELECT SUBSTRING(myColumn, 1, CHARINDEX('/', myColumn)-1) AS FirstName,
       SUBSTRING(myColumn, CHARINDEX('/', myColumn) + 1, 1000) AS LastName
FROM   MyTable

我想要的结果:

FirstName---LastName
John--------Smith
Jane--------Doe
Steve-------NULL
Bob---------Johnson

只要所有行都具有预期的定界符,此代码就可以正常工作,但是当行没有分隔符时会出错:

"Invalid length parameter passed to the LEFT or SUBSTRING function."

如何将其重写才能正常工作?

trans by 2020-07-31T04:29:29Z

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 下一页 共63页