在Sql Server中改变用户定义的types

我在DB中创build了几个用户定义的types,如下所示 CREATE TYPE [dbo].[StringID] FROM [nvarchar](20) NOT NULL 并分配到各种表格。 我在db中的表格是在不同的模式(不仅是dbo) 但我意识到我需要更大的领域,我需要改变,例如从nvarchar增加到nvarchar,但没有ALTER TYPE语句 我需要一个脚本临时表/光标任何和保存在那里我的types使用的所有表和字段。 然后将现有字段更改为基本types – 例如从CustID [StringID]到CustID [nvarchar(20)]。 删除用户types并用新types重新创build – 例如nvarchar(50),最后将字段设置为用户types 我没有关于types的规则定义,所以不必删除规则并重新添加它们 我不是很熟悉T-Sql,所以任何帮助表示赞赏。

混合extern和const

我可以混合extern和const,作为extern const ? 如果是,那么const限定符是否仅在它声明的范围内进行统治,还是应该与它声明的平移单元的声明完全匹配? 也就是说我可以声明extern const int i; 即使当实际的我不是一个常量,反之亦然?

是否有可能分离Hibernate实体,以便更改对象不会自动保存到数据库?

我有Hibernate实体,我必须转换为JSON,我必须在实体中翻译一些值,但是当我翻译值时,这些值立即保存到数据库,但我不想将这些更改保存到数据库。 有没有解决这个问题的方法?

规避模板专业化

假设我是某个模板库( CTL )的用户,它定义了一个名为Hector的模板 template <class T> class Hector {…}; 而在它的文档中,它提供了关于Hector模板行为的许多保证。 但是,它也定义了一个特定types的专业化Cool template <> class Hector<Cool> {….}; 专业化的目的是Hector更优化的实施,但不幸的是,由于这种优化, Hector许多保证被违反。 目前我真的不需要优化,我宁愿保留Hector所有保证。 有什么办法可以在不改变库代码的情况下( CTL是一个非常值得尊敬的库,你知道),规避专业化? 任何方式呢? 也许写一些包装? 什么? 我只是希望编译器以正常的,非优化的方式为Hector<Cool>生成代码,并具有所有的保证。

在SVN中合并一系列修订与重新合并之间有什么区别?

我已经阅读了一些文档和博客关于合并一系列修订和重新合并之间的区别,但我没有得到一件事。 如果我select一个或其他方式合并分支到主干,合并有什么区别? 为什么合并一些修订版本在某些情况下不起作用,但是成功地重新合并将分支合并到trunk中?

有没有办法在内存中运行MySQL的JUnittesting用例?

我只是试图添加访问MySQL数据库的服务的testing用例,我想重新创build整个模式(对于某些场景,也只是使用MySQL转储文件和每个testing用例所需的数据)。 我环顾四周,发现有些人使用SQLite / H2和其他人来做到这一点,但是我只是在徘徊,如果有任何方式在内存中运行MySQL,所以我不需要担心任何特定于MySQL我可能会使用我们的服务方言。

从日,月和年生成NSDate

我试图从一个月和一年(所有的整数格式)生成一个NSDate。 现在我的尝试是这样的: NSCalendar *calendar = [NSCalendar currentCalendar]; NSDateComponents *components = [[NSDateComponents alloc] init]; NSNumber *day = [dataSource valueForKey:@"day"]; NSNumber *month = [dataSource valueForKey:@"month"]; NSNumber *year = [dataSource valueForKey:@"year"]; [components setDay:[day intValue]]; [components setMonth:[month intValue]]; [components setMonth:[year intValue]]; NSDate *_date = [calendar dateFromComponents:components]; 但是,当日= 24,月= 8,年= 2011时, _date输出以下内容: 0168-07-25 04:56:02 +0000 我一定在做一些可怕的错误,但我不知道是什么。 任何人都知道可能会发生什么?

在C#中,为什么“int”是System.Int32的别名?

由于C#支持Int8 , Int16 , Int32和Int64 ,为什么语言的devise者select将Int32定义为Int32的别名,而不是根据本机体系结构认为是一个word而使其变化? 我没有任何具体的需要,以行为不同于它的方式,我只是要求出纯粹的百科兴趣。 我认为64位RISC架构可能会存在,它将最有效地支持64位数量,并且其中32位数量的操作将需要额外的操作。 这样的架构在程序坚持使用32位整数的世界中处于劣势,这是另一种说C#成为未来语言的方式,从根本上防止了硬件devise者提出这样的问题未来的架构。 StackOverflow不鼓励推测答案,所以只有当你的信息来自可靠的来源时,请回答。 我注意到一些SO的成员是微软的内部人士,所以我希望他们能够在这个问题上启发我们。 注1:其实我读了所有的答案和SO的所有评论:假设在C#中int总是32位是安全的吗? 但对于我在这个问题上提出的问题,却没有提出任何暗示。 注2:这个问题在SO上的可行性(无疑)在这里讨论: Meta:我可以问一个“他们为什么这样做”types的问题?

Maven未能find当地的神器

偶尔,maven会抱怨在本地存储库中找不到在本地构build和打包的特定依赖项,而在构build另一个将其作为依赖项的项目中找不到该依赖项。 我们得到一个错误,如: 无法执行项目目标X:无法parsing项目X的依赖关系:未能在[archiva repository]中findY被caching在本地存储库中,直到内部更新间隔已过或更新被强制为止,parsing将不会被重试 – > 其中X是正在build造的项目,Y是所谓的失踪神器。 如果您查看本地存储库,那么工件就在那里。 这个工件永远不会安装在我们的archiva仓库中,所以这个问题纯粹是基于本地仓库。 我们在settings.xml中尝试了各种configuration文件,当然还有“mvn -U”。 既不好,也不应该,因为这个工件永远不会超过本地存储库。 似乎工作的唯一两件事是等待很长时间,直到maven smartens,或完全删除本地存储库。 推测等待选项与上述更新间隔有关。 我们已经遇到这个问题与Maven的3.0.2和3.0.3。 我们正在使用Archiva 1.0.3(但这不应该是一个因素)。 任何帮助将不胜感激。

如果谷歌应用程序脚本存储在像GitHub版本控制

我对pipe理Google App脚本共享开发的最佳方式感到困惑。 问题是,编辑谷歌应用程序脚本是通过一个在线编辑器完成自己的版本控制,但是这不是与其他开发人员共享,据我所知。 那么build议的做法是,我们从该编辑空间复制并粘贴到本地硬文件中,然后推入我们select的版本控制系统,然后当我们想要testing东西时,我们将其复制并粘贴回到在线编辑器中? 似乎凌乱和容易出错。 我看到一些人正在把他们的Google App脚本放在Github这样的地方: https://github.com/peterneubauer/neo4j-google-apps-script 我们可以直接从git推送到Google App脚本上,就像我们用Heroku一样。 真的想能够运行我的应用程序脚本的unit testing电池…