2016-04-17 14 views
1

私はここで質問をする時点に至るのが最善ですが、完全な状況を説明しなければ、 (私は実際に太字で始まる第3段落から始めることを実際に説明する)この場合、私はそれをとにかく説明しなければならなかったので、私は行かなくてはならないと決めました。列の全文のためのSqlクエリ

私はより良いノートパソコンを持っていましたが、私の兄弟のフェレットはそれに水をこぼしました。だから、昨年、私は古いノートパソコンを使用してきました。それは動作し、十分に速いです。しかし、それはWindows 7に付属して、私はそれにWindows 8,8.1、および10をインストールしました。私がこのマシンを持っていたころ(そしてそれ以前にも)、私は趣味としてコンピュータプログラミングを行ってきましたが、かなり礼儀正しくなりました。しかし、私はそれにVisual Studio 2010、2012、2013、および2015をインストールしました(新しいVisual Studioをインストールしたときに古いVisual Studioをアンインストールしたときに1度メモリが使用されたため、古いVisual Studioをインストールすると何とか新しいVisual Studioに何か影響を及ぼし、Windowsを再インストールして正方形のものからやり直す必要があったため、このマシンにWindowsを再インストールするのは恐ろしい決断でした。もう一度やり直しの趣味として、それは私が緩んでほしくない - 他の理由の中で)音楽制作のための非常に重要なプラグインのライブラリを持っています。

しかし、私の質問の中核にある問題は、です。私は、2008年、2008 R2、2012年、2014年にこのマシンにSQL Serverのいくつかのエディションをインストールしました。 。 Visual Studio 2015では、SQLデータベースを簡単に作成および操作できます。しかし、Microsoft SQL Serverについて知っている人は誰もが知っているように、Visual Studio 2015(以前のエディションよりも高度な操作機能を備えている)でさえ、一部のデータベース操作機能があります。そのようなものはSQL Server Management Studioの内部にあります。さて、Windowsのいくつかのエディションでこのマシンの寿命中にSQL Serverのいくつかのバージョンをインストールしたので、かなり奇妙なことが起こりました。私は毎回SQL Serverをインストールしました - 私は高度なサービス(全文検索を有効にして)でインストールしました。 SQL Server Management Studio 2014 -に入ると、データベースシステムにログオンせず、(とりわけ...)というエラーメッセージが表示される "ネットワーク関連の、 "また、ポイントはです。以前はさまざまなプロジェクトでデータベースを作成していましたが、私はフルテキストサービスを(またはいくつかの...)列の前にテーブル。私はT-SQLを理解し、それを書くことができますが、私は例外的にそれに精通しているわけではありません。ですから、以前のデータベースで述べたようなフルテキストサービスをセットアップしたとき、SQL Server Management Studioの内部で(明らかに)完了しました。

ので、主なポイントはある -私は私が作ったこのデータベース内の特定の列にフルテキストサービスを設定したい表を持っています。この段落に続いて、私はテーブルスクリプトを作成する例を書いて、フルテキストサービスを適用したいコラムを強調しています。誰かがこれを正しく行う方法を教えてください。

CREATE TABLE [dbo].[thisTable] (
    [Id] INT    IDENTITY (1, 1) NOT NULL, 
    [aColumn] DATETIME  NOT NULL, 
    [INEEDFULLTEXTHERE] NVARCHAR (100) NOT NULL <<< the column I need full-text on 
) 

答えて

0

は、フルテキスト検索を有効にして、あなたのテーブルの使用上のカタログを作成するには、この:私は彼が来たという事実を尊重のうち、この質問への答えとしてgofr1の答えを選択することを決め

use MyDB 
go 

--Enable Full-text search on the DB 
if (select DATABASEPROPERTY(DB_NAME(), N'IsFullTextEnabled')) <> 1 
exec sp_fulltext_database N'enable' 
GO 

--Create a full-text catalog 
if not exists (select * from dbo.sysfulltextcatalogs where name = N'CatalogName') 
exec sp_fulltext_catalog N'CatalogName', N'create' 
GO 

exec sp_fulltext_table N'[dbo].[thisTable] ', N'create', N'CatalogName', N'IndexName' -- Id column in your examle 
GO 

--Add a column to catalog 
exec sp_fulltext_column N'[dbo].[thisTable] ', N'INEEDFULLTEXTHERE', N'add', 0 /* neutral */ 
GO 

--Activate full-text for table 
exec sp_fulltext_table N'[dbo].[thisTable] ', N'activate' 
GO 

--Full-text index update 
exec sp_fulltext_catalog 'CatalogName', 'start_full' 
GO 
+0

あなたの質問は間違いなくターゲットになっています。 (Visual Studioはエラーを報告していますが、クエリーには含まれていませんが、「使用できません」というエラーが報告されています)ユーザーインスタンス内の全文検索。だから、私は、Visual Studioのコンテキストがユーザーインスタンスのコンテキストにあると思います。そのため、Visual Studioではこのタイプのコマンドを実行できません。私はSQL Server Management Studioをどのように使うことができないのかを見て、別の質問があります(次のコメントに続きます...) – AspCoder

+0

Redgateにはいくつかの強力な機能を備えたアプリケーションがいくつかあります。これを達成できるRedgateアプリケーションはありますか? – AspCoder

+0

Hm ...これを確認してください:https://stackoverflow.com/questions/10845385/sql-error-cannot-use-full-text-search-in-user-instance the answer。フルテキストサービスは動作していますか?あなたは許可を持っていますか?申し訳ありませんが、私はRedgate製品を使用したことはありません、私はこの部分であなたを助けることができません:( – gofr1

1

私は彼の答えが適切に適用されれば確かにうまくいくと思います。残念ながら、私が言ったように、私はT-SQLにいくつかの知識を持っていますが、それは私が望むほど豊富ではなく、答えを適用しようとしましたが問題はありましたが、 T-SQLの知識があれば、それを完全に動作させるために少し調整することができました。しかし、私はそれが良い基準点だと思っており、貴重な視点を提供しています。

しかし、私は質問を投稿する前に、そのような難問に対する回答をもっと徹底的に調べておかなければなりませんでしたが、私はこの質問を聞いてgofr1の方法を明らかにしました - そして、 - よりいい。しかし、問題の事実は、より多くの問題を検索した後、私は実際に私のために働いてこれを行う方法を与えたstackoverflowの質問に出くわしました全くの多くの微調整をすることなく、少しストレート、その質問は次の場所にあります:Express with Advanced Services, can't create Full Text Index

もう一度gofr1さんにお返事いただき、ありがとうございます。

+0

私の喜び!そして幸運! – gofr1

+0

ええ、ありがとう。 – AspCoder

関連する問題