misc.log

日常茶飯事とお仕事と

SQLServer

SQL ServerのSQL整形アドイン(これはいい!)

SQL Server Management StudioでのSQL作成時に、SQL文を整形してくれるツールが無いかと思い探したところ、Poor Man's T-SQL Formatterというアドインが紹介されているのを見つけました。SQL Server Management Studio で SQLを一発整形 – gomokulog作成元の…

SSISでパッケージファイルのパスワードが開けない、設定ファイルもうまくいかない…(調査中メモ)

Microsoft Visual Studio 2013 ShellのSQL Server Integration Services(SSIS)デザイナーでSSISの処理定義を作成し、ビルドしてできた拡張子dtsxのファイルをDBサーバー上で動かそうとしているのですが、うまく行きません。特に何も設定無しで作成し、デー…

SQL Server、OpenQueryでのSQLは文字列連結などが使えない?

SQL ServerからOracleにリンクテーブル経由でアクセスしていろいろデータを持ってくる処理を作成中。サーバー名やらスキーマ名やらをピリオドでつないだSQL記法だとインデックスが使えず遅いため、SQL ServerのOpenQuery命令でSQLごとOracleに渡し、Oracle側…

ASP.NET/ADO.NETからの実行だと遅いストアドプロシージャ問題、とりあえず解決にめど

昨日書いたこれ……backyard.hatenablog.comSQL Server Management Studioから実行すると1~2秒で結果を返すストアドプロシージャが、なぜかASP.NETのWebアプリから実行すると4分~5分もかかるという問題。とりあえず速度差が無くなったので報告。 対応案 Stac…

SQL Server、ストアドプロシージャ実行計画のキャッシュを確認する(メモ)

メモです。忘れないように。 SQLサンプル SQL Serverのストアドプロシージャ、実行計画のキャッシュ情報を調べるSQL例。 select * from sys.dm_exec_procedure_stats where object_id='2049442375' order by last_execution_time desc select * from sys.dm_…

Webアプリから実行すると遅いSPが、SSMSからだと速い

※一応解決。最新情報は → http://backyard.hatenablog.com/entry/20160810/1470796194 ちょっとメモ。とあるストアドプロシージャが、Webアプリ(ASP.NET、ADO.NET経由)で実行するとタイムアウトしたりしなかったりなのですが、SSMS(SQL Server Management…

自動生成されたユニークキーをSQL Serverで扱う場合の注意

何かのシステムが吐き出したキー文字列をSQL Server上でキーとして利用する場合、照合順序に気をつけましょう。特にアルファベットを多用したキーの場合、キー重複でやられる可能性があります。SQL Serverで日本語を扱うDBを作った場合、たいていテーブルや…

SQL Serverの照合順序、略号の意味

SQL Serverの照合順序設定についている「CI_AS」とかって「Case Insensitive」「Accent Sensitive」の略だったのですね……気になるようできちんと調べたことがありませんでした。納得です。こちらのブログで説明されていて知りました。 SQL Server 照合順序の…

文字コード関連の過去エントリー

なんか自分よりずっと前からウェブ関連やってる人たちが全然文字コードとか気にしてなくてノウハウも持ってなくてちょっと参ってるので、とりあえず過去に自分が書いたものを列挙しておきます。何か聞かれたときにさっと調べられるように。 文字コード全般 b…

SQL Server のText型に対するInsertに関する制約は?

お仕事メモ。SQL Server 2012上に用意したテーブルのText型カラムに、長い文字列を突っ込もうとしたところ「入らない」という事態が発生。書き込み処理はLinux上で稼働するPHPから。疑うべきポイントはドライバやSQL Serverの設定やらいろいろありそうなので…

SQL ServerからImage列の内容をファイルとして出力する

SQL ServerのImage型にバイナリデータが突っ込まれている場合、それの内容を見たいと思っても出す方法が見当たりません。先日、そういうデータの取り出し作業があった際はVB.NETでツールを作ったのですが、どうやらSQLからbcpコマンドを無理やり実行する方法…

DTSの定義情報をVisual Studio 2008で確認する(断念…)

結論からいうと、自分の作業環境ではできませんでした。念のため試したことを記載しておきます。参考まで。古いシステムの刷新プロジェクトで、SQL ServerのDTS(Data Transformation Services)が利用されていたので、その内容を見たいのですが…。手元にあ…

