我正在寻找一个桌面/嵌入式数据库.我正在关注的两个候选人是Microsoft SQL Server CE和Oracle Lite.如果有人使用这两种产品,那么如果你能比较它们就会很棒.我无法在网上找到任何比较.
后端DB是Oracle10g.
更新:澄清,业务需求是具有脱机功能的客户端 - 服务器应用程序(因此需要客户端上的本地数据存储)
建立与SQL Server的连接时发生与网络相关或特定于实例的错误.服务器未找到或无法访问.验证实例名称是否正确,以及SQL Server是否配置为允许远程连接.(提供程序:SQL网络接口,错误:26 - 查找指定的服务器/实例时出错)
我已经创建了一个SQL压缩数据库,将其包含在我的应用程序中,并且可以从其他数据库编辑器中很好地连接到数据库,但在我的应用程序中我正在尝试
using (SqlConnection con = new SqlConnection(Properties.Settings.Default.DatabaseConnection))
{
con.Open();
}
Run Code Online (Sandbox Code Playgroud)
连接字符串是
数据源= | DataDirectory |\Database.sdf
我很难过,有什么见解吗?
我在WebMatrix中创建了一个使用SQL Server CE 4.0的小型测试项目.不喜欢使用嵌入式SQL,我想为WebMatrix生成的SQL Server CE 4.0数据库创建一些LINQ2SQL域类.不幸的是,SQLmetal抱怨数据库文件已损坏或不兼容.
是否有一个版本SQLmetal.exe与SQL Server CE 4.0兼容,是否可以独立于Visual Studio下载?
提前致谢.
我的本地目录C:\ myDatabase.sdf中有一个.sdf文件
在Visual Studio 2010 asp.NET中,我添加了表和值等.我现在有一个页面,我需要在Default.aspx.cs页面上连接到本地数据库.
我的代码是:
SqlConnection conn = new SqlConnection("Data Source=C:\\myDatabase.sdf;");
conn.Open();
Run Code Online (Sandbox Code Playgroud)
代码在尝试运行conn.Open()时失败; 调试器说无法连接.继承人错误:
"建立与SQL Server的连接时发生与网络相关或特定于实例的错误.未找到服务器或无法访问服务器.验证实例名称是否正确以及SQL Server是否配置为允许远程连接.(提供程序: SQL网络接口,错误:26 - 找到指定的服务器/实例时出错)"
现在在连接字符串中,香港专业教育学院几乎尝试了一切!香港专业教育学院尝试添加数据库名称,用户名,密码,server = localhost,mode = exclusive等等.它仍然无法工作......我无法弄明白.我没有安装SQL Server我不认为.我只有visual studio 2010和sdf文件.
我认为它试图连接到服务器......但数据库文件是本地的?我不明白 "server = localhost"没有用.我不知道如何检查文件是否允许远程连接,因为我不知道如何访问除Visual Studio之外的文件!
有人可以告诉我发生了什么!
sql asp.net database-connection visual-studio-2010 sql-server-ce
我正在尝试与Windows CE 5.0应用程序中的数据库建立连接,而我正在使用Compact Framework 2.0
数据库位于项目的文件夹中:
C:\ Documents and Settings\softdil\My Documents\Visual Studio 2008\Projects\Datalogic\Datalogic
这些是我用来连接和打开数据库的行:
SqlCeConnection conn = new SqlCeConnection();
conn.ConnectionString = "Data Source = Datalogic.sdf;";
conn.Open();
Run Code Online (Sandbox Code Playgroud)
这给了我一个漂亮的"找不到数据库文件"的错误信息.
我也尝试了绝对的uri,结果相同:
conn.ConnectionString = "Data Source = C:\\Documents and Settings\\softdil\\My Documents\\Visual Studio 2008\\Projects\\Datalogic\\Datalogic;";
Run Code Online (Sandbox Code Playgroud)
我在这做错了什么?
可能是它与移动设备中调试(执行)的应用程序有关?
我真的不这么认为,因为数据库在加载应用程序时起作用,这意味着它与列表框相关联并从数据库正确加载数据.
c# connection-string windows-ce visual-studio-2008 sql-server-ce
我最近升级到Visual Studio 2012和SQL Server Management Studio 2012,但我似乎无法看到如何在SQL Server CE 4.0数据库上执行SQL脚本(由Entity框架创建).使用VS2010 + SSMS 2008,Transact-SQL编辑器会要求连接,您可以浏览到该对象,但是此选项在SSMS 2012中不可用.
我试图通过Server Explorer - > New Query窗口执行脚本,但是我得到了解析错误.有线索吗?
entity-framework sql-server-ce sql-server-2012 visual-studio-2012
我为我的应用创建了一个通用的数据库处理程序类.
我SqlCeConnection正在使用本地数据库,因此这里正在使用类.
我想要做的是测试Connection字符串是否有效,因此在执行之前更新连接状态给用户 connection.Open();
我们说吧
SqlCeConnection conn = new SqlCeConnection(connectionString);
//so far we have only created the connection, but not tried to open it
//Would be nice to update the UI to say that conn is OK
conn.testConnection();
conn.Open();
Run Code Online (Sandbox Code Playgroud)
我的想法写,试图方法的open再close连接,我是不是就在想这还是有更好的办法.
我已经找到了很多关于在Sql CE 4中使用Entity Framework 6以及在Sql CE 4和3.5中使用Entity Framework 4的信息,但是使用Entity Framework 6和Sql CE 3.5是另一回事.据我所知,CE 3.5在System.Data.SqlServerCe.Entity.dll中附带了Entity Framework 4的提供程序.此提供程序使用旧版本的基类,如果我尝试使用它,我会得到以下异常:
System.InvalidOperationException:实体框架提供程序类型'System.Data.SqlServerCe.SqlCeProviderServices,System.Data.SqlServerCe.Entity,Version = 3.5.1.0,Culture = neutral,PublicKeyToken = 89845dcd8080cc91'的'Instance'成员未返回继承自'System.Data.Entity.Core.Common.DbProviderServices'的对象.实体框架提供程序必须从此类继承,并且"实例"成员必须返回提供程序的单例实例.这可能是因为提供者不支持实体框架6或更高版本; 有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkId=260882.
这是有道理的,并指出我所需要的是实现Sql Server CE 3.5 SP2的Entity Framework 6的提供程序.我似乎无法找到这样的东西.nuget包EntityFramework.SqlServerCompact似乎只引用了所有版本的Sql Compact 4.这样的提供者是否已经存在?如果是这样,它在哪里可以找到?我似乎很难找到它.如果没有,那么考虑通过使用CE 4中的代码来引用3.5来实现它是否是现实的,或者CE 3.5和4之间的区别是否过于简单?还有另一种解决方法吗?
我需要使用3.5,因为需要使用合并复制,这在4中不受支持,并且想要使用Entity Framework.如果没有直截了当的答案,我可能会使用Entity Framework之外的其他内容.
entity-framework sql-server-ce sql-server-ce-3.5 entity-framework-6
在我的VS2013项目中参考:
我在edx文件中遇到错误.VisualStudio说:
Exception has been thrown by the target of an invocation
Run Code Online (Sandbox Code Playgroud)
并且无法打开或更新edmx文件.
任何人都可以帮助解决这个问题?
这是app.config的摘录:
<configSections>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="Imir.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<connectionStrings>
<add name="ImirDBEntities" connectionString="metadata=res://*/ImirDB.csdl|res://*/ImirDB.ssdl|res://*/ImirDB.msl;provider=System.Data.SqlServerCe.4.0;provider connection string="Data Source=C:\ProgramData\Telesto\ImirDB.sdf""
providerName="System.Data.EntityClient" />
</connectionStrings> …Run Code Online (Sandbox Code Playgroud) sql-server-ce ×10
c# ×4
sql ×3
database ×2
.net ×1
asp.net ×1
asp.net-mvc ×1
oracle ×1
sql-server ×1
sqlmetal ×1
windows-ce ×1