SQL Server 2019 が GA してます

1週間位前ですけど、GA してます。 SQL Server 2019 | マイクロソフト ぼちぼち時間見つけて触ってかないと… SQL Server 2019 の新機能 - SQL Server | Microsoft Docs

11/23(土) 第11回 関西DB勉強会 withさくらクラブ でお話しします #dbkan

久しぶりに 関西DB勉強会やります~! 第11回 関西DB勉強会 withさくらクラブ - connpass 今回はさくらインターネット様の会場をお借りして、ハンズオン中心のみんなで手を動かして体験しよう~みたいな感じです。 MySQL、PostgreSQL、SQL Server と3つの DB…

Application Insights の紹介 参考資料 #azuretechlove

Application Insights 紹介 Azure Tech Lab #5 - てらだよしおまつり リターンズ。 の参考資料 Application Insights 概要 https://docs.microsoft.com/ja-jp/azure/azure-monitor/app/app-insights-overview コードベースの監視 ASP.NET Core https://docs.…

10/31(木) Azure Tech Lab #5 - てらだよしおまつり リターンズ。 で話しします

募集サイトはこちら Azure Tech Lab #5 - てらだよしおまつり リターンズ。 - connpass セキュリティ や コンテナ、Kubernetes のお話しがあるなかで、 私は Application Insights を簡単に紹介する予定です。 Azure Application Insights とは何か | Micros…

.NET Conf関西 2019 で .NET + SQL Server Tips というお題で話してきました

.NET Conf関西 2019 - connpass 資料はこちらですが、デモ中心なので資料だけ見てもアレかも。 Dot net+sql server tips from Oda Shinsuke 主に System(Microsoft).Data.Sqlclient 名前空間のクラスを使った話しが主なので、興味ない方も居られたと思います…

.NET Core の SqlConnection の ConnectRetryCount ちゃんと動いてない?

検証コード .NET Core SqlConnection ConnectRetryCount not work? · GitHub .NET Framework 4.7.2 + System.Data.SqlClient 4.7.0 と .NET Core 3.0 + System.Data.SqlClient 4.7.0 で 同じコード動かしたけど、例外が発生する時間が違う。。 なんやろ? 20…

.NET Conf関西 2019 で話しします

来週 10/19(土) に、.NET Conf関西 2019 - connpass で .NET + SQL Server Tips というタイトルでお話しします。 Tips なので既に知ってるという方も居られるかもしれませんが、 何人の方にはへーっと思って頂ければと思っています。 満席間近みたいなので、…

varchar 列に nvarchar 渡しても convert_implicit しなくなってた

varchar と nvarchar の列持つテーブルにそれぞれ index つけて適当にデータ突っ込んで試したら、動作変わってた。 create table [Hoge] ( [var] varchar(20) not null, [nvar] nvarchar(20) not null ) create index [Hoge_var] on [Hoge] ([var]) create i…

テーブルを条件にいれた Index Scan なプランを取得する

必要になったので書くつもりが、良いの見つけたのでちょっとだけ改変。 元ネタ:Clustered Index Scan のプランを抽出する at SE の雑記 WITH XMLNAMESPACES ('http://schemas.microsoft.com/sqlserver/2004/07/showplan' AS sp) select * from ( SELECT RO.…

09/10(火) SQLWorld★大阪#51 開催します #sqlworld

SqlWorld :: SQLWorld★大阪#51 開催します! 32回目の平日夜開催で、前回同様 ハンズオン 形式で行う予定です。 【日時】 2019年09月10日(火曜日) 19:00~21:00 【イベント概要】 SQLWorld、今回で33回目の平日夜開催~。今回も、みんなで SQL を書いてみよ…

LambdicSql で bit型(bool) をリテラルで指定する場合の対処法

LambdicSql でリテラルをパラメータ化したくない場合は DirectValue か N 使おう - お だ のスペース で、DirectValue 使おうねーって書いたけど、bit型のカラム(.NET の型だと bool) は DirectValue をそのまま使うとエラーなクエリが吐かれます。 using La…

LambdicSql でリテラルをパラメータ化したくない場合は DirectValue か N 使おう

前回 LambdicSql ネタ書いたので、小ネタを何個か。 LambdicSql でリテラル値を使うと勝手にパラメータ化されます。 が、パラメータ化したくない時もあります。*1 using LambdicSql; using System; using System.Data.SqlClient; using static LambdicSql.Sq…

LambdicSql で共通な select from を使った union

GitHub - Codeer-Software/LambdicSql GitHub - Codeer-Software/LambdicSql.SqlServer を使ったサンプル。 元ネタ window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) …

x64 な OSで Any CPU(32bit優先) な アプリを Friendly + nunit3-console でテストする

何も気にせず動かしたら、こんなエラーが出た。 Codeer.Friendly.FriendlyOperationException : プラットフォームターゲットがテスト対象とテストプロセスで異なります。合わせてください。 アプリが x86 で、nunit3-console が x64 やでーって感じっぽい。 …

Microsoft MVP アワード (Data Platform) を受賞させていただきました

今回で7回目(8年目)の受賞になりました。 今後もより一層のコミュニティ活動/情報発信していきますので、SqlWorld :: ホーム 共々宜しくお願いします。 どんどん新しい製品、サービスが出てますがおいてかれないように頑張りま~。

SSMS 18.1 Diagram なんか不安定ってか作ったファイルが開けず SSMS が落ちる。。

