标签: sql-server-express

从TSQL检测Sql Express

我需要一种安全(即一致,健壮)的方法来检测我正在访问的sql server是否是Sql Express.我想我更愿意从TSQL中做到这一点,因为我已经有一个连接字符串和我需要执行TSQL的所有库(这应该有助于避免WMI是否安装/运行的问题,用户有访问注册表的权限等).

有谁知道这样做的方法?

谢谢.

PS:基本上我想这样做,所以我可以监控我的数据库大小与4gb限制,并在我接近它时采取行动...但如果我在一个完整的Sql Server版本上运行,那么我不希望代码担心它,因为没有(实际)硬编码限制.我可以在我的程序中进行手动设置,但如果代码自动执行正确的操作会更好,因此需要知道服务器是否是"Express"版本.

t-sql sql-server detect sql-server-express

5
推荐指数
4
解决办法
1464
查看次数

使用包含列创建索引的问题(SQL Server Express)

我正在使用Visual C#2008 Express Edition和SQL Server Express 2008的数据库资源管理器/设计器.

我创建了一个表,并希望添加一个索引.但索引将超过900字节.一种解决方法是在索引中使用包含的列.不幸的是,索引设计器中禁用了"包含的列"属性,但我还没有找到启用它的方法.

有人可以告诉我如何启用该属性?是否有另一种方法可以使用设计器将包含的列添加到索引中?SQL Server Express是否支持此功能?

sql-server devexpress sql-server-express

5
推荐指数
1
解决办法
3442
查看次数

sql server 2005上的最大限制是4 GB表示.mdf + .ldf或仅用于.mdf吗?

sql server 2005上的最大限制是4 GB表示.mdf + .ldf或仅用于.mdf吗?请澄清一下.谢谢.

sql-server sql-server-express

5
推荐指数
1
解决办法
588
查看次数

无法在不更改数据库名称的情况下使用Entity Framework Code First和MVC 3重新创建SQL Server Express数据库

当我使用以下连接字符串运行应用程序时,将成功创建数据库文件.

<add name="ConnString1"
     connectionString="Data Source=.\SQLEXPRESS;
                       Database=Database1;
                       Integrated Security=SSPI;
                       AttachDBFilename=|DataDirectory|aspnetdb.mdf;
                       User Instance=true"
     providerName="System.Data.SqlClient" />
Run Code Online (Sandbox Code Playgroud)

如果我删除数据库文件并尝试再次运行该应用程序,则无法创建数据库文件,并且我得到以下内部异常:

底层提供程序在Open上失败.
{"无法打开数据库\"Database1 \"登录请求.登录失败.\ Database1 \n登录失败,用户'计算机\\ someuser'."}

如果我改变数据库=数据库1数据库的Database2 =在连接字符串中那么数据库文件创建成功.问题总是重演.

如何在不更改数据库名称的情况下重新创建数据库文件?

entity-framework sql-server-express asp.net-mvc-3

5
推荐指数
1
解决办法
1593
查看次数

SQL Server 2008 Express是否允许远程连接?

我试图远程连接到SQL.我输入了端口1433,我重新启动了服务,而且我的Windows防火墙没有激活.但是,我只能使用本地连接,我无法远程连接.

我读到SQL Server 2005 Express不允许远程连接,但是2008年呢?它是否允许远程连接?

sql-server sql-server-2008-express sql-server-express

5
推荐指数
1
解决办法
5485
查看次数

当我已经拥有Microsoft Sql Server Developer时,为什么我在Visual Studio中安装了Sql Express?

当我已经拥有Microsoft Sql Server Developer(2008)时,我可以从使用Visual Studio(2010)安装Sql Express获得什么好处?

我可以想象的唯一好处是我可以为任何一个平台开发,而不必关心我安装的是哪一个.从我的开发机器中删除 Sql Server Express(特别是SqlExpress实例)是否存在实际的负面损害?

visual-studio-2010 sql-server-express

5
推荐指数
1
解决办法
1万
查看次数

实体框架4.1不向SQL Server Express数据库添加任何行

使用带有SQL Server Express .mdf数据库的Entity Framework 4.1 .

出于测试目的,我尝试在WPF应用程序中使用实体模型在SQL Server Express数据库上执行CRUD操作.

我是这个概念的新手,我按照视频教程进行了编码

我创建了单个非常简单的表的实体模型.我在cs文件中编写了简单的代码,使用以下代码执行向数据库添加一行

testEntities db = new testEntities();
TestTable tb = new TestTable();
tb.Name = txtName.Text;
tb.Email = txtMail.Text;
db.TestTables.AddObject(tb);
db.SaveChanges();
Run Code Online (Sandbox Code Playgroud)

