小编mat*_*mc3的帖子

如何在T-SQL中使用逗号格式化数字?

我正在运行一些管理查询并sp_spaceused在SQL Server 2008中编译结果,以查看数据库中某些表的数据/索引空间比率.当然,我在结果中得到了各种各样的大数字,我的眼睛开始变得光彩照人.如果我可以用逗号格式化所有这些数字将非常方便(987654321变为987,654,321).有趣的是,在我使用SQL Server的这么多年里,这个问题从来没有出现,因为大多数时候我会在表示层进行格式化,但在这种情况下,SSMS中的T-SQL结果就是表示.

我只考虑创建一个简单的CLR UDF来解决这个问题,但看起来这应该只是普通的旧T-SQL.那么,我将在这里提出问题 - 你如何在vanilla T-SQL中进行数字格式化?

t-sql sql-server

183
推荐指数
9
解决办法
45万
查看次数

在Rails 3中删除ActiveRecord

现在Rails 3测试版已经发布了,我想我会重新编写一个我刚刚开始在Rails 3测试版上工作的应用程序,这两个版本都是为了感受它并获得一些启动.该应用程序使用MongoDB和MongoMapper的所有模型,因此不需要ActiveRecord.在以前的版本中,我按以下方式卸载activerecord:

config.frameworks -= [ :active_record ]    # inside environment.rb
Run Code Online (Sandbox Code Playgroud)

在最新版本中,这不起作用 - 它只是抛出一个错误:

