是否有用于管理 SQL CE 4 数据库的良好 GUI 工具?例如,不需要我编写创建表语句的东西。
我有一个已发布到市场的 Windows Phone 7 应用程序。我将 Sql CE 与 LinqToSql 一起使用。当应用程序运行时,它会从连接字符串中检查数据库是否存在,如果不存在则创建。
using (CheckbookDataContext db = new CheckbookDataContext(DBConnectionString))
{
if (!db.DatabaseExists())
{
isNewLoad = true;
db.CreateDatabase();
}
}
Run Code Online (Sandbox Code Playgroud)
当我开始计划新功能时,我预见到数据库模式会发生一些变化,无论是向现有表添加新列、添加新表等。
如何去更新已经存在的数据库?既然数据库已经存在,我是否必须手动执行 ALTER 和 CREATE 表语句来进行调整?
当使用超过 8000 字节数据的 BLOB 时,您需要专门设置Parameter.SqlDbType = SqlDbType.Image才能使其工作(如此处所述)。
Dapper,当它看到一个byte[]字段时,默认为 a SqlDbType.Binary,这意味着对于较大的 blob,插入和更新将失败并出现数据截断错误。
这个问题有优雅的解决方案吗?我能看到的唯一选择是使用 ADO.NET 方法对整个事务进行编码。
我有这个问题.我想从AgentsResultLinks-Table中删除所有实体,这些实体没有指向Results-Table中实体的链接.我想要一个单一查询的解决方案.我收到了'*'引起的错误.
DELETE AgentResultLinks.*
FROM AgentResultLinks LEFT JOIN Results
ON AgentResultLinks.ResultID = Results.ID
WHERE Results.ID IS NULL
Run Code Online (Sandbox Code Playgroud)
有人可以帮助我在紧凑型数据库的vaid mssql查询中转换此查询吗?表演非常重要.
我一直在寻找解决方案,但不知道我哪里做错了。但我是第一次这样做。
我有一个班级学生
class Students
{
public Image photo { get; set; }
public bool AddStudent(Students _student)
{
Settings mySettings = new Settings();
SqlCeConnection conn = new SqlCeConnection(mySettings.StudentsConnectionString);
SqlCeCommand cmd = new SqlCeCommand();
cmd.CommandType = System.Data.CommandType.Text;
cmd.Connection = conn;
cmd.CommandText = "insert into students (firstname, lastname, dob, allergic, allergydetails, memo, address, photo) " +
"Values (" +
"'" + @FirstName + "'," +
"'" + @LastName + "'," +
"'" + @Dob + "'," +
"'" + @isAllergic + "'," + …Run Code Online (Sandbox Code Playgroud) 我正在使用最新的 ASP.NET MVC、身份和实体框架。
示例Identity 项目使用 Sql Server Express。我想使用 Sql Server Compact。
我做了什么:
创建了一个新的空解决方案(不是 MVC 模板)
安装的示例项目:Install-Package Microsoft.AspNet.Identity.Samples -Pre
安装:Install-Package Microsoft.SqlServer.Compact
安装:Install-Package EntityFramework.SqlServerCompact
将默认连接字符串更改为web.config:
<add name="Foo"
providerName="System.Data.SqlServerCe.4.0"
connectionString="Data Source=|DataDirectory|\Foo.sdf;" />
Run Code Online (Sandbox Code Playgroud)更改ApplicationDbContext为使用Foo连接字符串:
ApplicationDbContext() : base("name=Foo", false)
Run Code Online (Sandbox Code Playgroud)问题是,ApplicationDbContext第一次访问时(在播种期间,在ApplicationDbInitializer.InitializeIdentityForEF()方法中):
InvalidOperationException: UserId not found线路result = userManager.SetLockoutEnabled(user.Id, false); 我认为这就像更改连接字符串一样简单 - 那么我做错了什么?换句话说,如何将解决方案从 SQL Server Express 转换为 SQL Server Compact?
asp.net asp.net-mvc entity-framework sql-server-ce asp.net-identity
如果支持,我应该安装哪个包才能使用 SQL Server CE?谢谢。
包 Microsoft.SqlServer.Compact 4.0.8876.1 与 netcoreapp1.0 (.NETCoreApp,Version=v1.0) 不兼容。
包 EntityFrameworkCore.SqlServerCompact40 1.0.0.3 与 netcoreapp1.0 (.NETCoreApp,Version=v1.0) 不兼容。
我创建了一个桌面应用程序,它使用SQL CE 4.0和具有Code First模式的实体 框架。所以,最初我在系统上安装了应用程序,它运行良好。
现在,我向模型类添加了一些属性,因此为此目的,我使用 启用了迁移Enable-Migrations,并使用Add-Migration "MyMigration". 这也很成功,我能够安装新版本并升级数据库,没有任何问题。
但是现在,当我在没有现有数据库的系统上安装此设置时,它会失败,所以经过研究,我意识到我需要添加初始迁移所以,我撤销了模型中的更改,还删除了我的 SQLCE 数据库文件,添加了初始迁移,然后Update-Database。因此,如果我尝试使用在未启用迁移的情况下创建的旧数据库来更新数据库,那么它会失败,它会尝试将初始迁移应用于数据库,但根据我的说法,它不应该这样做。
现在,如果我删除旧数据库文件,然后删除更新数据库,则会创建新数据库,然后再次将我的更改添加到模型并添加预期迁移。
因此,在此之后,周转我可以在空白系统上安装我的应用程序,但它在具有旧数据库的系统上失败,即它不会升级数据库。
它也尝试应用初始迁移,即再次创建所有表,但失败并提示“该表已存在,这是意外的”。
c# entity-framework sql-server-ce ef-code-first entity-framework-migrations
我正在使用nhibernate为SQL Server Compact Edition表中的应用程序存储一些用户设置.
这是映射文件的摘录:
<property name="Name" type="string" />
<property name="Value" type="string" />
Run Code Online (Sandbox Code Playgroud)
Name是常规字符串/ nvarchar(50),Value在DB中设置为ntext
我正在尝试将大量xml写入"Value"属性.我每次都得到一个例外:
@p1 : String truncation: max=4000, len=35287, value='<lots of xml..../>'
Run Code Online (Sandbox Code Playgroud)
我用Google搜索了一下,并尝试了许多不同的映射配置:
<property name="Name" type="string" />
<property name="Value" type="string" >
<column name="Value" sql-type="StringClob" />
</property>
Run Code Online (Sandbox Code Playgroud)
这是一个例子.其他配置包括"ntext"而不是"StringClob".那些不抛出映射异常的配置仍会抛出字符串截断异常.
这是SQL CE的问题("功能")吗?是否可以使用nhibernate将超过4000个字符放入SQL CE数据库?如果是这样,谁能告诉我怎么样?
非常感谢!
我们很快就会着手开发新的移动应用程序.此特定应用程序将用于大量搜索基于文本的字段.整个集团对于什么类型的数据库引擎最适合在移动平台上允许这些类型的搜索的任何建议?
具体包括Windows Mobile 6,我们将使用.Net CF. 此外,一些基于文本的字段将在35到500个字符之间.该设备将以两种不同的方式运行,批量和WiFi.当然,对于WiFi,我们只需向完整的数据库引擎提交请求,只需获取结果即可.这个问题围绕着"批处理"版本,该版本将容纳一个装有闪存/可移动存储卡设备信息的数据库.
无论如何,我知道SQLCE有一些基本的索引,但你没有进入真正花哨的"全文"样式索引,直到你有一个完整的版本,当然在移动平台上不可用.
数据外观的一个示例:
"围裙木匠可调节皮革腰包腰部五金腰带"等
我还没有进入任何其他特定选项的评估,因为我认为我会利用这个小组的经验来首先指出一些特定的途径.
有什么建议/提示吗?
sql-server-ce ×10
c# ×3
sql ×2
asp.net ×1
asp.net-core ×1
asp.net-mvc ×1
blob ×1
dapper ×1
entity-framework-migrations ×1
left-join ×1
linq-to-sql ×1
nhibernate ×1
ntext ×1
search ×1
sql-delete ×1
sqlite ×1
truncate ×1