SQL ServerからExcelにエクスポートすると先頭空白のデータから空白が消える?

現象等厳密に把握できていないので、とりあえずメモ書き。SQL Server 2012のManagement Studioから、エクスポート機能でテーブルの内容をExcel 2007形式にエクスポートしたところ、先頭が半角空白のデータから先頭空白が消えるという現象がでてしまいました…

だれだよvarcharで宣言したのは。ユニコード文字がDBに入らない

SQL Serverを使った古いシステムの移植作業でDBの定義はそのまま使いまわすということで作業を進めていたのですが、なぜか投入した文字データが化ける。よくよく見てみると型宣言がvarcharになっていました。これですが、SQL Serverだと varchar : 可変長文…

SQL Serverのストアドファンクションで引数を省略する……使いづらい(笑

SQL Serverのストアドプロシージャでは、引数宣言の際にデフォルト値を設定することで引数の省略が可能になります。たとえばこんな感じ。 @KEYVALUE int, @OPTIONVALUE int = 1 ストアドファンクションも同じように宣言できるのですが、省略宣言した場合でも…

SQL Serverのインデックスサイズは1件900バイトまで

とある設計資料で、巨大な可変長文字列「だけ」のテーブルで、その列が主キー設定されていました。主キーということはインデックスが作成され、インデックス自体にはその内容が転記されるかな?と思ったため、「これはインデックスサイズでかすぎてアウトだ…

SQL Server→PostgreSQLのテーブル変換

お仕事で、SQL ServerからPostgreSQLへのDB移設を行う必要が出てきたので、具体的な方法等について確認中。とりあえず、公式コミュニティで関連資料やツールをまとめられていたのでそこを参考にしています。 下記リンクに各種DBとの変換に関する情報がまとめ…

Windows Server 2008 R2上のPHPからSQL Server 2000に接続する

7月に、Windows Server 2008 R2上で動くPHPで作ったアプリから、SQL Server 2000にアクセスできるか?というのを試していたのですが、試行の過程を記録していませんでした。簡単ですがメモっておきます。多分あとで自分が使うので。発端については7月15日に…

PHPからSQL Server 2000へ接続する

表題の通り、PHPからSQL Server 2000に接続するシステムの実現性についてちょいと調べないといけないのでメモしておきます。今更SQL Server 2000かと思われるかもしれませんが、実際にはまだ稼働しているものはいっぱいあるんじゃないでしょうか。というわけ…

SQL Serverのサーバー間ストアドプロシージャ差異調査

ストアドプロシージャを使った開発で、ストアドプロシージャのソース管理や変更管理がうまくいってません。設計資料にも記載が無かったり、そもそもストアドプロシージャでやってるのか.NETでやってるのかも資料上明確でないという状況。というわけで、結構…

ActiveX Data Object 2.8と6.1はどっちが古いの?

よくわからんです。Excel VBAでDBアクセス処理の試作を行う必要があり、簡単なDBアクセス処理を書いているんですが、参照させるライブラリが分かりません。下記のどれが最新なんだろう? Microsoft ActiveX Data Objects 6.1 Library (msado15.dll) Microsof…

SQL Serverのバージョンを調べる

既に稼働しているSQL ServerのバージョンをSQLで調べる方法のメモ。以下のSQLを実行すれば結果が出ます。 SELECT @@VERSION 結果はこんな感じで。よくわかるSQL Server 2012データベース構築・管理入門編 (TECHNICAL MASTER)作者: 長岡秀明出版社/メーカー: …

片方のリストに有って、他方に無いものを探すSQL

システム開発後のデータ整合性調査や不具合調査などの中で、二つのテーブルにあるIDなどを比較、片方にしかないもの(いわゆる差異、差分)を探すという場面があったりします。こういう時、意外にみんな必死にExcelに貼り付けて比較式を書いたり、Accessに取…

ストアドプロシージャ、習得に向けた入り口まとめ

かれこれ15年以上逃げ続けてきたストアドプロシージャをはじめとした「データベースに直接触れる系の開発」、逃げ場が無くなってきたので対峙することにします(←そんなことないだろ?と言われがちですが、はい、データベースとSQL、苦手なんです。ついでに…

SQL Serverで検索結果に通し番号を打つ

ちょっと調べることがあったので。SQL Serverで、Select文による検索の結果にあらかじめ通し番号を打っておきたかったので調べてみました。TestTableというテーブルにTestFieldという列があり、その列の内容順で通し番号を打つ場合 select ROW_NUMBER() OVER…

SQL Server Managerment StudioでIntellisenseが効かない場合

SQL Server 2008のSSMS(SQL Server Management Studio)で、SQL文を書いている際に次の入力候補を表示してくれるIntellisense(インテリセンス)機能が効かない場合、インテリセンスのローカルキャッシュを削除することで解決するみたいです。こちらのブロ…

SQL Server Management Studioでの自動コミットをオフにする

とりあえずのメモ。 [ツール]-[オプション]→「クエリ実行」→「SQL Server」→「ANSI」の設定画面を開く。 「SET IMPLICIT_TRANSACTIONS」(暗黙的なトランザクション)をONにする。 こんだけのようです。暗黙的なトランザクションをON、ということで、何も宣…

SQL Server 2012につながる以前につながらねぇ

さてと、お試し用に導入したWindows Server 2012にSQL Server 2012を入れて、簡単なテーブルとデータも作成したので、Webだなんだのアプリからつなぐ練習をするまえに「まずは外から見えてるよね?」という確認を。Windows ServerはVMware Workstation 9.0で…

SQL Serverでの「オートナンバー」型

すっかり忘れてる。っていうか以前からそうだったっけ?SQL Serverで通し番号のような、特に人間が指定しなくても勝手に決めてもらって構わない番号などを生成するデータ型が何だったか思い出せず、調べてしまいました。「Identity列」として対象の列を指定…

SQL Server 2012にはコアライセンスが導入される

4月1日発売というアナウンスがでたSQL Server 2012、ライセンス体系で従来あった「CPUライセンス」が変わり、「Computing Powerライセンス」というものに変わるそうな。何かというと、コア数課金です。 「Oracleを抜いて真のトップに」、日本マイクロソフト…

SQL Serverのホスト名を変える

既に稼働しているSQL Serverのホスト名(サーバー名)を変える、という作業 でトラブった人は結構居るみたいで...質問されても答えられない自分が居たの でちょっと調べてみました。こんなのが引っかかりました。 SQL Server 2005のインストールサーバでのホ…

SQL Server 2005 トランザクションログの切り捨てが行われない

SQL Server 2005で、完全復旧モデルを取っているデータベースのバックアップファイルのうち、トランザクションログのファイルがどうもでかいままになっている(切捨てが行われていない)件についてのメモ。 トランザクションログの切り捨て http://msdn.micr…

SQL Serverのバックアッププラン(2)

SQL Server 2005で構築しかけている社内の軽いシステム(本当は軽くないんだけど、業務指示として「軽めの対応でいけ」との指示が出たので軽くなってます)について、http://d.hatena.ne.jp/frontline/20090624/p3 にあるような相談を昨日受けました。で、「…

SQL Serverのバックアッププラン

SQL Serverで作成している社内向けの仕組みについて、バックアップの取り方についての質問を受けましたが、正直SQL Severの実運用についての手順や機能については詳しく有りません。ということを伝えたのですが、宛先がToで私、CCで関係者というメールが資料…

SQL Server 2005とAWE

メモメモ。 SQL Server 2005 Tips and Tips / 第6回 2GBを超える物理メモリをSQL Serverが使用できるように設定しよう http://www.microsoft.com/japan/sql/ssj/tips/06.mspx SQL Serverのエディションに制限があるみたい。Standard、Enterprise、Developmen…

Spotlight On SQL Server Enterprise

SQLサーバーにAWEの設定をした場合に、実際にメモリがどう使われているのか、とか、/3GBオプションでユーザーアドレス空間を拡張したときにきちんとそれを使っているのだろうか、なんてのを調べたかったのですが、あまり詳しくないので困ってました。そこで…

SQL ServerでAWEによる大容量物理メモリを使ってみる

Windows Server 2003に/3GBオプションを付けることで、ユーザープロセス用のアドレス空間を2GBから3GBに拡張出来ることを確認する作業自体は、http://d.hatena.ne.jp/frontline/20081009/p1 に記載したとおり一応の確認を終えて完了。次は、仮想アドレス空間…

16GB以上の物理メモリをAWEで使う場合

SQL Server 2008 オンライン ブック (2008年8月) プロセス アドレス空間 http://msdn.microsoft.com/ja-jp/library/ms189334.aspx 16GBを越えるメモリにアクセスする場合には、システム用に2GBのアドレス空間が必要なため、システム用空間を1GBに削減してユ…

SQL Server 2008 Enterprise プロセッサライセンスの値段

Amazonで調べてみたら、約430万ですか。これAmazonで買えるんですか!? SQL Server 2008 Enterprise 日本語版 プロセッサ ライセンス出版社/メーカー: マイクロソフト発売日: 2008/09/19メディア: DVD-ROMこの商品を含むブログ (1件) を見る

SQL Sever 2005 SP1をインストールしてエラー

SQL Server 2005 Express Editionがインストールされている環境に、SQL Server 2005 Standardをインストールした。このとき、アップグレード扱いにするため、Setup.exeをコマンドラインから以下のようにして起動している。 setup.exe SKUUPGRADE=1 で、ここ…

DotNetNuke 4.5.5

訳あってDotNetNukeを再度利用する(できるように)準備することに。ま、実際に使うかどうかは未定だが。すでにバージョン3(詳細バージョン忘れ)が入った状態でアップグレードを試みるも、いくつか壁にぶつかった。 そもそもエラーがでてアップグレード用イン…

久々にDotNetNuke...エラー

久々にDotNetNukeのサーバーを立ち上げようとしたのだが、エラーが出る。そういえば、PCを移動してIPアドレスが変わってしまっている。調べたところ、以下の手順で解決できるとのこと。 利用しているSQL Serverの PortalAlias テーブルにあるIPアドレスを修…

DotNetNuke ForumモジュールのConfigurationを指定するエラーが出る件について

DotNetNuke標準のForumモジュールで、Configuration(設定)機能を呼ぶとエラーが出る。最新版の3.20.1にアップデートもしてみたのだがダメ。ポータルには2つの掲示板モジュールがあり、片方は問題無いのがまたやっかい。 http://www.dotnetnuke.com/Communi…

Visual Basic 2005 Express

VMWare上のWindows 2000にインストールしてみる。 いっしょにSQL Server 2005のExpress Editionもインストールされるようだ。利用感....これはイイ!

職場PC不調

先日からの、ケンミレソフトのJAVA部分と思われる処理でPCが落ちる*1件を始め、ここ数回、起動に失敗するという事例が発生している。先々月に壊れたハードディスクといい、どこかマザーボード上の何かが壊れているのではないかとも思える。 今日は、一度起動…

DotNetNuke 検索がうまくいかない

検索結果が何も出てこない。なんでだろうと調べる過程で行き着いたサイトを掲示しておく。 http://www.dnnportal.de/Downloads/tabid/176/ItemID/135/Default.aspx http://www.innovatasites.com/ecktwo/Tutorials/DNNSearch/tabid/1341/Default.aspx?PageCo…

OracleとSQL ServerのSQLの違い

備忘録。 2列に対してDistinctを用いた検索結果の件数を数える場合のSQLで、違いがあった。 [SQL SERVER] Select count(*) From (Select Distinct A, B From TableC) As Result [ORACLE] Select count(*) From (Select Distinct A, B From TableC) 違いは、F…

イメージビューワ作成(ほぼ完成?)

特定の条件に基づくイベントを受け、定義テーブルに設定された検索条件にマッチするイメージを表示するアプリケーションほぼ完成。イメージストレージとしては、自社製品のイメージ管理システムと、SQL Serverに対応することになっているが、SQL Serverへの…

Webサービス実験の日

今日、明日のうちに、Webサービスについての機能的な概要と、ADO.NET、ASP.NETについて掌握する必要がある。無理だし。 Webサービスについては、ローカルで入れたSQL Serverを相手に、SQL文を発行してDataSetを返すようなサンプルを作ってみた。クライアント…

SQL Server 2000でXML

XMLデータをそのままネイティブ保存するってのは、次のSQL Server、コードネームYukonの機能のように思えるのだが... http://www.microsoft.com/japan/msdn/sqlserver/dnsql90/sql_YukonXMLBestPs.asp 実際のところどうなんだろうか。