但如果我回去检查数据库,则不会添加任何数据.请告诉我这里出了什么问题?

这是我的连接字符串

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="testEntities" 
         connectionString="metadata=res://*/DBModel.csdl|res://*/DBModel.ssdl|res://*/DBModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=.\SQLEXPRESS;attachdbfilename=|DataDirectory|\test.mdf;integrated security=True;connect timeout=30;user instance=True;multipleactiveresultsets=True;App=EntityFramework&quot;" 
         providerName="System.Data.EntityClient" />
  </connectionStrings>
</configuration>
Run Code Online (Sandbox Code Playgroud)

c# wpf entity-framework sql-server-express

5
推荐指数
1
解决办法
1635
查看次数

SQL Express客户端内存使用情况与SQL Enterprise客户端内存使用情况不同

我在.Net应用程序内存使用方面遇到了很大的不同,使用相同的应用程序对同一个数据库的两个副本.唯一的区别是在方案1中我使用注册到实例的数据库的本地副本SQL Server 2005 Express- 并且在方案2中我使用注册到实例的数据库的远程副本SQL Server 2008 Enterprise.

据我所知,我只期望SQL性能和SQL内存使用有所不同(因为Express有1GB的限制).

但是 - 我看到它们之间的内存使用量存在巨大差异(1GB) - 即SQL Express主要使用1GB内存的情况. SQL Express似乎也慢得多,特别是使用大表和大型查询 - 但我希望这个内存命中是在SQL而不是我的消费/客户端应用程序???

应用程序使用System.Data.SqlClient.SqlConnection并连接到SQL服务器并执行频繁SqlCommandSqlBulkCopy操作.

任何有用的想法将非常感谢!

.net sql sql-server sql-server-express sql-server-2008

5
推荐指数
1
解决办法
209
查看次数

通过命令行安装SQL Server 2014 Express

如何在新的Windows 7计算机上通过命令行安装SQL Server 2014 Express?

我尝试了以下命令行; 虽然没有显示错误,但我没有看到任何运行或安装的SQL服务.那有什么不对呢?任何的想法?

SQLEXPRESS.EXE /qs /ACTION=Install /FEATURES=SQLEngine 
               /INSTANCENAME=SQLEXPRESS 
               /SQLSVCACCOUNT="NT AUTHORITY\NETWORK SERVICE" 
               /SQLSVCPASSWORD="STR0NGP@$$" 
               /SQLSYSADMINACCOUNTS="NT AUTHORITY\NETWORK SERVICE" 
               /AGTSVCACCOUNT="NT AUTHORITY\Network Service" 
               /TCPENABLED=0 /X86="True" /SQMREPORTING="False" 
               /ISSVCSTARTUPTYPE="Automatic"  
               /ASCOLLATION="Latin1_General_CI_AS" 
               /SQLCOLLATION="SQL_Latin1_General_CP1_CI_AS"  
               /RSINSTALLMODE="FilesOnlyMode"
               /IACCEPTSQLSERVERLICENSETERMS 
Run Code Online (Sandbox Code Playgroud)

sql-server cmd sql-server-express

5
推荐指数
1
解决办法
3545
查看次数

如何在SQL Server Express表中保存QTime并将其读回?

我在SQL Server Express与字段的表name varchar(10)timeVar time我要保存的值QTime的变量time场.

这是我尝试过的:

QTime time = QTime::currentTime();
QString timeString = time.toString("hh:mm:ss");
QString query = QString("insert into timeHold(name,timeVar) values ('ABC','%2')").arg(timeString);

qry->prepare(query);
qry->exec();
Run Code Online (Sandbox Code Playgroud)

但是,我明白了QSqlQuery::value: not positioned on a valid record.

当我从SQL Server Management Studio将值插入表中时,insert into timeHold values('XYZ', '12:17:35')效果很好.令我惊讶的是,当我尝试从管理工作室读取存储在表中的值时,我能够获得名称字段,但不能获得时间字段.

这是我用来从表中读取值的代码:

QString query = QString("select * from timeHold");

qry->prepare(query);
qry->exec();
qry->first();

int noOfRecords = qry->numRowsAffected();

do {
    qDebug() << qry->value(0).toString();
    qDebug() << qry->value(1).toString();
} while (qry->next());
Run Code Online (Sandbox Code Playgroud)

代码生成以下输出:

"ABC"
"\u0017" …
Run Code Online (Sandbox Code Playgroud)

c++ qt sql-server-express

5
推荐指数
1
解决办法
125
查看次数