您好,我正在使用 Visual Studio 2015 构建数据库 但是有一些错误打断了我的工作
这是我的表查询:
CREATE TABLE [dbo].[Post] (
[Id] INT NOT NULL,
[job_desc] NTEXT NOT NULL,
[UID] INT NOT NULL,
[TheWork] NVARCHAR(50) NOT NULL,
[Photo_Of_Work_1] NCHAR (50) DEFAULT ('W_No_Pho') NULL,
[Photo_Of_Work_2] NCHAR (50) DEFAULT ('W_No_Pho') NULL,
[Photo_Of_Work_3] NCHAR (50) DEFAULT ('W_No_Pho') NULL,
[DT] DATETIME NOT NULL,
[Salary] MONEY NULL,
PRIMARY KEY CLUSTERED ([Id] ASC),
CONSTRAINT [FK_Post_ToPerson] FOREIGN KEY ([UID]) REFERENCES [dbo].[Person] ([Id])
);
所以我有 job_desc 列,类型是 ntext 所以我不能在上面使用普通索引所以我必须使用 full-text-index
我这里有这段代码:
GO
CREATE UNIQUE INDEX jdui ON [Post] ([job_desc]);
GO
CREATE FULLTEXT CATALOG ftc AS DEFAULT;
GO
CREATE FULLTEXT INDEX ON [dbo].[Post] ([Job_Desc]) KEY INDEX jdui ON ftc WITH CHANGE_TRACKING AUTO
但是我真的不知道为什么每次更新都会出错, 这是错误语法:
Message SQL00000 Creating [dbo].[Post].[jdui]... Error SQL72014 .Net SqlClient Data Provider: Msg 1919, Level 16, State 1, Line 1 Column 'job_desc' in table 'dbo.Post' is of a type that is invalid for use as a key column in an index. Error SQL72045 Script execution error. The executed script: CREATE UNIQUE NONCLUSTERED INDEX [jdui] ON [dbo].[Post]([job_desc] ASC);
Message SQL00000 An error occurred while the batch was being executed.
所以任何人都可以帮助我
最佳答案
按照设计,SQL Server 不允许在列类型上使用任何索引,例如 nText 、Text 、varchar(max) 或 nVarchar(最大)。
在这里,您试图在 job_desc 列上创建一个 Unique 约束,它是 NTEXT 类型,因此出现错误。
现在你可能会问,sql server 不允许任何索引,但你正在尝试创建一个唯一约束,事实上,当我们在一个列上创建一个唯一约束时,sql server 在后台创建了一个 Unique non-Clustered 索引以强制该列的唯一性。因此错误信息。
解决方案
将列的类型更改为您可以在其上创建索引的类型,例如 Varchar(8000) 或 nVarchar(4000) 。
或者选择一个备用列来创建索引。也许是 Id 列。
关于mysql - 如何在没有错误的列上创建全文索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33202839/
出于纯粹的兴趣,我很好奇如何按顺序创建PI,而不是在过程结果之后生成数字,而是让数字在过程本身生成时显示。如果是这种情况,那么数字可以自行产生,我可以对以前看到的数字实现垃圾收集,从而创建一个无限系列。结果只是在Pi系列之后每秒生成一个数字。这是我通过互联网筛选的结果:这是流行的计算机友好算法,类机器算法:defarccot(x,unity)xpow=unity/xn=1sign=1sum=0loopdoterm=xpow/nbreakifterm==0sum+=sign*(xpow/n)xpow/=x*xn+=2sign=-signendsumenddefcalc_pi(digits
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
大约一年前,我决定确保每个包含非唯一文本的Flash通知都将从模块中的方法中获取文本。我这样做的最初原因是为了避免一遍又一遍地输入相同的字符串。如果我想更改措辞,我可以在一个地方轻松完成,而且一遍又一遍地重复同一件事而出现拼写错误的可能性也会降低。我最终得到的是这样的:moduleMessagesdefformat_error_messages(errors)errors.map{|attribute,message|"Error:#{attribute.to_s.titleize}#{message}."}enddeferror_message_could_not_find(obje
如何在buildr项目中使用Ruby?我在很多不同的项目中使用过Ruby、JRuby、Java和Clojure。我目前正在使用我的标准Ruby开发一个模拟应用程序,我想尝试使用Clojure后端(我确实喜欢功能代码)以及JRubygui和测试套件。我还可以看到在未来的不同项目中使用Scala作为后端。我想我要为我的项目尝试一下buildr(http://buildr.apache.org/),但我注意到buildr似乎没有设置为在项目中使用JRuby代码本身!这看起来有点傻,因为该工具旨在统一通用的JVM语言并且是在ruby中构建的。除了将输出的jar包含在一个独特的、仅限ruby
我正在使用的第三方API的文档状态:"[O]urAPIonlyacceptspaddedBase64encodedstrings."什么是“填充的Base64编码字符串”以及如何在Ruby中生成它们。下面的代码是我第一次尝试创建转换为Base64的JSON格式数据。xa=Base64.encode64(a.to_json) 最佳答案 他们说的padding其实就是Base64本身的一部分。它是末尾的“=”和“==”。Base64将3个字节的数据包编码为4个编码字符。所以如果你的输入数据有长度n和n%3=1=>"=="末尾用于填充n%
我好像记得Lua有类似Ruby的method_missing的东西。还是我记错了? 最佳答案 表的metatable的__index和__newindex可以用于与Ruby的method_missing相同的效果。 关于ruby-难道Lua没有和Ruby的method_missing相媲美的东西吗?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/7732154/
使用带有Rails插件的vim,您可以创建一个迁移文件,然后一次性打开该文件吗?textmate也可以这样吗? 最佳答案 你可以使用rails.vim然后做类似的事情::Rgeneratemigratonadd_foo_to_bar插件将打开迁移生成的文件,这正是您想要的。我不能代表textmate。 关于ruby-使用VimRails,您可以创建一个新的迁移文件并一次性打开它吗?,我们在StackOverflow上找到一个类似的问题: https://sta
我对最新版本的Rails有疑问。我创建了一个新应用程序(railsnewMyProject),但我没有脚本/生成,只有脚本/rails,当我输入ruby./script/railsgeneratepluginmy_plugin"Couldnotfindgeneratorplugin.".你知道如何生成插件模板吗?没有这个命令可以创建插件吗?PS:我正在使用Rails3.2.1和ruby1.8.7[universal-darwin11.0] 最佳答案 随着Rails3.2.0的发布,插件生成器已经被移除。查看变更日志here.现在
exe应该在我打开页面时运行。异步进程需要运行。有什么方法可以在ruby中使用两个参数异步运行exe吗?我已经尝试过ruby命令-system()、exec()但它正在等待过程完成。我需要用参数启动exe,无需等待进程完成是否有任何rubygems会支持我的问题? 最佳答案 您可以使用Process.spawn和Process.wait2:pid=Process.spawn'your.exe','--option'#Later...pid,status=Process.wait2pid您的程序将作为解释器的子进程执行。除
我有一个奇怪的问题:我在rvm上安装了rubyonrails。一切正常,我可以创建项目。但是在我输入“railsnew”时重新启动后,我有“程序'rails'当前未安装。”。SystemUbuntu12.04ruby-v"1.9.3p194"gemlistactionmailer(3.2.5)actionpack(3.2.5)activemodel(3.2.5)activerecord(3.2.5)activeresource(3.2.5)activesupport(3.2.5)arel(3.0.2)builder(3.0.0)bundler(1.1.4)coffee-rails(