Tag: sql

我可以用密码加密SQLite数据库吗?

我使用SQLite数据库版本3与C#Windows应用程序..我想使用密码或任何其他加密方式加密SQLite数据库文件,以防止客户端从程序文件文件夹中打开它。 我不想要任何运行时加密方式,我只想在客户端尝试从程序文件中打开它时使数据库文件显示密码字段..谢谢 编辑 如果我从代码加密它,客户端可以在安装完成后打开它并将db文件传输到程序文件,然后再打开程序执行加密不是吗?

TransactionScope maximumTimeout

我在这段代码中使用TransactionScope: private void ExecuteSP() { bool IsComplete = false; SqlCommand sqlComm = null; //6 hours!!! TimeSpan ts1 = new TimeSpan(6, 0, 0); try { using (TransactionScope t = new TransactionScope(TransactionScopeOption.RequiresNew, ts1)) { using (SqlConnection sqlConn = new SqlConnection(GetConnectionString())) { //open sql connection sqlConn.Open(); try { //create new sqlCommand sqlComm = new SqlCommand(); for (int i […]

保持数据库中数据更改的历史记录

数据库中某行中的每次数据更改都应将以前的行数据保存在某种历史记录中,以便用户可以回滚到上一行数据状态。 这种方法有什么好的做法吗? 尝试使用DataContract并对数据对象进行序列化和反序列化,但它对于复杂对象变得不那么混乱。 所以更清楚: 我正在使用NHibernate进行数据访问,并希望避免数据库依赖(对于使用SQL Server 2005进行测试) 我的目的是提供数据历史记录,以便每次用户都可以回滚到以前的某些版本。 使用示例如下: 我有一篇新闻报道 有人对那篇文章做了一些修改 主编看到这个消息有一些错别字 它决定回滚到以前的有效版本(直到更新最新版本) 我希望我能给你有效的信息。

SQL表和C#枚举

假设我的应用程序中有n种类型的用户。 我使用UserType枚举来区分它们。 我是否需要在名为UserType的数据库中保留一个表? 这样我就可以通过查询表而不是搜索应用程序源代码随时找到用户类型。 这样做我的源代码可能会变得有些复杂。 我应该承认这种交易吗?

如何通过C#代码在Sql中执行批量更新

我想更新多行,如下所示 update mytable set s_id = {0} where id = {1} (这里根据一些复杂的逻辑评估s_id )。 出于性能原因,更新应该分批进行。 有没有办法批处理更新语句并通过单个执行语句执行批处理? 我知道在JAVA中我们可以通过JDBC实现这一点。 在C#中有类似的方式吗? 提前致谢

如何在SQL中处理时间存储

我有一个我正在写的Web应用程序(C#,MSSQL),我需要存储记录存储在系统中的时间戳。 通常,我会使用SQL和DATETIME函数执行此操作。 但是,服务器位于与我们公司所在的时区不同的时区…我们可能会在完全不同的时区更改为另一台服务器。 托管公司不会更改服务器时间以匹配我们的本地时区。 (不是我责备他们,但这是我尝试过的一件事。) 所以,我的问题是,存储记录更新的日期/时间的最佳方法是什么,以及在当地时区将该日期/时间呈现给用户的最佳方式是什么? 我想要这样做最简单的方法,所以只要解决方案易于实现,C#和SQL的组合就可以了。 (我的正常风格是在存储过程中做更多的工作而在C#中做更少的工作,如果这很重要的话。) 你能告诉我一些示例代码吗? 谢谢!

在SSIS中的Script Task中连接到SQL数据库

在SSIS中的脚本任务内部,我需要调用SQL数据库。 我有一个连接字符串是在我将数据库添加到数据源文件夹时创建的,但是现在我不确定如何在C#代码中引用它。 我知道如何在ASP网站的代码中执行此操作,但似乎SSIS应该有更直接的方法。 编辑 这行代码实际上最终会抛出exception: sqlConn = (System.Data.SqlClient.SqlConnection)cm.AcquireConnection(Dts.Transaction); 它写道:“无法将’System._ComObject’类型的COM对象强制转换为类类型’System.Data.SqlClient.SqlConection。’”

SQL Server – Guid VS. 长

到目前为止,我一直在使用C#“Guid = Guid.NewGuid();” 生成唯一ID的方法,该ID可以使用Linq to SQL存储在我的某些SQL Server数据库表中作为ID字段。 我被告知,出于索引的原因,使用GUID是一个坏主意,我应该使用自动递增Long。 将使用长时间加速我的数据库事务? 如果是这样,我该如何生成Long类型的唯一ID? 问候,

将全文搜索与SQL Server结合有多难?

我正在构建一个带有SQL后端的C#/ ASP.NET应用程序。 我正在截止日期并完成我的页面,在左侧字段中,我的一位设计师在我的一个页面上整合了全文搜索。 直到此时我的“搜索”都是filter,能够通过某些因子和列值缩小结果集。 因为我正处于截止日期(你知道每晚睡3个小时,我看起来像猫吃了什么东西并且扔了起来),我期待这个页面与其他人非常相似,我正在尝试决定是否发臭。 我之前从未在页面上进行过全文搜索….这是一座可以登山的山还是有一个简单的解决方案? 谢谢。

使用Linq to SQL,如何在表中找到列的最小值和最大值?

我想找到一种最快的方法来获取表中的列的最小值和最大值,并使用单个Linq to SQL往返。 所以我知道这将在两个往返中起作用: int min = MyTable.Min(row => row.FavoriteNumber); int max = MyTable.Max(row => row.FavoriteNumber); 我知道我可以使用group但是我没有group by子句,我想聚合整个表! 如果没有先分组,我就不能使用.Min。 我试过这个: from row in MyTable group row by true into r select new { min = r.Min(z => z.FavoriteNumber), max = r.Max(z => z.FavoriteNumber) } 但是这个疯狂的组子句似乎很愚蠢,而它所做的SQL比它需要的更复杂。 那么,有没有办法让正确的SQL出来? 编辑:这些家伙也失败了: Linq to SQL:如何在没有小组的情况下聚合? ……如果真的没有答案,LINQ设计师的疏忽。 编辑2:我在SQL Server Management Studio执行计划分析中查看了我自己的解决方案(使用无意义的常量group […]