SQL Server Compact 3.5のSqlCeDataReaderをリードすると異常に遅い…

2009 年 4 月 23 日

SqlCeDataReaderをリードすると異常に遅い

photo by Bеn

SQL Server Compact 3.5のSqlCeDataReaderを使用して、”While”ステートメントでループ処理を行い、データをリード。

SQL Server 2008 ExpressではSqlDataReaderを使用して、同様の処理を行えますが処理時間が異常に違います。

なにか、設定が必要なのか?といっても、SqlCeDataReaderにはSeekぐらいしか見あたらないし……

続きを読む…

SQL Server, データベース , , , , , ,

SQL Server Compact 3.5ではSQL文は1文づつしか発行できません。

2009 年 4 月 23 日

SQL文は1文づつしか発行できません。

photo by tolis*

SQL Server 2008 Expressなどでは、SQL文をまとめて発行できます。

例えば下記のような文です。

コマンドラインで操作するときのように”;”でSQL文を締めて発行すれば受け付けてもらえます。

DELETE  from hoge WHERE hoge_id = 1;
DELETE  from hoge WHERE hoge_id = 2;
DELETE  from hoge WHERE hoge_id = 3;

しかし、SQL Server Compact 3.5ではこれは受け付けてもらえませんん。

仕様のようです、あきらめて一文づつ発行するしかないようです。

SQL Server, データベース , , , ,

SQL Server 2008でdatetime型の項目からWhere句で該当日付の範囲データ抽出

2009 年 4 月 22 日

datetime型の項目からWhere句で該当日付のみ抽出

photo by Steve-h

SQL Server 2008から、Date型、Time型が追加となりましたね。

SQL Server 2005までは、Datetime型しかなく「日付のみ保持したいのに…」とか、「時刻のみ保持したい…」という場合も、datetime型で代用していました。
ですが、日時をまとめて保持したい場合は、datetime型を利用します。

たとえば、 ‘2009/01/01’の値が入っている該当項目を抽出したいとき、下記のように問い合わせても抽出できません。
比較対象が、datetime型なので日付ではないからです。

続きを読む…

SQL Server, データベース , , , , , , ,

SQL Server Compact 3.5 でIDENTITY値を再設定するには?

2009 年 4 月 22 日

SQL Server Compact 3.5 でIDENTITY値を再設定

photo by TommyOshima

SQL Server 2008 Expressなどの、Transact-SQLでは、SQL Server のデータベース コンソール コマンドとして機能するDBCCステートメントが用意されていて、この機能を使用すれば、IDENTITY値の再設定が可能でした。

しかし、SQL Server Compact 3.5 ではDBCCはサポートされていません。

テーブルを一旦、空にして、IDENTITY値を初期値に戻したい時などに必要でした。

続きを読む…

SQL Server, データベース , , , , , ,

SQL Server Compact 3.5 でTRUNCATE TABLEは使えないようです。

2009 年 4 月 22 日

SQL Server Compact 3.5 でTRUNCATE TABLEは使えない

photo by -Angela

SQL Server 2008 Expressなどの、Transact-SQLでサポートされている、TRUNCATE TABLE ステートメントがあります。

TRUNCATE TABLEを使用すると、指定したテーブル内のすべての行を削除してくれる便利な文です。

DELETE ステートメント に、WHERE句をつけなければ、TRUNCATE TABLEを発行するのと同等にテーブル内のすべての行を削除することは可能なのですが、TRUNCATE TABLEはテーブル内削除のためだけの関数なため、利点がいくつかあります。

続きを読む…

SQL Server, データベース , , , , , , , ,

SQL Server Compact 3.5 と SQL Server 2008 TOP句の記述の許容の違い

2009 年 4 月 21 日

TOP句の記述の許容の違い

photo by artzy.viva

SQL Server Compact 3.5で、TOP句を記述してエラーとなりました。

SQL Server Compact 3.5はイマイチ、返されるエラーが大雑把で原因が分かりにくいですね。

エラーとなったTOP句を含んだ文

select TOP 1 hoge_id from hoge ORDER BY hoge_id DESC

続きを読む…

SQL Server, データベース , , , , , ,

なぜ、痛いと感じるのか?痛み止めで痛みが消えるのか?

2009 年 4 月 19 日

なぜ、痛み止めを飲むと痛くなくなるのか

photo by Ali K.

現在、私は虫歯のため、歯が痛くて痛くて、たまりません。

なぜ、怪我などで損傷した部位が痛んだり、生理痛が起こったりするのでしょうか?

なぜ、ボルタレン、ロキソニンなどの痛み止めが、痛みに効き、有効となるのでしょうか?

続きを読む…

ぎもん, ライフ , , , , ,

本日、歯医者さんに行っちゃいました

2009 年 4 月 17 日

歯医者さんに通います

photo by Toma01

以前、歯医者さんに行ったのは遠い、遠い昔。はるか、18年前。

それから、歯医者さんに行ってませんでした。

その間、虫歯放置という、悪環境のなか、何度か激痛に見舞われたことがあったのですが、激痛を痛み止めで乗り越えると、当分、痛みがこないので放置というバカなことを繰り返していたため、両奥歯ともに、ご飯などがあたると痛くてこうなると、どうしようもない……

ご飯食べれない = 致命的チーン

よって、通います。

続きを読む…

ライフ

VB.NET Tips CSVファイルの総行数を取得する

2009 年 4 月 17 日

CSVファイルの総行数を取得する

photo by ErinLangNorris/YellowCa noe

CSVファイルから、インポート処理する際などに、事前にレコードの総数を提示しておきたかったり、プログレスバーを使用して、処理の進行を表示したいときなどに、CSVファイルのレコード総数(総行数)が必要になります。

ですが、StreamReaderなどで読み込んでもCountなどは使えないため、一発取得の方法がありませんので、読み込んだファイルの行数を1から数える必要があります。

続きを読む…

VB.NET, コンピュータ , , , , , ,

SQL SERVER Management Studio Express 2008 テーブル編集のTOP設定の変更

2009 年 4 月 17 日

テーブル編集のTOP設定の変更

photo by *hb19

SQL SERVER Management Studio Express 2008 を使用して、データベース内のテーブルを操作する際、規定値ではTOP 200 先頭行から200行までの編集となっています。

業務使用で、何十万行もレコードがあるなどは別として、TOP200行でははっきりいって歯がゆいだけです。

とりあえず、SQL SERVER Management Studio Express 2005までと同様にすべての行を編集できるように設定したいと思います。

続きを読む…

SQL Server, データベース , , , , , ,