SSMS 18.1 で Diagram が復活した - お だ のスペース で復活したって書いたけど、動き怪しい。。 18.1 の Diagram で作成したダイアグラムが何かの拍子に開けなくなった。 開くと SSMS が落ちて、イベントビューアーに以下のログが2つ。 障害が発生している…

SSMS 18.1 で Diagram が復活した

SSMS 18 で Diagram が無くなった - お だ のスペース で Diagram が無くなったって書いてましたが、18.1 で復活しました。 Download SQL Server Management Studio (SSMS) - SQL Server | Microsoft Docs New in this Release (SSMS 18.1) より抜粋 Databas…

SQL であるグループの中で最小のものを取得する (複数あっても1つにしたい)

質問されたので… create table [取引開始履歴] ( [取引先] nvarchar(20), [取引先営業所] nvarchar(20), [開始日] date not null ) insert into [取引開始履歴] values (N'Foo財閥', N'大阪', '2016-04-01'), (N'Foo財閥', N'東京第一', '2016-04-01'), (N'F…

SQL Server での更新ロックを使った排他制御

よくあるやつですが、諸々の事情で取り合えず書いときます。 めっちゃ簡略化したシナリオ 分離レベルはデフォルトの read committed 入庫と出庫 + 在庫を更新するケースで、 しかも update で現在値を計算するのではなく直接設定するケース。 ※update 在庫 s…

SQL Server 2019 の _UTF8 照合順序は日本語ではサイズ増える?

SQL Server 2019 CTP3.0 時点の情報です SQL Server 2019 の新機能 - SQL Server | Microsoft Docs 見てたら char/varchar でも UTF-8 がサポートされたよーってあったので見てみました。 照合順序と Unicode のサポート - SQL Server | Microsoft Docs より…

06/18(火) SQLWorld★大阪#50 開催します #sqlworld

令和最初の SqlWorld :: SQLWorld★大阪#50 開催します! 32回目の平日夜開催で、前回同様 ハンズオン 形式行う予定です。 【日時】 2019年06月18日(火曜日) 19:00~21:00 【イベント概要】 令和最初の SQLWorld、今回で32回目の平日夜開催~。今回も、みん…

SSMS 18 で Diagram が無くなった

追記:18.1 で復活しました SSMS 18.1 で Diagram が復活した - お だ のスペース SSMS 18.0 が GA しました。*1 Download SQL Server Management Studio (SSMS) - SQL Server | Microsoft Docs リリースノートの 「Deprecated and removed features in 18.0…

.NET Core の DacFx の bacpac 試してみた

.NET Core 2.2 のコンソールアプリなら、 NuGet Gallery | Microsoft.SqlServer.DACFx 150.4384.2-preview でシンプルな DB なら問題無く bacpac 取れた。 .NET Core 2.1 なら、幾つかのアセンブリが古いっぽいので、バージョン上げたら動いた。 System.Data…

.NET で SQL Server/Database のbacpac を取得する

質問されたので書いときます。 DacFx 使ってサクッと出来ますよ~。 NuGet Gallery | Microsoft.SqlServer.DacFx.x64 150.4384.2 var connstr = @"~"; var dac = new DacServices(connstr); dac.ExportBacpac(@"d:\TurorialDB.bacpac", "TutorialDB"); 細か…

6/8(土) 第10回 関西DB勉強会やります!

6月8日(土) やります! 今回も色んな DB のお話しがありますので、是非ご参加を~。 kansaidbstudy.connpass.com

メモ:コネクションプールを使ってる時の SqlConnection を Close した時の内部動作

GitHub 上でコード追っかけたのでメモ ※実行してトレースしたわけでは無いので間違ってるかも 生きてる SqlTransaction があっても、Rollback 呼んでそう。 SqlConnection.Close() で SqlConnection.CloseInnerConnection() https://github.com/dotnet/coref…

メモ:SQL Server 2019 Hybrid Buffer Pool

2019 の新機能見てて何やろ~?って思ったのでメモ。 Hybrid Buffer Pool - SQL Server | Microsoft Docs 2019 CTP2.1 から。 PMEM に データベース ファイル を置いてると、バッファープール に読み込まずに直接読むっぽい。 直接読むのは クリーン ページ …

メモ:create table で filtered な unique index を作る

ドキュメントの構文に載ってないけどなんか出来たのでメモ。 SQL Server での unique 制約は unique index で実現されてます。 なので、unique 制約を作る = unique index を作る です。 UNIQUE 制約を作る場合 Create Unique Constraints - SQL Server | Mi…

02/19(火) SQLWorld★大阪#49 開催します #sqlworld

2019年最初の SqlWorld :: SQLWorld★大阪#49 開催します! 31回目の平日夜開催で、前回同様 ハンズオン 形式行う予定です。 【日時】 2019年02月19日(火曜日) 19:00~21:00 【イベント概要】 2019年最初の SQLWorld、今回で31回目の平日夜開催~。今回も、…

複合主キーを代理キー(サロゲートキー)に変えると、外部キー制約が弱くなる時がある

外部キー制約が弱くなるってなんやって話しですが、分かりやすいように例を交えて 取引先と取引先組織が親子関係、注文には2つの組織(請求先組織, 出荷先組織)を持つとした場合に、 取引先組織を複合主キーのまま定義するとこんな感じ。 create table [取引…