/Library/Ruby/Gems/1.8/gems/railties-3.0.0.beta/lib/rails/configuration.rb:126:in
  `frameworks': config.frameworks in no longer supported. See the generated 
  config/boot.rb for steps on how to limit the frameworks that will be loaded 
  (RuntimeError)
 from *snip*
Run Code Online (Sandbox Code Playgroud)

当然,我已经按照它的建议查看了boot.rb,但据我所知,这里没有任何关于如何卸载AR的线索.我需要这样做的原因是因为加载一些我不想要的东西不仅是愚蠢的,而且即使我试图为控制器运行一个生成器时它也无法建立数据库连接.这是因为我已经擦除database.yml并用MongoDB的连接细节替换它,以便使用这个要点将database.yml用于MongoDB连接细节.不知道为什么它需要能够启动数据库连接才能生成控制器....

有人知道正确的Rails 3方式吗?

ruby-on-rails ruby-on-rails-3

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

使用SQL Server SELECT INTO创建可为空的列?

当我使用select intoSQL Server 创建临时表时,有没有办法指定列应该可以为空?我有一个多步骤的过程,我通过选择很多列来制作临时表(这就是我不做的原因create table #tmp (...)).在我创建临时表之后,我正在更新一些列,其中一些更新可能会使某个字段无效.

我知道我可以做一个alter table alter column声明来实现我想要的东西,但我很好奇是否有办法在select自己中指定它.我知道你可以内联cast列以获得所需的数据类型,但我看不出你如何指定可空性.

t-sql sql-server

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

如何在有效的XML文档中定义HTML实体引用?

我需要能够引用命名的HTML实体,•而不是•XML文档中的Unicode替代.我可以控制XML文档的某些部分,例如定义DOCTYPE,但在实际的XML中进行查找和替换不是一种选择.我能得到这样一些元素 ,并&通过包括XHTML过渡DOCTYPE,但我需要更多的手动定义.我该怎么做呢?

- 编辑 -

感谢Jim的回答,这就是我最终的结果.这很好,因为我可以使用XHTML过渡实体,并添加我自己的:

<!DOCTYPE
   html
   PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
   [
      <!ENTITY bull  "&#8226;">
      <!ENTITY ldquo "&#8220;">
      <!ENTITY rdquo "&#8221;">
      ... etc ...
   ]
>
Run Code Online (Sandbox Code Playgroud)

xml xhtml dtd

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

VB中的.NET 4.0框架动态功能与Option Strict On?

是否有任何方法可以在4.0框架中使用新的动态功能,如ExpandoObjectVB.NET中没有设置Option Strict Off?使用C#,只有使用您明确声明的变量才会丢失类型安全性dynamic.但是使用VB,我发现使用这些功能的唯一方法就是Option Strict Off从一开始就在VB.NET中使用的旧技巧.如果没有Option Strict,文件中的所有内容都会被模糊输入污染,如下所示:

Option Explicit On
Option Strict Off
Option Infer On

Partial Public Class ClassX

   Public Sub TestDynamic()
      Dim dyn As Object = New System.Dynamic.ExpandoObject()
      Dim a As String = 1 ''# Ew!
      Dim obj As Object = "999"

      dyn.Str = a   ''# a is a string, remember?  Even though it has a number
      ''# dyn.Str = 1 : Type = System.String
      Console.WriteLine("dyn.Str = …
Run Code Online (Sandbox Code Playgroud)

vb.net dynamic .net-4.0 expandoobject

16
推荐指数
1
解决办法
7349
查看次数

代码优先实体框架可以在同一个框中与SQL Server DB交叉数据库查询吗?

我知道有很多关于Entity Framework在发布到stackoverflow的同一服务器上进行跨数据库查询的问题.大多数情况下,答案似乎是"不",并且引用了2008年的这种联系.然而,实体框架一直在变化,并且CTP5出来了,我想知道答案是否仍然相同 - 你不能这样做,或者如果你手动编辑edmx文件就可以做到,或者你有使用视图.仅此功能就是我仍然依赖于Linq-to-SQL的原因,因为我们在同一台服务器上有多个SQL Server 2008数据库,需要对它们进行查询.使用数百个select *视图对我们的数据库进行污染不是一种选择,使用代码优先开发我没有要编辑的edmx文件.我正在玩pubs数据库,看看我是否可以到达某个地方,但我被卡住了.有什么建议?

using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.ComponentModel.DataAnnotations;
using System.Data.Entity;
using System.Data.Entity.ModelConfiguration;

namespace DbSchema {
    public class Employee {
        [Key]
        public string ID { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
        public short JobID { get; set; }
        public Job Job { get; set; }
    }

    public class Job {
        [Key]
        public short ID { …
Run Code Online (Sandbox Code Playgroud)

sql-server entity-framework ef-code-first

13
推荐指数
2
解决办法
8649
查看次数

VB.NET linq group by匿名类型不能按预期工作

我正在玩弄LINQPad附带的一些linq样本.在"Nutshell中的C#3.0"文件夹中,在Chater 9 - Grouping下,有一个名为"按多个键分组"的示例查询.它包含以下查询:

from n in new[] { "Tom", "Dick", "Harry", "Mary", "Jay" }.AsQueryable()
group n by new
{
    FirstLetter = n[0],
    Length = n.Length
}
Run Code Online (Sandbox Code Playgroud)

我将字符串"Jon"添加到数组的末尾以获得实际的分组,并得出以下结果:

C#LINQPad结果

这正是我所期待的.然后,在LINQPad中,我去了相同查询的VB.NET版本:

' Manually added "Jon"
from n in new string() { "Tom", "Dick", "Harry", "Mary", "Jay", "Jon" }.AsQueryable() _
group by ng = new with _
{ _
    .FirstLetter = n(0), _
    .Length = n.Length _
} into group
Run Code Online (Sandbox Code Playgroud)

结果没有正确地将Jay/Jon组合在一起.

VB.NET LINQPad结果

把我的头发拉了一下之后,我发现这篇MSDN文章讨论了VB.NET的匿名类型.在VB.NET中,默认情况下它们是可变的,而不是C#,它们是不可变的.在VB中,您需要添加Key关键字以使它们不可变.所以,我将查询更改为此(注意添加Key):

from n in new string() …
Run Code Online (Sandbox Code Playgroud)

c# linq vb.net immutability linqpad

11
推荐指数
1
解决办法
2818
查看次数

如何使用.html.erb作为Sinatra视图的文件扩展名?

如果我有以下Sinatra代码:

get '/hi' do
  erb :hello
end
Run Code Online (Sandbox Code Playgroud)

如果我有一个名为的文件,这很好用views/hello.erb.但是,如果我有一个名为views/hello.html.erbSinatra的文件找不到该文件并给我一个错误.我如何告诉Sinatra我希望它.html.erb作为有效的.erb扩展名寻找?

ruby erb sinatra

10
推荐指数
2
解决办法
6953
查看次数

VB.NET中选项比较二进制/文本的优缺点

标准化使用Option Compare Text与Option Compare Binary进行VB.NET开发的优缺点是什么?

---编辑---

只是一些背景,因为它似乎将帮助-我的开发团队已经发现它更容易实现标准化Option Strict On,Option Infer On以及Option Explicit由于对替代品的优势明显.我们没有发现容易标准化的选项比较文本/二进制文件,因为两者似乎都有优点和缺点,不同的开发人员有不同的意见.每一方的一些论点如下:

Option Compare Text的一些优点/参数:

  1. 它通过消除StringComparers和.ToLower()调用以及StringComparison.OrdinalIgnoreCase整个地方的需要来减少代码中的冗长
  2. 数据需求很少涉及套管,大多数数据库都不区分大小写.很少会永远真的要区分THISThisthis时做一个数据比较.
  3. 当您不必担心套管时,某些特定用例更简单.例如,处理ASP.NET控件事件,其中命令被发送到代码隐藏作为字符串和套管问题很难跟踪,因为编译器无法帮助您.认为Select Case对报表<asp:repeater>项目为例.
  4. 提出的关于文本比较的许多问题涉及国际化,这通常与许多应用程序无关.
  5. VB特别是作为一种语言不区分大小写,尽管Visual Studio至少可以帮助您在外壳中强制执行一致性.SQL也不区分大小写.字符串是你唯一需要记住担心它的地方,如果你担心它到处都会突出你通常不会注意到的方式的尴尬.

Option Compare Binary的一些优点/参数:

  1. 与大多数其他语言一样,C#以这种方式工作.具有替代行为并且意外在编程中不好有点意外.
  2. 使用选项比较文本会有轻微的性能损失,这可以通过编译时生成的IL来证明.选项比较二进制没有那个惩罚.
  3. 选项比较文本仅使字符串处理的某些部分不区分大小写.但是,它并不能使字典索引这样的东西默认情况下不区分大小写.因此,它不像选项比较文本实际上使它,所以你根本不必担心套管.如果它只在中途工作,为什么要这么麻烦?
  4. 编程很难.最好不要试图平息这个事实.担心字符串套管是交易的一部分.人类认识THIS不同于ThistHiS.当然你的代码也应该 - 毕竟,它们并不是完全相同的字符串.

所以我真的只是想知道是否还有其他考虑因素.

- 编辑2 -

如果我定义了我认为对此的答案,也许会有所帮助.如果您可以指出任何权威的外部资源,更彻底地讨论这些问题,或指向标准和最佳实践讨论或书籍,提供有关该主题的指导,那肯定会重要.

vb.net

8
推荐指数
2
解决办法
7276
查看次数

SQL Server Compact Edition和真正的SQL Server之间的T-SQL差异?

来自广泛的SQL Server T-SQL背景,我无法找到任何描述SQL CE和完整的SQL Server之间的T-SQL支持差异的特定文档.你遇到了哪些不同之处?在某处有并排的T-SQL比较吗?我在这里看过MSDN文档,但我似乎无法找到有关哪些T-SQL语句在两者之间不可移植的任何细节.我发现的一个不同之处是缺少ISNUMERIC()函数.还有其他人?

注意:我对DML功能的差异比DDL和管理功能更感兴趣,我确信这些功能很多并且完全无趣.

t-sql sql-server sql-server-ce

6
推荐指数
1
解决办法
2614
查看次数