>>323
コネクション別に色を変える方法は?
Microsoft SQL Server 総合スレ 12
326NAME IS NULL
2020/07/29(水) 12:51:54.54ID:???327NAME IS NULL
2020/07/29(水) 14:27:37.65ID:???328NAME IS NULL
2020/07/29(水) 21:33:49.33ID:??? >>327
探したけど、その説明では...探したが、接続後では変えられないっぽい
サーバーへの接続ダイアログで、オプションをクリック
接続プロパティタブで、カスタム色を使用にチェックして、選択ボタンから色を選択
でステータスバーの色を変えれるようになった
セキュリティ的に絶対繋げたくないとかじゃなければこっちのが良いな
アドオン作れば色々出来るんだろうけど、アドオン作るための資料ってみたことないんだよなぁ
探したけど、その説明では...探したが、接続後では変えられないっぽい
サーバーへの接続ダイアログで、オプションをクリック
接続プロパティタブで、カスタム色を使用にチェックして、選択ボタンから色を選択
でステータスバーの色を変えれるようになった
セキュリティ的に絶対繋げたくないとかじゃなければこっちのが良いな
アドオン作れば色々出来るんだろうけど、アドオン作るための資料ってみたことないんだよなぁ
329NAME IS NULL
2020/07/29(水) 21:50:38.33ID:??? 色変えるのは>>325と同じサイトの↓ここがわかりやすかった。探せば日本語でもあるかも
https://www.sqlshack.com/how-to-set-custom-colors-in-the-ssms-status-bar/
アドオン(アドイン?)開発はこの3回シリーズと最後の参考資料のサイトを見ればできそう
https://solutioncenter.apexsql.com/the-art-and-science-of-creating-ssms-2012-add-ins-part-1-laying-the-foundation/
https://www.sqlshack.com/how-to-set-custom-colors-in-the-ssms-status-bar/
アドオン(アドイン?)開発はこの3回シリーズと最後の参考資料のサイトを見ればできそう
https://solutioncenter.apexsql.com/the-art-and-science-of-creating-ssms-2012-add-ins-part-1-laying-the-foundation/
330NAME IS NULL
2020/07/29(水) 22:54:50.25ID:??? なるほど
基本Visual Studiのエディタ部分だから、アドオンそのものはVSのアドオンなのか
あとは各種SSMSのオブジェクトのリファレンスさえあればなんとなる、かも
しかしまあ、日本語のドキュメントほしいよなぁ
基本Visual Studiのエディタ部分だから、アドオンそのものはVSのアドオンなのか
あとは各種SSMSのオブジェクトのリファレンスさえあればなんとなる、かも
しかしまあ、日本語のドキュメントほしいよなぁ
331NAME IS NULL
2020/07/31(金) 19:40:52.30ID:LbLGxfcR csvファイルからデータをインポートしたいのですけど、
読み込ませようとしたら、
全てvarcharの長さ50バイトに
なってしまいます。
実際のデータはもっと長い文字列の項目があります。
どうすればデータ長に合う長さで
読み込むでしょうか?
ちなみにcsvは先頭行から
データとなっています。
読み込ませようとしたら、
全てvarcharの長さ50バイトに
なってしまいます。
実際のデータはもっと長い文字列の項目があります。
どうすればデータ長に合う長さで
読み込むでしょうか?
ちなみにcsvは先頭行から
データとなっています。
332NAME IS NULL
2020/07/31(金) 20:47:08.25ID:???333NAME IS NULL
2020/07/31(金) 23:35:06.24ID:??? ここはエスパースレではないので
せめてどうやって読み込ませたのかぐらいかけよ
せめてどうやって読み込ませたのかぐらいかけよ
334NAME IS NULL
2020/08/03(月) 18:10:28.15ID:??? >>318
Management Studioに接続を登録して使うようにしたら良いと思うよ
> 例えばManagement Studio起動時のサーバ名選択なリストボックスに自身のインスタンスしか表示させないとか。
起動時のダイアログは表示しない設定にできるよ
誤って接続させないなら、これで十分じゃないかな
接続の登録は、エクスポートできるから、みんなで同じ環境にするのも簡単だよ
Management Studioに接続を登録して使うようにしたら良いと思うよ
> 例えばManagement Studio起動時のサーバ名選択なリストボックスに自身のインスタンスしか表示させないとか。
起動時のダイアログは表示しない設定にできるよ
誤って接続させないなら、これで十分じゃないかな
接続の登録は、エクスポートできるから、みんなで同じ環境にするのも簡単だよ
335NAME IS NULL
2020/08/04(火) 16:22:32.03ID:J7T+4U9I OS認証で何もかも使っているような馬鹿だろ
336NAME IS NULL
2020/08/04(火) 16:47:32.43ID:??? などという馬鹿がおりまして
337NAME IS NULL
2020/08/05(水) 08:50:51.70ID:8yHopzKP csvからインポートしてるのですけど
数値項目のところにスペースのみとか、
スペース+数値文字列(リーディングスペースっていう?)は、
読み込み中にエラーが発生するようです。
という、ところまでわかりました。
次は、文字コード混在(932と1252)しています、というエラーに
悩んでいます。
csvを調べても932(シフトJIS)に
なってるはずなのです。
なにかアドバイスください!
数値項目のところにスペースのみとか、
スペース+数値文字列(リーディングスペースっていう?)は、
読み込み中にエラーが発生するようです。
という、ところまでわかりました。
次は、文字コード混在(932と1252)しています、というエラーに
悩んでいます。
csvを調べても932(シフトJIS)に
なってるはずなのです。
なにかアドバイスください!
338NAME IS NULL
2020/08/05(水) 10:39:24.54ID:??? >>337
まずはcsvファイルをいくつかに分割したりして、エラーの原因の行を特定してみてはどうか
で、特定できた行と、使ってるBULK INSERT文なりbcpコマンドなりが出されると
悩みに効くかもしれない
まずはcsvファイルをいくつかに分割したりして、エラーの原因の行を特定してみてはどうか
で、特定できた行と、使ってるBULK INSERT文なりbcpコマンドなりが出されると
悩みに効くかもしれない
339NAME IS NULL
2020/08/05(水) 15:02:11.26ID:???340NAME IS NULL
2020/08/06(木) 01:49:08.34ID:RlDmGsR2 >>337
いったん文字列として別のテーブルに取り込めぱいいんだよ。途中をすっとばして一気にやろうとすれば何もかもたいへんになる。
いったん文字列として別のテーブルに取り込めぱいいんだよ。途中をすっとばして一気にやろうとすれば何もかもたいへんになる。
341NAME IS NULL
2020/08/07(金) 08:45:41.39ID:e0ioXoYC342NAME IS NULL
2020/08/08(土) 05:26:17.50ID:??? mssqlの物理設計の仕事をすることになりそうなんですが、この仕事って将来性ありますか?
343NAME IS NULL
2020/08/08(土) 14:31:22.82ID:nuZHIe/X SQL ServerのDBAは供給が常に足らないから、仕事はあるよ。
344NAME IS NULL
2020/08/11(火) 17:02:42.91ID:KQ3PRvmN 職場のPCなんですけど、SQL serverをインストールしてないのに、
SSMSを使ってデータのインポートをするとテーブルが作られて、
クエリも実行できるのですけど、
SSMSをインストールするだけで、自動的にSQL serverが
インストールされるのでしょうか?
SSMSを使ってデータのインポートをするとテーブルが作られて、
クエリも実行できるのですけど、
SSMSをインストールするだけで、自動的にSQL serverが
インストールされるのでしょうか?
345NAME IS NULL
2020/08/11(火) 17:06:41.84ID:??? うん
346NAME IS NULL
2020/08/11(火) 19:41:26.32ID:???347NAME IS NULL
2020/08/11(火) 21:50:16.23ID:txpGgpOg WinPro+SQL2013+Excel2013で使えてたtime型が、
WinHome+SQL2019+Excel2019で使えなくなった
WinHome+SQL2019+Excel2019で使えなくなった
348NAME IS NULL
2020/08/11(火) 21:52:52.70ID:txpGgpOg SQLの実行ではエラーは起きないので、Excel側の問題だけど
OLEではレコードセットの該当列を見ると「複数のステップ」エラー
ODBCではレコードセットの何か(EOFとか)を見ると「数値の範囲」エラー
OLEではレコードセットの該当列を見ると「複数のステップ」エラー
ODBCではレコードセットの何か(EOFとか)を見ると「数値の範囲」エラー
349NAME IS NULL
2020/08/11(火) 21:54:35.18ID:txpGgpOg 数か所だったのでchar(5)に変えたけど(hh:nn)
※書き込めない原因はこの行だったかーw
※書き込めない原因はこの行だったかーw
350NAME IS NULL
2020/08/11(火) 21:55:48.05ID:txpGgpOg char(5)か(hh:nn)のせいかな?
DB板でこれを半角で書けない意味はw
DB板でこれを半角で書けない意味はw
351NAME IS NULL
2020/08/11(火) 22:00:00.04ID:txpGgpOg https://docs.microsoft.com/ja-jp/sql/integration-services/import-export-data/connect-to-a-sql-server-data-source-sql-server-import-and-export-wizard?view=sql-server-ver15
>重要
>Microsoft OLE DB Provider for SQL Server と SQL Server Native Client は、
>SQL Server 2012 より後のバージョンではサポートされません。
>代わりに、ODBC ドライバーを使用します。
ほんと?
OLEDBもまだあったけど、一応最新の{ODBC Driver 17 for SQL Server}にしといた
名前がナンバリングってことは、次回買い替え時にまたメンテが必要…
>重要
>Microsoft OLE DB Provider for SQL Server と SQL Server Native Client は、
>SQL Server 2012 より後のバージョンではサポートされません。
>代わりに、ODBC ドライバーを使用します。
ほんと?
OLEDBもまだあったけど、一応最新の{ODBC Driver 17 for SQL Server}にしといた
名前がナンバリングってことは、次回買い替え時にまたメンテが必要…
352NAME IS NULL
2020/08/11(火) 22:59:13.01ID:KQ3PRvmN >>346
> SSMSでどこにつないでるだよ
会社のPCを見てないんですけど、
(localDB)SQLSERVERというような名前を設定したと思います。
この設定は、
「こういう文字列を設定するとできたことがある」
と先輩が教えてくれたものです。
> SSMSでどこにつないでるだよ
会社のPCを見てないんですけど、
(localDB)SQLSERVERというような名前を設定したと思います。
この設定は、
「こういう文字列を設定するとできたことがある」
と先輩が教えてくれたものです。
353NAME IS NULL
2020/08/12(水) 09:29:12.25ID:???354NAME IS NULL
2020/08/12(水) 09:55:56.64ID:??? なんか使えない先輩と言う感じだなあ
355NAME IS NULL
2020/08/12(水) 11:45:53.04ID:??? >>351
https://docs.microsoft.com/ja-jp/sql/connect/oledb/oledb-driver-for-sql-server?view=sql-serv
OLE DBそのものが非推奨になったのでその二つも非推奨になったんだが
OLE DBの非推奨が取り消された
だがそのドライバは非推奨のままで、新しいOLE DBドライバ使えってスタンス
まあ迷走してる感はあるが、新しめの使っとけば数年で使えなくなることはなさそう
https://docs.microsoft.com/ja-jp/sql/connect/oledb/oledb-driver-for-sql-server?view=sql-serv
OLE DBそのものが非推奨になったのでその二つも非推奨になったんだが
OLE DBの非推奨が取り消された
だがそのドライバは非推奨のままで、新しいOLE DBドライバ使えってスタンス
まあ迷走してる感はあるが、新しめの使っとけば数年で使えなくなることはなさそう
356NAME IS NULL
2020/08/12(水) 11:52:14.71ID:??? >>354
使えない先輩というか、この程度の知識でSSMSでクエリ発行する業務そのものが理解できん
使えない先輩というか、この程度の知識でSSMSでクエリ発行する業務そのものが理解できん
357NAME IS NULL
2020/08/12(水) 14:07:32.44ID:??? >>356
システムの事なんか全然知らず、サーバを構築したりすることもなく、
SQLでクエリーを作る作業者って想像できないわけじゃないよ。
でもトラブルがあった場合とかパフォーマンスが出ない時とかどうするんだろうなあとは思うな。
システムの事なんか全然知らず、サーバを構築したりすることもなく、
SQLでクエリーを作る作業者って想像できないわけじゃないよ。
でもトラブルがあった場合とかパフォーマンスが出ない時とかどうするんだろうなあとは思うな。
358NAME IS NULL
2020/08/12(水) 14:37:15.58ID:??? SSMSはVer18からストアドプロシージャのデバッグができなくなってたんだね
2008が残ってたからVer17を使い続けてたんだけど、現行は、VSDTを使えってことなのかな
2008が残ってたからVer17を使い続けてたんだけど、現行は、VSDTを使えってことなのかな
359NAME IS NULL
2020/08/12(水) 16:45:51.11ID:??? >>357
相手によってはとりあえず使えるように必要な設定を呪文として提供することならままあると思う。
その呪文をきちんと理解できるように自分で調べる、問題があるなら質問を返す、などの器量は受け取る側の問題じゃないかと。
相手によってはとりあえず使えるように必要な設定を呪文として提供することならままあると思う。
その呪文をきちんと理解できるように自分で調べる、問題があるなら質問を返す、などの器量は受け取る側の問題じゃないかと。
360NAME IS NULL
2020/08/12(水) 16:52:44.57ID:4QU2lpeJ >>355
おお、さんくす
2020/05/06 2018 年に OLE DB の非推奨が取り消しとなり、リリースされました。
2020/06/29 2012 より後のバージョンではサポートされません。 代わりに、ODBC ドライバーを使用します。
日付は逆だけど…
でも直観的に、「非推奨が取り消し」の方が強いイメージ
なのでMSOLEDBSQLに戻した
俺が1人で作ったシステムを社内政治都合で廃止しようとした連中が5000万かけてIBMに発注したことがあった
半年後、元のシステムを使い続けることに決定しましたと、会議で役員が宣言
IBMのが機能不足の上に遅くてどうしようもなかったらしい
廃止の取り消しは、強い技術的な壁を感じる
ODBC駄目だな、と思ったのは20年近く前だったかな
SQLの解釈が違うような、変な癖があった
あとちょっと遅かったかな
今回も、EOF見るだけで特定の列が起因のエラーが出るっておかしい気もする
OLEもバグってるけど、エラーの出方が素直(ただしメッセージは分かりにくい)
おお、さんくす
2020/05/06 2018 年に OLE DB の非推奨が取り消しとなり、リリースされました。
2020/06/29 2012 より後のバージョンではサポートされません。 代わりに、ODBC ドライバーを使用します。
日付は逆だけど…
でも直観的に、「非推奨が取り消し」の方が強いイメージ
なのでMSOLEDBSQLに戻した
俺が1人で作ったシステムを社内政治都合で廃止しようとした連中が5000万かけてIBMに発注したことがあった
半年後、元のシステムを使い続けることに決定しましたと、会議で役員が宣言
IBMのが機能不足の上に遅くてどうしようもなかったらしい
廃止の取り消しは、強い技術的な壁を感じる
ODBC駄目だな、と思ったのは20年近く前だったかな
SQLの解釈が違うような、変な癖があった
あとちょっと遅かったかな
今回も、EOF見るだけで特定の列が起因のエラーが出るっておかしい気もする
OLEもバグってるけど、エラーの出方が素直(ただしメッセージは分かりにくい)
361NAME IS NULL
2020/08/12(水) 17:00:46.71ID:4QU2lpeJ 下請けのプロに凄いもん作らせて、社内の素人に「保守」させるという
よくあるよ
「誰でもできる」は買い叩きのためなの神話なのに、多数が心から信じてる様子
それがブラック社会
ただ俺の場合、凄過ぎて引き継げない
よくあるよ
「誰でもできる」は買い叩きのためなの神話なのに、多数が心から信じてる様子
それがブラック社会
ただ俺の場合、凄過ぎて引き継げない
362NAME IS NULL
2020/08/12(水) 17:08:35.93ID:??? >>361
その「保守」って大丈夫か?
データベースに限らずソフトウェアは、後からの要望で、あれ付けてくれ、これやってくれをいちいち聞いていると酷いことになる。
「××を行わないことを大前提で最適化している」なんて説明しても全然理解してくれなかったりする。
その「保守」って大丈夫か?
データベースに限らずソフトウェアは、後からの要望で、あれ付けてくれ、これやってくれをいちいち聞いていると酷いことになる。
「××を行わないことを大前提で最適化している」なんて説明しても全然理解してくれなかったりする。
363NAME IS NULL
2020/08/12(水) 20:28:50.95ID:??? 自分で作らない人は、後から注文しても普通に付け足すだけで済むと思ってる人多いよね
最初にどれだけ考えて設計してるか知らないから仕方ないけど
最初にどれだけ考えて設計してるか知らないから仕方ないけど
364NAME IS NULL
2020/08/12(水) 21:16:17.00ID:??? 極度の属人性を受け入れられるんなら開発費を10分の1にすることだってそう難しいことじゃないんだよ
ベンダーに発注すると高くつくのは属人性を排除するために一見無駄に見えることに時間と金がかけてるから
ついでにそういう属人性が高いシステムのリプレース案件は
大手ベンダーとしてはやりたくない場合が多くてワザと高い見積もりを出すんだよ
ベンダーに発注すると高くつくのは属人性を排除するために一見無駄に見えることに時間と金がかけてるから
ついでにそういう属人性が高いシステムのリプレース案件は
大手ベンダーとしてはやりたくない場合が多くてワザと高い見積もりを出すんだよ
365NAME IS NULL
2020/08/12(水) 21:41:27.21ID:4QU2lpeJ366NAME IS NULL
2020/08/13(木) 10:16:31.93ID:OyaVw4Wp すまんが、SSMSってコピペ用の接続文字列表示してくれないんだっけ?
あれはVisualStudioのみの機能だったっけか・・・・?
あれはVisualStudioのみの機能だったっけか・・・・?
367NAME IS NULL
2020/08/13(木) 13:44:10.21ID:2n69KQro368NAME IS NULL
2020/08/17(月) 11:09:19.04ID:??? 文字列の最初にN’’と見かけるのですが、この最初のNはどういった意味があるのですか?
省略可能でしょうか?
省略可能でしょうか?
369NAME IS NULL
2020/08/17(月) 11:11:34.31ID:???370NAME IS NULL
2020/08/19(水) 14:23:12.93ID:5/nQUFqV SQL serverをインストールしたのですけど、
一部のGUIが動かないので
他のPCと比べてみたら、
どうやらVisual Studio 2005のライブラリ(?)
というのがインストールされてないみたいです。
SQL serverのGUIで使ってるらしいですけど、
後からVisual Studio 2005のライブラリというのを
インストールする方法を教えてください
よろしくお願いします!
一部のGUIが動かないので
他のPCと比べてみたら、
どうやらVisual Studio 2005のライブラリ(?)
というのがインストールされてないみたいです。
SQL serverのGUIで使ってるらしいですけど、
後からVisual Studio 2005のライブラリというのを
インストールする方法を教えてください
よろしくお願いします!
371NAME IS NULL
2020/08/19(水) 14:30:48.38ID:??? いつの時代の話だよw
372NAME IS NULL
2020/08/19(水) 15:00:17.21ID:5/nQUFqV すいません時代錯誤してました。
というか分かっておりませんでした
NetFrameWork 3.5というのをMicrosoftのサイトから
ダウンロードすればいいはずと聞きまして、
やってみます。
>>371
あのね、からかうだけなら
書かないほうがいいですよ。
「バカだから何も知らないくせに
マウントしたいんだろう、このFランの馬鹿がw」
と、みんな思ってますからw
というか分かっておりませんでした
NetFrameWork 3.5というのをMicrosoftのサイトから
ダウンロードすればいいはずと聞きまして、
やってみます。
>>371
あのね、からかうだけなら
書かないほうがいいですよ。
「バカだから何も知らないくせに
マウントしたいんだろう、このFランの馬鹿がw」
と、みんな思ってますからw
373NAME IS NULL
2020/08/19(水) 17:04:43.41ID:??? >>372
恥の上塗りはやめとけってww
SQL ServerやSSMSのバージョンも書かない上に
ライブラリの名前も正確に書けないようじゃまともに相手されなくて当然
必要なVC++の再頒布パッケージが入ってないならインストールに失敗してるんだよねそれ
恥の上塗りはやめとけってww
SQL ServerやSSMSのバージョンも書かない上に
ライブラリの名前も正確に書けないようじゃまともに相手されなくて当然
必要なVC++の再頒布パッケージが入ってないならインストールに失敗してるんだよねそれ
374NAME IS NULL
2020/08/21(金) 22:01:11.18ID:??? sqlserverのパッチは出たら積極的に当てた方がよい?
問題がなければほっとくべき?
問題がなければほっとくべき?
375NAME IS NULL
2020/08/21(金) 22:06:37.24ID:??? 当てろよ
376NAME IS NULL
2020/08/21(金) 22:15:58.88ID:??? パススルークエリヤバすぎワロタ
377NAME IS NULL
2020/08/21(金) 22:41:50.30ID:???378NAME IS NULL
2020/08/22(土) 05:05:36.41ID:??? 最近のは統合パッチ?になって選択出来ない
と思っていたが
と思っていたが
379NAME IS NULL
2020/08/22(土) 11:35:29.43ID:??? うちはcuもあてとるぞ
380NAME IS NULL
2020/08/22(土) 13:42:18.18ID:LMQ+Z71+ OS:Windows server 2016
DB:SQL server 2016 Standard Edition
SSMS:SQL server ManagementStudio17
上記環境でSQL server Management Studioに
設定したメンテナンスプランがスケジュール実行で
動きません。
・認証:SQL server認証
・メンテナンスプラン内容:データベースバックアップ
(メンテナンスプランウィザードで作成)
・ MSSQL13.MSSQLSERVER\MSSQL\Logにログの作成なし
・該当メンテナンスプランを右クリックして、履歴の表示を
選択しても、履歴の記録なし
・SQL server エージェント−ジョブ−該当メンテナンスプランを
右クリックして、履歴の表示を選択しても、履歴の記録なし
・該当メンテナンスプランを右クリックして実行を選択すると
正常に実行され、実行後履歴も表示され、ログも作成された
スケジュール実行するためには、何か特別な設定が必要なのでしょうか?
DB:SQL server 2016 Standard Edition
SSMS:SQL server ManagementStudio17
上記環境でSQL server Management Studioに
設定したメンテナンスプランがスケジュール実行で
動きません。
・認証:SQL server認証
・メンテナンスプラン内容:データベースバックアップ
(メンテナンスプランウィザードで作成)
・ MSSQL13.MSSQLSERVER\MSSQL\Logにログの作成なし
・該当メンテナンスプランを右クリックして、履歴の表示を
選択しても、履歴の記録なし
・SQL server エージェント−ジョブ−該当メンテナンスプランを
右クリックして、履歴の表示を選択しても、履歴の記録なし
・該当メンテナンスプランを右クリックして実行を選択すると
正常に実行され、実行後履歴も表示され、ログも作成された
スケジュール実行するためには、何か特別な設定が必要なのでしょうか?
381NAME IS NULL
2020/08/23(日) 19:39:22.79ID:??? >>380
> ・ MSSQL13.MSSQLSERVER\MSSQL\Logにログの作成なし
server 2016ならフォルダが違わない?
旧バージョンからのアップデートならあり得るけど、インスタンス間違えてないか
> ・ MSSQL13.MSSQLSERVER\MSSQL\Logにログの作成なし
server 2016ならフォルダが違わない?
旧バージョンからのアップデートならあり得るけど、インスタンス間違えてないか
382NAME IS NULL
2020/08/24(月) 17:51:57.68ID:??? すみません、教えて下さい。
クエリ実行時にエラーになったときに、
どのエラーコードだったらリトライすべきとかの標準的なガイドラインのようなものってあったりするのでしょうか?
クエリ実行時にエラーになったときに、
どのエラーコードだったらリトライすべきとかの標準的なガイドラインのようなものってあったりするのでしょうか?
383NAME IS NULL
2020/08/24(月) 18:15:16.74ID:??? それは要件次第じゃないの?
384NAME IS NULL
2020/08/24(月) 20:04:22.86ID:??? 要件は特に無いといいますか、聞けていないのですが、どのような手順で整理すべきでしょうか?
385NAME IS NULL
2020/08/24(月) 20:34:42.27ID:??? エラーが出たら困るときにリトライすればいいんじゃね
386NAME IS NULL
2020/08/24(月) 21:04:11.28ID:??? リトライしたらエラーが解消される可能性があるケースで
呼び出し側が1回でエラーを返されるよりも
複数回トライしてからエラーを返してほしいという要件に当てはまるものがあるかどうか
接続系じゃなくクエリ実行中のエラーでとなると結構絞られるとは思うが
運用開始前に対象をもれなく洗い出すのは現実的ではないので
運用開始後に簡単にリトライ対象を追加したり削除したりできるようにして
追加/削除の判断が迅速にできるような運用監視体制を整えておくほうが現実的
呼び出し側が1回でエラーを返されるよりも
複数回トライしてからエラーを返してほしいという要件に当てはまるものがあるかどうか
接続系じゃなくクエリ実行中のエラーでとなると結構絞られるとは思うが
運用開始前に対象をもれなく洗い出すのは現実的ではないので
運用開始後に簡単にリトライ対象を追加したり削除したりできるようにして
追加/削除の判断が迅速にできるような運用監視体制を整えておくほうが現実的
387NAME IS NULL
2020/08/25(火) 00:27:02.86ID:SjT+of3l >>382
レコードがロックできなかったとき
レコードがロックできなかったとき
388NAME IS NULL
2020/08/25(火) 01:19:46.56ID:??? ロックタイムアウトでリトライすべきかどうかは要件次第だよね
普通はやらないと思うけど
普通はやらないと思うけど
389NAME IS NULL
2020/08/27(木) 13:19:56.11ID:??? >>388
え、そうなの?なんで?
え、そうなの?なんで?
390NAME IS NULL
2020/08/27(木) 13:21:47.59ID:??? 単純にリトライするだけなら、ロック外れるまで待てばいいからじゃね
391NAME IS NULL
2020/08/27(木) 14:51:54.59ID:??? >>389
手動リトライじゃなくコードで自動リトライするのは普通やらないって意味
対処を自動化したくなるくらいロックタイムアウトが発生するのは設計に問題がある可能性が高いのと
単純な固定delayだと同時実行性が落ちたり連鎖反応でエラーが頻発したりする可能性もあるから
デッドロックとかと似たようなもの
手動リトライじゃなくコードで自動リトライするのは普通やらないって意味
対処を自動化したくなるくらいロックタイムアウトが発生するのは設計に問題がある可能性が高いのと
単純な固定delayだと同時実行性が落ちたり連鎖反応でエラーが頻発したりする可能性もあるから
デッドロックとかと似たようなもの
392NAME IS NULL
2020/08/27(木) 15:40:19.59ID:??? サーバーリプレイスする場合の引っ越しはデタッチ→アタッチでおけ?
393NAME IS NULL
2020/08/27(木) 17:53:54.96ID:??? 自分的にはbackupとって、移行先でリストア派
394NAME IS NULL
2020/08/29(土) 11:43:13.92ID:??? >>392
この前それでやったらなんの問題もなかった
この前それでやったらなんの問題もなかった
395NAME IS NULL
2020/08/31(月) 19:44:53.79ID:???396NAME IS NULL
2020/08/31(月) 21:15:12.47ID:??? >>395
システムデータベースなんて障害復旧以外では移行したことないっぺよ
システムデータベースなんて障害復旧以外では移行したことないっぺよ
397NAME IS NULL
2020/09/02(水) 19:25:18.36ID:??? 移行はバックアップのリストアでやったほうがパフォーマンスが上がった感じがあった
デフラグみたいなのがされるんじゃないかな
デフラグみたいなのがされるんじゃないかな
398NAME IS NULL
2020/09/02(水) 19:35:47.77ID:LSxEusa+ ?
399NAME IS NULL
2020/09/02(水) 20:55:17.17ID:??? ??
バックアップ/リストアなら普通にデフラグされるでしょ
バックアップ/リストアなら普通にデフラグされるでしょ
400NAME IS NULL
2020/09/03(木) 11:45:17.87ID:??? 基本バックアップ・リストアが良いと思うが。
なにしろオリジナルファイルとは別にバックアップファイルができるというのが作業安心度が高い。
なにしろオリジナルファイルとは別にバックアップファイルができるというのが作業安心度が高い。
401NAME IS NULL
2020/09/05(土) 16:34:53.14ID:??? >>400
システムデータベースのバックアップは同じバージョンにしか書き戻せないでしょ?
新しいバージョンに直接書き戻すことできるの?
調べればどっかに出てるんだろうけど、単純だからインストーラのアップデートを使ってる
システムデータベースのバックアップは同じバージョンにしか書き戻せないでしょ?
新しいバージョンに直接書き戻すことできるの?
調べればどっかに出てるんだろうけど、単純だからインストーラのアップデートを使ってる
402NAME IS NULL
2020/09/05(土) 20:13:10.43ID:???403NAME IS NULL
2020/09/05(土) 23:46:16.40ID:???404NAME IS NULL
2020/09/05(土) 23:48:22.94ID:???405NAME IS NULL
2020/09/06(日) 11:44:41.42ID:???406NAME IS NULL
2020/09/06(日) 21:36:15.51ID:??? システムデータベースバックアップなんて必要なの?
407NAME IS NULL
2020/09/06(日) 22:53:53.53ID:??? バックアップ自体はめっちゃ必要でしょ
408NAME IS NULL
2020/09/07(月) 02:36:47.59ID:??? とったバックアッップいつ使うの?
ユーザデータベースはわかるけど
システムデータベースをリストアするイメージが湧かない
ユーザデータベースはわかるけど
システムデータベースをリストアするイメージが湧かない
409NAME IS NULL
2020/09/07(月) 07:53:42.40ID:??? ハードウェア故障とか(震え)
410NAME IS NULL
2020/09/07(月) 10:36:53.26ID:??? 単体で動かしてるなら再インストールして必要な分再設定のほうが簡単だがな
411NAME IS NULL
2020/09/07(月) 11:14:37.06ID:??? “必要な分”が漏れなくすべてミスなく再設定できてるかどうかどうやって確かめるの?
412NAME IS NULL
2020/09/07(月) 16:11:23.92ID:??? 大事なのは環境構築の作業ログはちゃんと残そうぜだっぺ
413NAME IS NULL
2020/09/07(月) 18:06:08.83ID:???414NAME IS NULL
2020/09/07(月) 19:55:52.08ID:VUeEFudZ SQL Serverのバックアップの基本は論理バックアップなのかと眺めているけど、本当にそうだとすると大量データには不向きなRDBMSだな。
415NAME IS NULL
2020/09/07(月) 21:34:28.56ID:??? もしかして設定変更などguiで頑張ってるのか
416NAME IS NULL
2020/09/07(月) 22:07:50.44ID:??? sqlserver を仮想化するって遅くなるだけでメリットが感じられないな。
テストの時スナップショットからすぐ戻せるとか
そんな事くらいしかメリットない。
サーバー移行も大きい仮想ドライブファイルコピーするのに休日返上で一気にやらないといけないとか大変そう。
バックアップなら完全バックアップ前日とってコピーして
おいて当日差分バックアップとってそれだけコピーすればいいから早くすむと思う
テストの時スナップショットからすぐ戻せるとか
そんな事くらいしかメリットない。
サーバー移行も大きい仮想ドライブファイルコピーするのに休日返上で一気にやらないといけないとか大変そう。
バックアップなら完全バックアップ前日とってコピーして
おいて当日差分バックアップとってそれだけコピーすればいいから早くすむと思う
417NAME IS NULL
2020/09/07(月) 22:42:49.93ID:??? 仮想化知らんのかw
418NAME IS NULL
2020/09/08(火) 12:25:02.82ID:???419NAME IS NULL
2020/09/08(火) 14:39:08.95ID:HzvFsyRh イメージを戻すだけで済むようなシステムならもともと苦労なんかしないだろうに。
420NAME IS NULL
2020/09/13(日) 11:59:17.42ID:??? ちょっと困ってるので、詳しそうな人が多そうなここで質問
簡潔に言うとWindows10&WindowsServer2019+VS2019(ASP.NET,VB.NET)+SQLServer2019Expressでwindows認証接続してデバッグモードでプログラムは動作する。
それを発行してIISで参照するとDB接続に失敗する。
なんでだろう?
簡潔に言うとWindows10&WindowsServer2019+VS2019(ASP.NET,VB.NET)+SQLServer2019Expressでwindows認証接続してデバッグモードでプログラムは動作する。
それを発行してIISで参照するとDB接続に失敗する。
なんでだろう?
421NAME IS NULL
2020/09/13(日) 12:27:14.55ID:??? エラーメッセージを見ろよw
422NAME IS NULL
2020/09/13(日) 20:27:20.94ID:??? たぶんあのモジュールの設定がアレなんだと思うよ?
423NAME IS NULL
2020/09/14(月) 01:00:26.63ID:ix9Okpm5424NAME IS NULL
2020/09/14(月) 02:12:24.66ID:??? デバッグモードのときのあWebサーバは何なんだよ?
それはどのアカウントで動かしてるんだよ?
多分、IISのアカウントがWindows認証で認証できてないんだろ
今のIISのアプリケーションプールとか仮想アカウントで動いてるし
そのへんの仕組みちゃんと勉強する気がないならSQL Server認証でやっとけ
それはどのアカウントで動かしてるんだよ?
多分、IISのアカウントがWindows認証で認証できてないんだろ
今のIISのアプリケーションプールとか仮想アカウントで動いてるし
そのへんの仕組みちゃんと勉強する気がないならSQL Server認証でやっとけ
425NAME IS NULL
2020/09/14(月) 02:39:06.98ID:ix9Okpm5 IISすらろくに理解してないのがわかる質問だから、相手にしなくていいと思う。
426NAME IS NULL
2020/09/21(月) 16:11:02.91ID:gsw4bqcy MacのARM化に伴って、Mac+Docker+SQLServerみたいな組み合わせはできなくなりそうなんだけどさ
SQLServerってARM Linuxへの対応は計画にないもんなの?
SQLServerってARM Linuxへの対応は計画にないもんなの?
427NAME IS NULL
2020/09/22(火) 16:11:00.11ID:??? ここで聞かれても
428NAME IS NULL
2020/09/22(火) 17:03:29.93ID:??? ARM版WindowsのWOWを流用したら可能性はある
429NAME IS NULL
2020/09/22(火) 19:04:35.11ID:jrCQ1y5r macは需要のなさから、いろんなものが対応していない。
430NAME IS NULL
2020/09/23(水) 08:29:01.06ID:??? シーケンスの現在値がなぜか10個ほど巻き戻っていたせいで重複した番号が使われてレコード追加しようとしたときに一意性エラーでシステムが落ちてた
同じシステムで使われる他のシーケンスオブジェクトは問題なかったのに1個だけなぜか巻き戻ってた
なんか似たようなことなったひといない?
教えてエロいひと
同じシステムで使われる他のシーケンスオブジェクトは問題なかったのに1個だけなぜか巻き戻ってた
なんか似たようなことなったひといない?
教えてエロいひと
431NAME IS NULL
2020/09/23(水) 15:13:36.74ID:jpxv++AE SSMSから社外ドメインのサーバーのSSISに接続しようとすると、WINDOWS認証はできるのですが、SQL SERVER認証ができないためにログインできません。
これは仕様でしょうか?
これは仕様でしょうか?
432NAME IS NULL
2020/09/23(水) 16:23:58.55ID:??? ポートが通ってないんだろ
433NAME IS NULL
2020/09/24(木) 00:28:53.49ID:??? >>432
ありがとうございます。
SSMSのログイン画面でSSISに接続しようとすると、サーバー名を入れる前から、WINDOWS接続しか選べないのですが、これもポートですか?
データベースに接続する時には、WINDOWS接続とSQL SERVER接続が選べます。
ありがとうございます。
SSMSのログイン画面でSSISに接続しようとすると、サーバー名を入れる前から、WINDOWS接続しか選べないのですが、これもポートですか?
データベースに接続する時には、WINDOWS接続とSQL SERVER接続が選べます。
434NAME IS NULL
2020/09/24(木) 14:21:52.81ID:??? そもそもそのサーバーでSQL SERVER認証する設定になってるのか?
435NAME IS NULL
2020/09/24(木) 19:22:22.67ID:??? >>434
混合モードになっていて、DB接続は普通にできます。
混合モードになっていて、DB接続は普通にできます。
436NAME IS NULL
2020/09/24(木) 20:54:34.93ID:??? 仕様ってことでいいんじゃねぇの
知らんけど
DB接続できるならSSISDB使えば?
知らんけど
DB接続できるならSSISDB使えば?
437NAME IS NULL
2020/09/27(日) 21:52:54.46ID:??? Express版をいじってみてるんだけどさ
これ、データベースのホットバックアップをとった時って、バックアップ中に行われた更新はどうなっちゃうの?
自動的にリストアに必要なトランザクションログもバックアップに含まれたりするん?
これ、データベースのホットバックアップをとった時って、バックアップ中に行われた更新はどうなっちゃうの?
自動的にリストアに必要なトランザクションログもバックアップに含まれたりするん?
438NAME IS NULL
2020/09/27(日) 22:06:07.42ID:??? FULLバックアップならトランザクションログも含まれる
439NAME IS NULL
2020/09/27(日) 23:02:38.40ID:??? ありがとう
さすが元々有料だったのものだけあるな
さすが元々有料だったのものだけあるな
440NAME IS NULL
2020/09/28(月) 01:27:27.69ID:??? いろいろいじってたらそうか、流石に無料版はトランザクションログのバックアップに制限があって、使いづらくしてあるわけか
441NAME IS NULL
2020/09/28(月) 02:28:37.98ID:??? いやそんな制限ないだろ
バックアップまわりの制限って圧縮ぐらいじゃね
SQL Server触るの初めてなのか?まず復旧モデルってのを理解してるか?
バックアップまわりの制限って圧縮ぐらいじゃね
SQL Server触るの初めてなのか?まず復旧モデルってのを理解してるか?
442NAME IS NULL
2020/09/28(月) 13:04:07.47ID:??? 正直、復旧モデルがいまいち理解できてない
理解しようと公式のドキュメントをなぞってたんだけど、そもそもExpressだとSimpleってのしか選べなくて続けらんなかったぜ
理解しようと公式のドキュメントをなぞってたんだけど、そもそもExpressだとSimpleってのしか選べなくて続けらんなかったぜ
443NAME IS NULL
2020/09/28(月) 13:16:14.46ID:??? Simple(単純)ってのは、ログを保存、バックアップしない運用
Expressでも単純しか選べないってことはなかったと思うけどな
インストール後でも変えれるから試してみ
Expressでも単純しか選べないってことはなかったと思うけどな
インストール後でも変えれるから試してみ
444NAME IS NULL
2020/09/28(月) 16:00:50.71ID:??? せんきゅー!
デベロッパーに変えたら使えたぜ、これでドキュメントなぞりができるが・・・・使えるようになったときに本番で使う金はねえ
もし使うとしてもAzureの月700円のやつになっちゃいそう
デベロッパーに変えたら使えたぜ、これでドキュメントなぞりができるが・・・・使えるようになったときに本番で使う金はねえ
もし使うとしてもAzureの月700円のやつになっちゃいそう
445NAME IS NULL
2020/09/29(火) 10:05:54.68ID:??? ExpressでSimpleしか選べなかったバージョンって何?
あとOSも何?
あとOSも何?
446NAME IS NULL
2020/09/29(火) 13:59:55.80ID:??? ごめんなさい
リカバリーモデルを選択する画面を間違えていました
確かにExpressでも選択できました
リカバリーモデルを選択する画面を間違えていました
確かにExpressでも選択できました
447NAME IS NULL
2020/10/15(木) 22:52:25.90ID:??? SQL Server2016インストール後、IPアドレス変更した場合
特にする事はないのですか?
特にする事はないのですか?
448NAME IS NULL
2020/10/24(土) 20:31:09.40ID:??? >>447
DBエンジンそのものは問題なく動くはず
DBエンジンそのものは問題なく動くはず
449NAME IS NULL
2020/11/02(月) 15:26:45.98ID:??? SQLサーバーインストールする時にデータベースエンジンにしかチェック入れていないのにクライアント接続ツールとかが自動的にインストールされる理由を教えてほしいです
450NAME IS NULL
2020/11/02(月) 19:37:23.45ID:gbiAIS+S いつものサーバー君ですか?
451NAME IS NULL
2020/11/02(月) 19:40:53.40ID:??? はい
452NAME IS NULL
2020/11/12(木) 23:39:34.81ID:??? スレを間違えてしまってこちらに誘導されてきました
SQL Server Developerエディションについて教えて下さい。
このエディションは開発用となっていますが、機能的にはスタンダードと同レベルで使えるのでしょうか?
また実稼働では使用不可とはおもいますが、ライセンス的にはどこでみわけてるのでしょうか?
使用していると定期的に確認メッセージが出たりするのでしょうか?
SQL Server Developerエディションについて教えて下さい。
このエディションは開発用となっていますが、機能的にはスタンダードと同レベルで使えるのでしょうか?
また実稼働では使用不可とはおもいますが、ライセンス的にはどこでみわけてるのでしょうか?
使用していると定期的に確認メッセージが出たりするのでしょうか?
453NAME IS NULL
2020/11/13(金) 17:00:45.94ID:??? 機能的にはエンタープライズだったはず
ライセンスはたぶん確認とかないと思う
ライセンスはたぶん確認とかないと思う
454NAME IS NULL
2020/11/13(金) 19:00:35.80ID:??? テレメトリーで確認してます
455NAME IS NULL
2020/11/14(土) 02:55:42.24ID:5WdagOao456NAME IS NULL
2020/11/16(月) 21:28:14.28ID:5VqfDNor パッケージソフトをvpn環境でクラサバ運用し始めたのですがクライアントからだとメチャソフトの動作が遅いです。
見直すのはサーバーの性能?クライアントpcの性能?vpnの回線の速度?どこから見直したほうが良いでしょうか?
見直すのはサーバーの性能?クライアントpcの性能?vpnの回線の速度?どこから見直したほうが良いでしょうか?
457NAME IS NULL
2020/11/18(水) 08:54:02.70ID:??? SQL server2019を買って2017にダウングレードしようと考えてるんですが、やり方を調べると2017の媒体を自前で用意する必要があるのは分かったのですが2017のプロダクトキーも自前で準備するのでしょうか?
2017で持ってるプロダクトキーは他サーバーで稼働中のものしかなく、どちらもバンドル版です。
2017で持ってるプロダクトキーは他サーバーで稼働中のものしかなく、どちらもバンドル版です。
458NAME IS NULL
2020/11/19(木) 15:32:39.73ID:??? バンドル版のライセンス関係はその販売元に聞けってのが原則
459NAME IS NULL
2020/11/19(木) 15:58:34.37ID:??? 「他サーバーで稼働中のライセンスを流用できませんか?」 ってバンドル版の販売元に聞くの?
アホか
アホか
460NAME IS NULL
2020/11/20(金) 10:24:55.66ID:??? メディアとプロダクトキーを流用していいか聞くんだが?
ライセンスは2019買う前提だ
バンドル版じゃなければそれで行けるはずだが、バンドル版はいろんな条件が追加されてる可能性があるからな
ライセンスは2019買う前提だ
バンドル版じゃなければそれで行けるはずだが、バンドル版はいろんな条件が追加されてる可能性があるからな
461NAME IS NULL
2020/11/20(金) 12:58:39.69ID:??? >>460
他のライセンスのプロダクトキーを流用していいわけないだろ
他のライセンスのプロダクトキーを流用していいわけないだろ
462NAME IS NULL
2020/11/20(金) 23:54:47.82ID:??? ダウングレード権でそのプロダクト使う権利あればプロダクトキーも使って良いはずだが
463NAME IS NULL
2020/11/21(土) 10:27:18.32ID:??? >>462
これマジ?って思って確認したら
今は知らんけど少なくとも昔は違うライセンスのプロダクトキーを流用しても良かったみたい
https://social.technet.microsoft.com/Forums/en-US/4212d73b-626d-46fd-80b8-01d48d7b777d/
これマジ?って思って確認したら
今は知らんけど少なくとも昔は違うライセンスのプロダクトキーを流用しても良かったみたい
https://social.technet.microsoft.com/Forums/en-US/4212d73b-626d-46fd-80b8-01d48d7b777d/
464NAME IS NULL
2020/11/30(月) 14:27:49.98ID:??? 今さらなんだけどSQL Server Native Clientが推奨されていない事に気がつきました
MSOLEDBSQLへのプログラム書き換え結構面倒ですね(VB.NET)
(コネクション、コマンド、アダプター、データリーダーの名前が変わる)
SQL Server 2005から開発してて現状2017です
SQL Server Native Clientでは新機能サポートしないと書いてましたが
2017からのFORMATMESSAGE 関数は使えてます
CommandTextにT-SQL自分で書くやり方は影響しないのかな?
MSOLEDBSQLへのプログラム書き換え結構面倒ですね(VB.NET)
(コネクション、コマンド、アダプター、データリーダーの名前が変わる)
SQL Server 2005から開発してて現状2017です
SQL Server Native Clientでは新機能サポートしないと書いてましたが
2017からのFORMATMESSAGE 関数は使えてます
CommandTextにT-SQL自分で書くやり方は影響しないのかな?
465NAME IS NULL
2020/12/01(火) 05:14:39.15ID:???466NAME IS NULL
2020/12/01(火) 08:37:58.29ID:??? SQL Native Clientの場合
System.Data.SqlClient 名前空間
"Data Source=192.0.1.1;User ID=user;Password=pwd;Initial Catalog=db1" 接続文字列
Using a1 As New SqlConnection(ConnectionString)
,a2 As SqlCommand = a1.CreateCommand
,a3 As New SqlDataAdapter(a2)
MSOLEDBSQLの場合
System.Data.OleDb 名前空間
"Provider=MSOLEDBSQL;Data Source=192.0.1.1;User ID=user;Password=pwd;Initial Catalog=db1"
Using a1 As New OleDbConnection(ConnectionString)
,a2 As OleDbCommand = a1.CreateCommand
,a3 As New OleDbDataAdapter(a2)
SQLCLIENTとOLEDBではコネクション、コマンド、アダプター、データリーダーの名前が変わっています
置換すればいいだけなんだけど引数や戻り値にこれらがなってると少し面倒かも
OLEDBで接続文字列にSQLNCLIで使ってた人?ならMSOLEDBSQLに
変えるだけ済むけど
System.Data.SqlClient 名前空間
"Data Source=192.0.1.1;User ID=user;Password=pwd;Initial Catalog=db1" 接続文字列
Using a1 As New SqlConnection(ConnectionString)
,a2 As SqlCommand = a1.CreateCommand
,a3 As New SqlDataAdapter(a2)
MSOLEDBSQLの場合
System.Data.OleDb 名前空間
"Provider=MSOLEDBSQL;Data Source=192.0.1.1;User ID=user;Password=pwd;Initial Catalog=db1"
Using a1 As New OleDbConnection(ConnectionString)
,a2 As OleDbCommand = a1.CreateCommand
,a3 As New OleDbDataAdapter(a2)
SQLCLIENTとOLEDBではコネクション、コマンド、アダプター、データリーダーの名前が変わっています
置換すればいいだけなんだけど引数や戻り値にこれらがなってると少し面倒かも
OLEDBで接続文字列にSQLNCLIで使ってた人?ならMSOLEDBSQLに
変えるだけ済むけど
467NAME IS NULL
2020/12/02(水) 09:50:03.46ID:??? それはADO.NETの初期からあるOLEDB汎用のドライバで、MSOLEDBSQL用ではないわけだが
System.Data.SqlClient から Microsoft.Data.SqlClient にしろってことらしいが
名前空間の変更ぐらいで基本的なクラス名なんかは変更されてないと思うが
細かい動作なんかは未検証だからしらん
System.Data.SqlClient から Microsoft.Data.SqlClient にしろってことらしいが
名前空間の変更ぐらいで基本的なクラス名なんかは変更されてないと思うが
細かい動作なんかは未検証だからしらん
468NAME IS NULL
2020/12/02(水) 11:40:42.41ID:??? MSOLEDBSQL
ttps://docs.microsoft.com/ja-jp/sql/connect/oledb/download-oledb-driver-for-sql-server?view=sql-server-ver15
専用のドライバがあります
ttps://docs.microsoft.com/ja-jp/sql/connect/oledb/oledb-driver-for-sql-server?view=sql-server-ver15
ここではOLEDBでMSOLEDBSQLを推奨
Microsoft.Data.SqlClientには言及なし
Microsoft.Data.SqlClient
使ってみましたがクラスは変更なしでそのまま動きますね
Nugetで関係なさそうな物までいろいろひっついてくる
ttps://docs.microsoft.com/ja-jp/sql/connect/oledb/download-oledb-driver-for-sql-server?view=sql-server-ver15
専用のドライバがあります
ttps://docs.microsoft.com/ja-jp/sql/connect/oledb/oledb-driver-for-sql-server?view=sql-server-ver15
ここではOLEDBでMSOLEDBSQLを推奨
Microsoft.Data.SqlClientには言及なし
Microsoft.Data.SqlClient
使ってみましたがクラスは変更なしでそのまま動きますね
Nugetで関係なさそうな物までいろいろひっついてくる
469NAME IS NULL
2020/12/02(水) 18:20:54.26ID:??? 純粋なOLEDBのドライバと、ADO.NETのライブラリと混ぜて話してしまってるな
470NAME IS NULL
2020/12/03(木) 08:33:29.87ID:??? >>469
ありがとうございます
そもそも違いを意識してませんでした
OLEDBの最新がMSOLEDBSQL
ADO.NETの最新がMicrosoft.Data.SqlClient
現状System.Data.SqlClientで使用しているなら
Microsoft.Data.SqlClientにするのが無難かな
ありがとうございます
そもそも違いを意識してませんでした
OLEDBの最新がMSOLEDBSQL
ADO.NETの最新がMicrosoft.Data.SqlClient
現状System.Data.SqlClientで使用しているなら
Microsoft.Data.SqlClientにするのが無難かな
471NAME IS NULL
2020/12/04(金) 19:30:39.77ID:??? Microsoft.Data.SqlClientで使えるようになった新機能って何があるんだろ
それが必要でなければSystem.Data.SqlClientのままで良いんじゃないか
それが必要でなければSystem.Data.SqlClientのままで良いんじゃないか
472NAME IS NULL
2020/12/07(月) 10:02:07.90ID:???473NAME IS NULL
2020/12/14(月) 16:31:07.70ID:??? GUIでユーザやデータベースのプロパティーを変えるには、Windows + SSMSが必須なのですか?
(Azure Data Studio、SQL Server Data ToolsなどではT-SQLになるのでしょうか?)
公式のドキュメントを見ながら学習しているのですが、どのような項目があるかすら身についていない段階からCUIを使うのは辛いです・・・・
(Azure Data Studio、SQL Server Data ToolsなどではT-SQLになるのでしょうか?)
公式のドキュメントを見ながら学習しているのですが、どのような項目があるかすら身についていない段階からCUIを使うのは辛いです・・・・
474NAME IS NULL
2020/12/15(火) 08:09:01.23ID:???475NAME IS NULL
2020/12/16(水) 01:48:16.57ID:???476NAME IS NULL
2020/12/16(水) 08:28:20.52ID:??? >>475
SQL Server2019とaccess2016だとadp使えないですね
SQL Server2019とaccess2000ならadpル使えますよ(Windows10)
SSMS、テーブルとかストアドを縦にずらっと出てくるだけじゃなくて
業務ごとにグループ分けできると便利なんだけどな
SQL Server2019とaccess2016だとadp使えないですね
SQL Server2019とaccess2000ならadpル使えますよ(Windows10)
SSMS、テーブルとかストアドを縦にずらっと出てくるだけじゃなくて
業務ごとにグループ分けできると便利なんだけどな
477NAME IS NULL
2020/12/16(水) 20:31:08.36ID:??? >>476
SQLServer2008とAccess2010の組み合わせが編集できる最後の組み合わせだよね
Accessの方が新しいバージョンでないとスキーマの編集はできなかった
Access2013からadp未対応になったからね
2008R2はどうだったかなAccess2010で対応してたかもしれない
Access2000が対応してたのはSQLServer7までだったかな
SQLServer2008とAccess2010の組み合わせが編集できる最後の組み合わせだよね
Accessの方が新しいバージョンでないとスキーマの編集はできなかった
Access2013からadp未対応になったからね
2008R2はどうだったかなAccess2010で対応してたかもしれない
Access2000が対応してたのはSQLServer7までだったかな
478NAME IS NULL
2021/01/31(日) 00:52:41.31ID:??? OLEDB接続では接続させない
ODBC接続なら接続できる
なんてを設定できますか?
ODBC接続なら接続できる
なんてを設定できますか?
479NAME IS NULL
2021/02/02(火) 00:19:09.01ID:YPcBm8xr Oracle Master取得に向けた書籍が結構出ているようですが、SQLServerの資格向けの似たような本はないのですか?
資格自体は興味がないのですが、ある程度網羅的に知識をつけたいんです
資格自体は興味がないのですが、ある程度網羅的に知識をつけたいんです
480NAME IS NULL
2021/02/05(金) 21:42:33.86ID:??? そもそもSQL-Serverの資格ってもうないんじゃなかったっけ?
481NAME IS NULL
2021/02/06(土) 15:47:46.05ID:??? 1月末でSQL Serverに特化したMS資格はなくなったから
資格向けの本は本屋にはないだろうね
資格本じゃなく普通の入門書は大きめの本屋に行けばそれなりにあるはず
しっかり学びたければ「Microsoft SQL Server 2012 Internals」がおすすめ
資格向けの本は本屋にはないだろうね
資格本じゃなく普通の入門書は大きめの本屋に行けばそれなりにあるはず
しっかり学びたければ「Microsoft SQL Server 2012 Internals」がおすすめ
482NAME IS NULL
2021/02/06(土) 18:50:20.85ID:??? >>481
自習書じゃだめなのかな
自習書じゃだめなのかな
483NAME IS NULL
2021/02/06(土) 19:00:00.81ID:??? SQL Serverでやってみよう、はよく使った
484NAME IS NULL
2021/02/07(日) 01:17:38.31ID:??? >>482
自習書いいと思うよ
昔お世話になった
でも今は404が返されるね
https://www.microsoft.com/ja-jp/cloud-platform/products-SQL-Server-2014-Evaluate.aspx
2017の3種類はダウンロードできたけど基礎的なことは書いてない
自習書いいと思うよ
昔お世話になった
でも今は404が返されるね
https://www.microsoft.com/ja-jp/cloud-platform/products-SQL-Server-2014-Evaluate.aspx
2017の3種類はダウンロードできたけど基礎的なことは書いてない
485NAME IS NULL
2021/02/16(火) 17:08:42.18ID:??? SSMS v15.0.18369.0で2つ目のクエリウィンドウを掴んで1つ目の下とかにドッキングさせると落ちるんだけど自分のとこだけ?
ここ2、3日で急に発生した
なおOSはWindows 10 20H2 19042.804
ここ2、3日で急に発生した
なおOSはWindows 10 20H2 19042.804
486NAME IS NULL
2021/03/16(火) 15:18:58.11ID:Bn/p8j1N SSMSで質問です。
KeyであるIDが1から順に降られているテーブルで
ID='201'であるレコードを編集したい場合はどうすればいいのでしょうか?
上位200行に入らないレコードの編集方法を教えてください
KeyであるIDが1から順に降られているテーブルで
ID='201'であるレコードを編集したい場合はどうすればいいのでしょうか?
上位200行に入らないレコードの編集方法を教えてください
487NAME IS NULL
2021/03/16(火) 16:56:41.51ID:??? あれは簡易的機能だろう
自分はupdate文作って更新してる
自分はupdate文作って更新してる
488NAME IS NULL
2021/03/16(火) 19:09:50.37ID:??? >>486
URLが何故か貼れないけど、検索したらすぐ出てくる
URLが何故か貼れないけど、検索したらすぐ出てくる
489NAME IS NULL
2021/03/18(木) 03:59:09.61ID:??? 主キーでの1件UPDATEやなんのキーもない一時テーブルへの1件INSERTがおそくなるのって何が考えられるかな
プロシージャがたまに遅いときがあるってんで動的管理ビューのdm_exec_query_statsとprocedure_statsとるようにしたんだけど、
遅いときは決まってINSERTやUPDATEが遅くなってる
logical_writesやlogical_reads、physical_readsの値は特に変わらない
プロシージャ内のSELECTは速度安定してる
waitsとかもとってみるしかないかな
プロシージャがたまに遅いときがあるってんで動的管理ビューのdm_exec_query_statsとprocedure_statsとるようにしたんだけど、
遅いときは決まってINSERTやUPDATEが遅くなってる
logical_writesやlogical_reads、physical_readsの値は特に変わらない
プロシージャ内のSELECTは速度安定してる
waitsとかもとってみるしかないかな
490NAME IS NULL
2021/03/18(木) 10:01:17.95ID:???491NAME IS NULL
2021/03/18(木) 12:21:20.99ID:??? >>489
page splitが発生すれば遅くなる
page splitが発生すれば遅くなる
492489
2021/03/18(木) 14:20:31.16ID:??? >>491
ありがとうございます、page splitも見てみる
UPDATEしてるテーブルがインデックス14個もある...適正に作られてるんだろうか
それが原因とした場合、とりあえずはインデックスの断片化の解消、FILL Factorの値の見直しかな
splitは一時テーブルのINSERTも可能性あるのかな
#付きのテーブルで、プロシージャの最初にCreateしてるんだけど主キーもインデックスもなにもなくて
while内でループで一件ずつInsertしてるんだが、IF文で条件満たせばtruncateしてて、最高でも99件しか貯まらないようなテーブルなんだ
Updateの方でsplit多発してる場合、その影響を受けたりするものなのかな
ありがとうございます、page splitも見てみる
UPDATEしてるテーブルがインデックス14個もある...適正に作られてるんだろうか
それが原因とした場合、とりあえずはインデックスの断片化の解消、FILL Factorの値の見直しかな
splitは一時テーブルのINSERTも可能性あるのかな
#付きのテーブルで、プロシージャの最初にCreateしてるんだけど主キーもインデックスもなにもなくて
while内でループで一件ずつInsertしてるんだが、IF文で条件満たせばtruncateしてて、最高でも99件しか貯まらないようなテーブルなんだ
Updateの方でsplit多発してる場合、その影響を受けたりするものなのかな
493NAME IS NULL
2021/03/18(木) 15:29:09.05ID:??? >>492
一時テーブルでもpage splitの可能性はあるが
キーのないHeapならpage splitは発生しない
複数ユーザーがそのストアドを実行してる環境で
page splitが頻発してるならinsertのパフォーマンスもその影響を受ける可能性はある
でも一時テーブルとUPDATEで使ってるテーブルのストレージが違えば影響ないんじゃないかな
少なくとも1ユーザーがそのストアドを実行してるだけなら影響は受けない
INSERTのほうは一時テーブルで使ってるtemp dbへのI/Oが遅くなる原因が
何かないかを考えたほうがいいかも
あとはmemory optimizedにしてみるとか
一時テーブルでもpage splitの可能性はあるが
キーのないHeapならpage splitは発生しない
複数ユーザーがそのストアドを実行してる環境で
page splitが頻発してるならinsertのパフォーマンスもその影響を受ける可能性はある
でも一時テーブルとUPDATEで使ってるテーブルのストレージが違えば影響ないんじゃないかな
少なくとも1ユーザーがそのストアドを実行してるだけなら影響は受けない
INSERTのほうは一時テーブルで使ってるtemp dbへのI/Oが遅くなる原因が
何かないかを考えたほうがいいかも
あとはmemory optimizedにしてみるとか
494NAME IS NULL
2021/03/18(木) 17:57:27.50ID:??? 通常のINSERTと遅いINSERTでどの程度の差があるのか?
レコード長は? 1ページに何件入る?
固定長か可変長か?
TRUNCATE直後のINSERTが遅い可能性は?
レコード長は? 1ページに何件入る?
固定長か可変長か?
TRUNCATE直後のINSERTが遅い可能性は?
495489
2021/03/18(木) 21:38:23.03ID:??? >>493
なるほど
自分が関わってないシステムなんでその辺の情報も入手しつつ調べてみる
>>494
レコード長は長くない
全17カラムでBIGINTが1個、INTが12こ、TINYINTが3個、固定長文字列のCHAR3が1個
INSERTどれくらい遅いかだけど、問題ないとされてる日は平均70〜90マイクロ秒
遅いとされてるときは平均200マイクロ秒〜で、悪いと700、2000超えのときも
この値はプロシージャ実行前後でdm_exec_query_stats抜いて
execution_countとtotal_worker_timeの差を取って平均だした(erapse_timeも似たようなもの)
プロシージャ1回実行で10万〜30万件くらい処理してて、一番ひどい平均2000マイクロ秒越えのときは約10万回で212秒になってた
TRUNCATE直後が遅いとかそこまでは調査できてないです
なるほど
自分が関わってないシステムなんでその辺の情報も入手しつつ調べてみる
>>494
レコード長は長くない
全17カラムでBIGINTが1個、INTが12こ、TINYINTが3個、固定長文字列のCHAR3が1個
INSERTどれくらい遅いかだけど、問題ないとされてる日は平均70〜90マイクロ秒
遅いとされてるときは平均200マイクロ秒〜で、悪いと700、2000超えのときも
この値はプロシージャ実行前後でdm_exec_query_stats抜いて
execution_countとtotal_worker_timeの差を取って平均だした(erapse_timeも似たようなもの)
プロシージャ1回実行で10万〜30万件くらい処理してて、一番ひどい平均2000マイクロ秒越えのときは約10万回で212秒になってた
TRUNCATE直後が遅いとかそこまでは調査できてないです
496NAME IS NULL
2021/03/18(木) 22:40:07.73ID:??? MSSQLのtruncateの挙動とマッチしていない…のかも
・truncateすると、レコードにtruncateのマークがされるだけで
ブロック中で生きてるレコードが無くてもブロックは開放されない
・空きブロックが無く、新たにブロックが必要になったときに、
その時にtruncateのマークがされたレコードを調査して、
ブロックが未使用だと判明したらそのブロックを再利用する
・truncateすると、レコードにtruncateのマークがされるだけで
ブロック中で生きてるレコードが無くてもブロックは開放されない
・空きブロックが無く、新たにブロックが必要になったときに、
その時にtruncateのマークがされたレコードを調査して、
ブロックが未使用だと判明したらそのブロックを再利用する
497NAME IS NULL
2021/03/18(木) 22:57:09.33ID:??? んーそれだとtempdb周りをまず疑うかな
この辺に該当しないか調べてみては?
https://www.sqlskills.com/blogs/paul/the-accidental-dba-day-27-of-30-troubleshooting-tempdb-contention/
https://www.red-gate.com/simple-talk/sql/sql-development/heaps-in-sql-server-part-4-pfs-contention/
でもトランザクションログ周りの可能性とかもあるし
遅くなる時に一緒に発生してる何かをどうにかして掴まないと難しいね
この辺に該当しないか調べてみては?
https://www.sqlskills.com/blogs/paul/the-accidental-dba-day-27-of-30-troubleshooting-tempdb-contention/
https://www.red-gate.com/simple-talk/sql/sql-development/heaps-in-sql-server-part-4-pfs-contention/
でもトランザクションログ周りの可能性とかもあるし
遅くなる時に一緒に発生してる何かをどうにかして掴まないと難しいね
498NAME IS NULL
2021/03/18(木) 23:26:54.65ID:??? ディスクが死にかけてるとか、ネットワークが不安定とかの可能性は?
つか単にロックウェイトじゃないだろうな
トランザクションと分離レベルどうなってる?
つか単にロックウェイトじゃないだろうな
トランザクションと分離レベルどうなってる?
499NAME IS NULL
2021/03/19(金) 00:25:42.14ID:??? localのtemp tableみたいなのでロックウェイトはないんじゃないか?
500489
2021/03/19(金) 00:25:58.90ID:???501NAME IS NULL
2021/03/19(金) 02:31:40.64ID:??? テスト環境では再現しない?
該当のストアドの単独実行か複数の並列実行で再現したら絞りやすい
再現しなければしないで本番環境特有の設定か他の処理の影響を受けてることが分かるので半歩前進
再現しない環境と本番環境で各種測定結果の比較もできる
月1~2回しか発生しないならそのタイミングで他に動いてた処理を把握できれば調査進みそう
該当のストアドの単独実行か複数の並列実行で再現したら絞りやすい
再現しなければしないで本番環境特有の設定か他の処理の影響を受けてることが分かるので半歩前進
再現しない環境と本番環境で各種測定結果の比較もできる
月1~2回しか発生しないならそのタイミングで他に動いてた処理を把握できれば調査進みそう
502489
2021/03/19(金) 13:11:32.42ID:??? >>501
テスト環境の再現テストは難しい
本番でも再発頻度が高くなくて、やるとするとその時の同じデータを持ってくる必要があるが、テストサーバにリソースがそんななく、テスト環境には持って来れない機密情報も含んでて、そこをどうにかするマンパワーも割けない
ストアドは構造上同時実行は不可
俺自身はそこの開発メンバでもなくて、物理的にというか地理的に本番どころかテスト環境にもアクセスできない立場なんで直接手動かすこともできないのです
テスト環境の再現テストは難しい
本番でも再発頻度が高くなくて、やるとするとその時の同じデータを持ってくる必要があるが、テストサーバにリソースがそんななく、テスト環境には持って来れない機密情報も含んでて、そこをどうにかするマンパワーも割けない
ストアドは構造上同時実行は不可
俺自身はそこの開発メンバでもなくて、物理的にというか地理的に本番どころかテスト環境にもアクセスできない立場なんで直接手動かすこともできないのです
503NAME IS NULL
2021/03/20(土) 00:29:36.15ID:??? あとは早い時と遅い時の実行プランが同じか見るぐらいかなぁ
テータ大量更新した後で発生しやすいとかなら疑ってみてもいいかも
パラメタスニッフィングでググってみて
テータ大量更新した後で発生しやすいとかなら疑ってみてもいいかも
パラメタスニッフィングでググってみて
504489
2021/03/21(日) 10:09:19.60ID:??? >>503
処理後にdm_exec_query_planも取ってて比較はしてみた
パターンが2つあって、最初のカーソル宣言のとこが違うんだが、InnerJoin(NestedLoop)してるテーブルの結合順番が違うのと、SQLに書かれてないカラムが出力項目にあるという違いがある(後者はなんでそうなるのかわからない)
ただ、早いときと遅いときでパターンが分かれてる感じでもないのでプランからは原因は分からなかった
処理後にdm_exec_query_planも取ってて比較はしてみた
パターンが2つあって、最初のカーソル宣言のとこが違うんだが、InnerJoin(NestedLoop)してるテーブルの結合順番が違うのと、SQLに書かれてないカラムが出力項目にあるという違いがある(後者はなんでそうなるのかわからない)
ただ、早いときと遅いときでパターンが分かれてる感じでもないのでプランからは原因は分からなかった
505NAME IS NULL
2021/03/21(日) 12:14:07.24ID:??? SQLは変わらないのにNested Loopの結合順が変わるなら
統計情報を元にした件数予測が逆転することがあるってことだよね
結合順は速度にほぼ影響ない場合もあれば大幅に影響する場合もあるので
それだけじゃなんとも言えないが実際どうなのか再現テストやる価値はありそう
統計情報を元にした件数予測が逆転することがあるってことだよね
結合順は速度にほぼ影響ない場合もあれば大幅に影響する場合もあるので
それだけじゃなんとも言えないが実際どうなのか再現テストやる価値はありそう
506NAME IS NULL
2021/04/22(木) 17:20:45.84ID:nSxF6+DB sqlserver 2012 localdbなんですが、
SSMS等でデータを確認しても、明らかに存在しないのに
重複キーエラーでInsert出来ないデータがあります。
DBファイルを色々入れ替えて使用したため、
Indexファイルの整合性が崩れているのだと推測しますが、
どこを初期化すれば治るのでしょうか?
sp_updatestatsは試しましたがダメでした
SSMS等でデータを確認しても、明らかに存在しないのに
重複キーエラーでInsert出来ないデータがあります。
DBファイルを色々入れ替えて使用したため、
Indexファイルの整合性が崩れているのだと推測しますが、
どこを初期化すれば治るのでしょうか?
sp_updatestatsは試しましたがダメでした
507NAME IS NULL
2021/04/22(木) 18:43:36.91ID:??? キーが重複してないのに重複キーエラーも聞いたことがなければ
indexの整合性が崩れるってのも聞いたこと無いなぁ
indexが不整合を起こしてる可能性を疑ってるならとりあえずdrop/createすればいいんじゃないの?
複数件insertしててエラーでトランザクションがロールバックしてるので
テーブルには該当データがないように見えるとか?
indexの整合性が崩れるってのも聞いたこと無いなぁ
indexが不整合を起こしてる可能性を疑ってるならとりあえずdrop/createすればいいんじゃないの?
複数件insertしててエラーでトランザクションがロールバックしてるので
テーブルには該当データがないように見えるとか?
508NAME IS NULL
2021/04/22(木) 21:42:23.00ID:??? Reporting Serviceって何処のスレで聞けば良いの?
初めてやるんだけど、帳票を出すためのツールって事くらいをようやくわかり書けてきたところ
初めてやるんだけど、帳票を出すためのツールって事くらいをようやくわかり書けてきたところ
509NAME IS NULL
2021/04/23(金) 08:41:43.91ID:??? PowerBI使ってとけ。
今からssrsだと後悔するぞ
今からssrsだと後悔するぞ
510NAME IS NULL
2021/04/23(金) 13:36:29.46ID:???511NAME IS NULL
2021/05/13(木) 14:23:22.61ID:??? 防衛省が中国のハッカーとやり合える人材を募集中 年収最高2000万円
https://leia.5ch.net/test/read.cgi/poverty/1620874048/
https://leia.5ch.net/test/read.cgi/poverty/1620874048/
512NAME IS NULL
2021/06/17(木) 12:50:08.04ID:bQpmAAKU おまえら接続プロバイダは何使ってる?
おれは、MSDASQL
おれは、MSDASQL
513NAME IS NULL
2021/07/05(月) 12:25:38.17ID:??? With句使えますか?
使ってみたいので
使ってみたいので
514NAME IS NULL
2021/07/05(月) 20:21:44.47ID:??? >>513
まず使ってから書き込もう
まず使ってから書き込もう
515NAME IS NULL
2021/07/10(土) 17:26:45.17ID:??? select into #tmpの方が使いやすいね
516NAME IS NULL
2021/08/05(木) 22:36:51.55ID:btL3ovFW ユーザーCALって、後からライセンス数増やすのは、追加分購入して認証するだけで増やせるの?
517NAME IS NULL
2021/08/07(土) 01:05:53.66ID:??? >>516
製品版使うときはコアライセンスぐらいしか使ったことないよ
ユーザーCALってどのくらいの規模で使ってるの?
ファイルサーバのユーザーCALなら使ったことある
認証が無かった時期で自分で数字を入れるだけで、ごまかそうと思えば多めの数字を入れるだけだけだった
業務用でライセンス数をごまかすようなことはないから当時は厳格な管理はしてなかったね
製品版使うときはコアライセンスぐらいしか使ったことないよ
ユーザーCALってどのくらいの規模で使ってるの?
ファイルサーバのユーザーCALなら使ったことある
認証が無かった時期で自分で数字を入れるだけで、ごまかそうと思えば多めの数字を入れるだけだけだった
業務用でライセンス数をごまかすようなことはないから当時は厳格な管理はしてなかったね
518NAME IS NULL
2021/08/22(日) 11:38:43.63ID:+WxTgcLC https://kurashigoto.hokkaido.jp/flexibleSearch/search.php?offset=0&limit=20&search=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://magazine.jp.square-enix.com/top/comics/?search=q&x=0&y=0&sword=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://miyagi.doctor-search.tv/search/hospital?dis=3000&Keyword=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://mtke-job.jp/list/keyword=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://news.dwango.jp/search/?s=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://magazine.jp.square-enix.com/top/comics/?search=q&x=0&y=0&sword=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://miyagi.doctor-search.tv/search/hospital?dis=3000&Keyword=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://mtke-job.jp/list/keyword=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://news.dwango.jp/search/?s=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
519NAME IS NULL
2021/08/31(火) 19:43:02.17ID:T0bkdi6G テーブル名に半角スペースつけて作成したら
半角スペースなしでテーブル作ろうとしたわ重複してるって言われる。バグなの?
半角スペースなしでテーブル作ろうとしたわ重複してるって言われる。バグなの?
520NAME IS NULL
2021/08/31(火) 21:15:04.51ID:???521NAME IS NULL
2021/08/31(火) 23:34:39.11ID:??? 末尾にスペースなんじゃね
522NAME IS NULL
2021/09/01(水) 02:12:00.19ID:???523NAME IS NULL
2021/09/01(水) 16:51:37.87ID:??? 新しいバージョンのドキュメントには書いてないけど末尾スペースはtrimされるのが仕様みたいよ
https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2008-r2/ms176027(v=sql.105)
https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2008-r2/ms176027(v=sql.105)
524NAME IS NULL
2021/09/01(水) 23:43:12.04ID:N1bzhcTm なんで半角スペースを使おうとしているのかがわからない。
525NAME IS NULL
2021/09/02(木) 02:18:44.81ID:w7l5TODt >>524
そこはそうしちゃっただけ
そこはそうしちゃっただけ
526NAME IS NULL
2021/09/02(木) 08:09:01.61ID:??? 間にスペースはまだわかるけど最後にスペースはさすがに理解できん
527NAME IS NULL
2021/09/02(木) 08:35:15.22ID:??? 規約でテーブル名の桁数決まってんだよ
528NAME IS NULL
2021/09/02(木) 09:15:13.80ID:??? だとしても普通アンダースコアとかにしないか?
529NAME IS NULL
2021/09/02(木) 09:37:12.56ID:??? すごい規約だな
COBOLっぽさがあるけど普通はDB側じゃなくプログラム側で対処するよな
COBOLっぽさがあるけど普通はDB側じゃなくプログラム側で対処するよな
530NAME IS NULL
2021/09/02(木) 10:47:39.48ID:??? そんな規約があるような所はテーブル名もT0001234とかじゃねーの?
531NAME IS NULL
2021/09/02(木) 18:14:09.97ID:??? 日本語の処理オプションの設定
532NAME IS NULL
2021/09/04(土) 04:20:49.33ID:sVLT48pB クライアントソフトからsqlでビューの登録がタイムアウトしてしまう。何が原因かどうやりゃいいの?
533NAME IS NULL
2021/09/04(土) 10:36:14.21ID:??? >>532
エラーメッセージで何がタイムアウトをしてるのかは確認できてる?
エラーメッセージで何がタイムアウトをしてるのかは確認できてる?
534NAME IS NULL
2021/09/04(土) 12:52:19.62ID:sVLT48pB535NAME IS NULL
2021/09/04(土) 14:28:46.27ID:??? >>534
Command Timeoutなので指定してなければデフォルト30秒なんだけど
開始してからタイムアウトが発生するまでの秒数と合ってる?
https://docs.microsoft.com/ja-jp/dotnet/api/system.data.sqlclient.sqlcommand.commandtimeout?view=dotnet-plat-ext-5.0
サーバー側の負荷状況や実際に処理が実行されてるかをActivity Monitorとかで確認すればいい
Indexed Viewとかじゃなくて単純なViewなら秒単位の時間がかかったりしないから
何か待たされてるんだろうけどぱっと思いつく原因はないな
Command Timeoutなので指定してなければデフォルト30秒なんだけど
開始してからタイムアウトが発生するまでの秒数と合ってる?
https://docs.microsoft.com/ja-jp/dotnet/api/system.data.sqlclient.sqlcommand.commandtimeout?view=dotnet-plat-ext-5.0
サーバー側の負荷状況や実際に処理が実行されてるかをActivity Monitorとかで確認すればいい
Indexed Viewとかじゃなくて単純なViewなら秒単位の時間がかかったりしないから
何か待たされてるんだろうけどぱっと思いつく原因はないな
536NAME IS NULL
2021/09/04(土) 18:09:08.99ID:sVLT48pB sql Server側で、クエリパフォーマンス分析や構造分析って
プロファイラー以外になにつかってます?
プロファイラー以外になにつかってます?
537NAME IS NULL
2021/09/04(土) 20:30:42.16ID:??? 構造分析ってなんかわからんけど
クエリのパフォーマンス分析はEXPLANが基本 (SET SHOWPLAN_ALL ON)
実際実行した結果はSET STATISTICS IO ONとSET STATISTICS TIME ONで確認
トレースとるのは正常に実行されないクエリに悪影響を及ぼしてるものが
他の方法では簡単に特定できないような場合に使う
性能に影響でるから運用中の本番環境で使うのは最終手段
クエリのパフォーマンス分析はEXPLANが基本 (SET SHOWPLAN_ALL ON)
実際実行した結果はSET STATISTICS IO ONとSET STATISTICS TIME ONで確認
トレースとるのは正常に実行されないクエリに悪影響を及ぼしてるものが
他の方法では簡単に特定できないような場合に使う
性能に影響でるから運用中の本番環境で使うのは最終手段
538NAME IS NULL
2021/09/05(日) 14:11:40.60ID:??? とりあえず流したSQLとどうやって実行したか曝せよ
ビューの登録ってのが何のことかわからんが、Create Viewがそうそうタイムアウトするとは思えん
ビューの登録ってのが何のことかわからんが、Create Viewがそうそうタイムアウトするとは思えん
539NAME IS NULL
2021/09/09(木) 20:27:34.53ID:??? alter view ではtime outはよくある
使ってるviewをalterするとデットロックする
使ってるviewをalterするとデットロックする
540NAME IS NULL
2021/09/10(金) 01:03:31.08ID:JMgjI8OA sqlの中の括弧の対応関係を色付けしてくれる機能ってssmsであります?
541NAME IS NULL
2021/09/12(日) 08:06:05.73ID:??? >>539
deadlockとtimeoutはエラーメッセージが違う
deadlockとtimeoutはエラーメッセージが違う
542NAME IS NULL
2021/09/13(月) 00:55:02.75ID:??? 単なるタイムアウトをデッドロックとか言う人多いよね
まあSQL Serverはalter viewもトランザクション内でできたはずだから
デッドロックすることもなくはないんだろうけど
まあSQL Serverはalter viewもトランザクション内でできたはずだから
デッドロックすることもなくはないんだろうけど
543NAME IS NULL
2021/09/13(月) 08:13:14.58ID:8fCPiXxw 排他ロックとデッドロックを間違えるレベルはひどいなw
544NAME IS NULL
2021/09/22(水) 02:05:41.92ID:iue4uJKZ csvファイルでテーブルをキーが一致したらレコード洗い替えたい。バッチファイルとか実行すると作動するようにしたい。
可能ですか?
可能ですか?
545NAME IS NULL
2021/09/22(水) 12:58:41.05ID:??? Accessはもう諦めたのか?
そんなんじゃ何一つ出来ないぞ
そんなんじゃ何一つ出来ないぞ
546NAME IS NULL
2021/09/22(水) 13:34:54.24ID:xdPa75UG >>545
ん?
ん?
547NAME IS NULL
2021/09/23(木) 06:49:48.75ID:??? >>544
できる
できる
548NAME IS NULL
2021/09/23(木) 12:16:42.00ID:bPVhBfA6 >>547
やり方おしえてよ
やり方おしえてよ
549NAME IS NULL
2021/09/23(木) 14:03:04.89ID:???550NAME IS NULL
2021/09/23(木) 20:35:31.15ID:bPVhBfA6 sqlcmdをサーバはインストールしてるけど
クライアントはしてない場合にも
実行できる方法ない?
クライアントはしてない場合にも
実行できる方法ない?
551NAME IS NULL
2021/09/23(木) 20:48:33.15ID:???552NAME IS NULL
2021/09/23(木) 21:00:49.66ID:??? >>550
何らかの方法でサーバーにログインして実行すればいいんじゃね?
何らかの方法でサーバーにログインして実行すればいいんじゃね?
553NAME IS NULL
2021/09/23(木) 21:10:39.70ID:??? インストールしたらよくね?
554NAME IS NULL
2021/09/26(日) 10:51:50.76ID:???555NAME IS NULL
2021/09/26(日) 12:12:38.40ID:??? >>554
>クライアント環境にはできるだけツール類はいれたくないだろ
DBを直接操作する人間のクライアントにsqlcmdとかSSMSが入ってないほうが意味がわからないんだけど?
まさかエンドユーザーにやらせようとしてんの?
>クライアント環境にはできるだけツール類はいれたくないだろ
DBを直接操作する人間のクライアントにsqlcmdとかSSMSが入ってないほうが意味がわからないんだけど?
まさかエンドユーザーにやらせようとしてんの?
556NAME IS NULL
2021/09/26(日) 14:12:03.66ID:5SVUANCV557NAME IS NULL
2021/09/26(日) 15:46:53.78ID:??? >>556
そういうのは普通アプリケーション経由で処理するから
エンドユーザーのクライアント環境でバッチを流したりはしない
入力データが不正だったり更新が競合したりしても
エンドユーザーレベルのリテラシーで対応できるようなものを作る
各ユーザー専用のテーブルのみ更新するような場合で
データが壊れても再作成すればいいような重要度の低いものなら
そういうやり方もありえるのかもしれないが
問い合わせが増えるだけだからまずやらない
そういうのは普通アプリケーション経由で処理するから
エンドユーザーのクライアント環境でバッチを流したりはしない
入力データが不正だったり更新が競合したりしても
エンドユーザーレベルのリテラシーで対応できるようなものを作る
各ユーザー専用のテーブルのみ更新するような場合で
データが壊れても再作成すればいいような重要度の低いものなら
そういうやり方もありえるのかもしれないが
問い合わせが増えるだけだからまずやらない
558NAME IS NULL
2021/09/26(日) 16:43:12.12ID:5SVUANCV559NAME IS NULL
2021/09/27(月) 11:31:27.95ID:BOre3vig クライアントアプリが制限されているから
BATでやりたいと……
なるほど!理解した!
BATでやりたいと……
なるほど!理解した!
560NAME IS NULL
2021/09/27(月) 14:50:56.29ID:??? データの洗い替えをユーザーにやらせるのは聞いたことないな
マスタメンテで複数件一括更新することを洗い替えと呼んでるのかもしれないが
マスタメンテで複数件一括更新することを洗い替えと呼んでるのかもしれないが
561NAME IS NULL
2021/09/27(月) 17:18:19.08ID:??? マスタメンテ機能そのものが用意されてなさそう
562NAME IS NULL
2021/09/28(火) 00:20:14.32ID:moPRyYxu マスタじゃないよ、トランザクション
563NAME IS NULL
2021/09/28(火) 07:33:03.07ID:??? 闇が深すぎて救いようがないな
564NAME IS NULL
2021/09/28(火) 10:02:47.41ID:??? トランザクションなら本来の意味での「洗い替え」っぽいけど
だとしたらユーザー入力のcsvファイル使って
ユーザー環境でバッチ実行させる意味がますますわからん
わかる人いたら解説してくれ
だとしたらユーザー入力のcsvファイル使って
ユーザー環境でバッチ実行させる意味がますますわからん
わかる人いたら解説してくれ
565NAME IS NULL
2021/09/29(水) 17:04:04.45ID:??? こういう当たり前のアプリケーション設計知識って実務経験以外で手に入れるのは難しいのかもね
566NAME IS NULL
2021/10/03(日) 07:29:19.61ID:??? >>564
話を聞いてて、うちの会社でも同じような例があった
本社のシステム部門がDBを管理していて、事業部のシステム部門がマスタを更新したいって例があった。
本社部門は、テーブルを直接操作する権限は与えたくないんだけど、更新作業を自分たちでやりたくない、インターフェースのアプリを作りたくない
というような流れ、本社部門がしっかり作りこめば良いだけなのにね
話を聞いてて、うちの会社でも同じような例があった
本社のシステム部門がDBを管理していて、事業部のシステム部門がマスタを更新したいって例があった。
本社部門は、テーブルを直接操作する権限は与えたくないんだけど、更新作業を自分たちでやりたくない、インターフェースのアプリを作りたくない
というような流れ、本社部門がしっかり作りこめば良いだけなのにね
567NAME IS NULL
2021/10/03(日) 09:51:16.00ID:??? システム部門がユーザーの場合は全然話が違うでしょ
やり方はいろいろ有るけど単純なのはファイル連携で定期スケジューリングしたバッチジョブ流すだけ
エラー時は入力データを用意した関係者にエラー内容を通知するようジョブを組んでおけば十分なので
ユーザーインターフェースを用意しなきゃいけないような話ではない
自分たちが管理してないDBを直接SQLで更新したいってのも論外だし
事業部のシステム部門があるような大企業でマスタの更新バッチすら作らないような本社システム部門はかなりヤバい
やり方はいろいろ有るけど単純なのはファイル連携で定期スケジューリングしたバッチジョブ流すだけ
エラー時は入力データを用意した関係者にエラー内容を通知するようジョブを組んでおけば十分なので
ユーザーインターフェースを用意しなきゃいけないような話ではない
自分たちが管理してないDBを直接SQLで更新したいってのも論外だし
事業部のシステム部門があるような大企業でマスタの更新バッチすら作らないような本社システム部門はかなりヤバい
568NAME IS NULL
2021/10/03(日) 12:27:53.85ID:??? てか、事業部がどんな大きさなのかわからんけどシステム部門を抱えてるレベルなら事業部のDB持ってないの?
コンプライアンスとかで本社のシステム部門が統括管理してるのかな?
それであっても簡単なメンテツールを事業部システム部門が作ればいいだけだと思うけど…
コンプライアンスとかで本社のシステム部門が統括管理してるのかな?
それであっても簡単なメンテツールを事業部システム部門が作ればいいだけだと思うけど…
569NAME IS NULL
2021/10/13(水) 21:58:34.60ID:??? updateなのに重複するキーを挿入できませんと怒られる
そんなこと有り得るのかな
そんなこと有り得るのかな
570NAME IS NULL
2021/10/13(水) 22:09:43.60ID:??? >>569
そりゃありえるでしょ
そりゃありえるでしょ
571NAME IS NULL
2021/10/14(木) 00:17:12.64ID:??? キー値を書き換えた
トリガーでなんかした
まあ他にもあるかもしれんが、ありえる
トリガーでなんかした
まあ他にもあるかもしれんが、ありえる
572NAME IS NULL
2021/10/14(木) 00:19:10.66ID:??? >>567>>568
おっしゃる通りです
日立とかIBMのホスト系しか扱ったことがない方が多くて、人員も世代交代に失敗していて古いシステム構成のまま改悪が続いてる
事業部側も人員がいなくてシニア契約社員が主戦力になってるような会社なんです
若い有能な人は見切りをつけて転職していく
個々の担当者はそれなりなんだと思うけど、経営がちょっと抜けてる感じでどうしようもない
おっしゃる通りです
日立とかIBMのホスト系しか扱ったことがない方が多くて、人員も世代交代に失敗していて古いシステム構成のまま改悪が続いてる
事業部側も人員がいなくてシニア契約社員が主戦力になってるような会社なんです
若い有能な人は見切りをつけて転職していく
個々の担当者はそれなりなんだと思うけど、経営がちょっと抜けてる感じでどうしようもない
573NAME IS NULL
2021/10/14(木) 07:04:25.37ID:???574NAME IS NULL
2021/11/10(水) 05:15:39.36ID:??? 付加列インデックスって関数の引数に使ってくれる?
where句、select句どっちも使う、使わない、どっちかしか使わないとかわかる資料ってどっかにあるかな?
where句、select句どっちも使う、使わない、どっちかしか使わないとかわかる資料ってどっかにあるかな?
575NAME IS NULL
2021/11/10(水) 16:34:28.00ID:??? SQL Serverは関数インデックスをサポートしてないから
付加列インデックスかどうかやkeyかnon-keyかに関係なく
関数の引数に使った場合はindex seekにはならないよ
computed columnでkeyならwhere句で使える
non-keyはwhere句では使えない
付加列インデックスかどうかやkeyかnon-keyかに関係なく
関数の引数に使った場合はindex seekにはならないよ
computed columnでkeyならwhere句で使える
non-keyはwhere句では使えない
576NAME IS NULL
2021/11/11(木) 16:52:52.42ID:??? >>575
やっぱそうだよね。
なんか遅いクエリの実行プラン確認したときに出てきた足りないindexの中の付加列にisnull関数噛ませてるカラムが出てたんでもしやと思ったんだけど。
バージョンは2017です
ありがとうございました
やっぱそうだよね。
なんか遅いクエリの実行プラン確認したときに出てきた足りないindexの中の付加列にisnull関数噛ませてるカラムが出てたんでもしやと思ったんだけど。
バージョンは2017です
ありがとうございました
577NAME IS NULL
2021/11/11(木) 18:26:27.79ID:??? ん?
isnullってことはwhere句で使ってるんじゃないの?
であれば付加列インデックスの使い方間違ってる
あとちゃんとインデックス作っても
isnull自体にパフォーマンスの問題あるから違う方法に変えたほうがいいかもしれない
isnullってことはwhere句で使ってるんじゃないの?
であれば付加列インデックスの使い方間違ってる
あとちゃんとインデックス作っても
isnull自体にパフォーマンスの問題あるから違う方法に変えたほうがいいかもしれない
578NAME IS NULL
2021/11/11(木) 20:29:26.94ID:??? >>577
そう。where句で使っていてselect句にはないカラムです。
付加列インデックスの使い方の件はわかってたんだけど、実行プランの足りないインデックスにisnull関数に噛ませてるカラムが付加列に入ったインデックスが出てきたんで、あれ思い違いしてたんかな?と思って質問させていただきました。
違う方法についてはよくある触りにくい、他の方法はコストがかかるってやつです。
まぁ、インデックスの追加も方法の一つとして、他の案も含めて考えます。
そう。where句で使っていてselect句にはないカラムです。
付加列インデックスの使い方の件はわかってたんだけど、実行プランの足りないインデックスにisnull関数に噛ませてるカラムが付加列に入ったインデックスが出てきたんで、あれ思い違いしてたんかな?と思って質問させていただきました。
違う方法についてはよくある触りにくい、他の方法はコストがかかるってやつです。
まぁ、インデックスの追加も方法の一つとして、他の案も含めて考えます。
579NAME IS NULL
2021/11/11(木) 20:51:37.87ID:??? この一連のやり取りが理解できないのは俺だけか?
とりあえず、その他の条件が満たされるなら
関数の引数でも、付加列の目的である余計なキー参照はしなくて済むぞ
とりあえず、その他の条件が満たされるなら
関数の引数でも、付加列の目的である余計なキー参照はしなくて済むぞ
580NAME IS NULL
2021/11/11(木) 21:31:46.51ID:??? >>579
分かりづらかったのならすまんね。
今回の質問は問題解決ではなく仕様確認になるのかな
とある遅いクエリ流したら実行プランの確認でこれが足りないよって言われたインデックスにwhere句のisnull関数の引数に使ってるカラムが付加列として出てきました。
関数の引数にインデックスのカラムは使えないと思ってたんだけど、付加列ならいけるの?ってことで質問しました。
とある遅いクエリの改善についてはどうでもいいです
分かりづらかったのならすまんね。
今回の質問は問題解決ではなく仕様確認になるのかな
とある遅いクエリ流したら実行プランの確認でこれが足りないよって言われたインデックスにwhere句のisnull関数の引数に使ってるカラムが付加列として出てきました。
関数の引数にインデックスのカラムは使えないと思ってたんだけど、付加列ならいけるの?ってことで質問しました。
とある遅いクエリの改善についてはどうでもいいです
581NAME IS NULL
2021/11/11(木) 21:43:45.41ID:6iIlck1C なぜやってみないのか?
582NAME IS NULL
2021/11/11(木) 23:20:50.43ID:??? 使えないとはどういうことを言ってるんだ?
インデックスはってもそのカラムが使えなくなることなんてないぞ
実行時にそのインデックス使うかどうかはわからんがな
そのパターンでインデックス使って早くなるのは大体はキー参照しなくて済むパターン
だから通常のインデックス列ではなくて付加列で良いというお薦めだろう
インデックスはってもそのカラムが使えなくなることなんてないぞ
実行時にそのインデックス使うかどうかはわからんがな
そのパターンでインデックス使って早くなるのは大体はキー参照しなくて済むパターン
だから通常のインデックス列ではなくて付加列で良いというお薦めだろう
583NAME IS NULL
2021/11/11(木) 23:40:31.54ID:??? さすがにそれは文脈でわかってやれやw
584NAME IS NULL
2021/11/12(金) 00:03:37.35ID:??? >>582
日本語下手でごめんね。
例えば、
create table AAAA
(
colmun01 char(4) not null
,colmun02 char(4) not null
,seq int not null
,first_date varchar(8) null
,last_date varchar(8) null
,primary key
(
colmun01
,colmun02
,seq
)
)
ってテーブルがあって
select colmun01
from AAAA
where colmun02 = 'BBBB'
and '20210401' between isnull(first_date, '00000000') and isnull(last_date, '99999999')
ってクエリを実行して実際の実行プランを確認したら
CREATE INDEX CCCC
ON DDDD( colmun02)
include(first_date,last_date )
が足りないんじゃない?
って出ました。
付加列の中のカラムはisnull関数の引数なんだけどなんで?
ってなったんで最初の質問になりました。
(WEBだけだけど)調べても出てこなかったんで
first_date、last_date が date型じゃなくてvarchar型 なのは許して。元のテーブルがそうなんで
日本語下手でごめんね。
例えば、
create table AAAA
(
colmun01 char(4) not null
,colmun02 char(4) not null
,seq int not null
,first_date varchar(8) null
,last_date varchar(8) null
,primary key
(
colmun01
,colmun02
,seq
)
)
ってテーブルがあって
select colmun01
from AAAA
where colmun02 = 'BBBB'
and '20210401' between isnull(first_date, '00000000') and isnull(last_date, '99999999')
ってクエリを実行して実際の実行プランを確認したら
CREATE INDEX CCCC
ON DDDD( colmun02)
include(first_date,last_date )
が足りないんじゃない?
って出ました。
付加列の中のカラムはisnull関数の引数なんだけどなんで?
ってなったんで最初の質問になりました。
(WEBだけだけど)調べても出てこなかったんで
first_date、last_date が date型じゃなくてvarchar型 なのは許して。元のテーブルがそうなんで
585NAME IS NULL
2021/11/12(金) 00:37:13.12ID:??? サジェストされてるインデックス追加すれば付加列としての効果はあるね
でもそもそもBETWEENの左側に固定値をもってくる書き方って有りなのかなぁ
isnull不要にしてfirst_data, last_dateをキーとしてインデックスはっても
Index Seekにはならないような気がするんだけど実際どうなんだろ
でもそもそもBETWEENの左側に固定値をもってくる書き方って有りなのかなぁ
isnull不要にしてfirst_data, last_dateをキーとしてインデックスはっても
Index Seekにはならないような気がするんだけど実際どうなんだろ
586NAME IS NULL
2021/11/12(金) 01:46:20.70ID:??? >>585
付加列の効果あるんですか。
>でもそもそもBETWEENの左側に固定値をも>ってくる書き方って有りなのかなぁ
なるでしょっ、て思い込んでたんで改めて
isnull不要にしてfirst_data, last_dateをキーとしてインデックスはってfirst_data, last_dateのbetweenのみで実行してみたら、最適化の段階で大なり小なりに展開されてindex seekになってますね。実行プラン見る限りは
付加列の効果あるんですか。
>でもそもそもBETWEENの左側に固定値をも>ってくる書き方って有りなのかなぁ
なるでしょっ、て思い込んでたんで改めて
isnull不要にしてfirst_data, last_dateをキーとしてインデックスはってfirst_data, last_dateのbetweenのみで実行してみたら、最適化の段階で大なり小なりに展開されてindex seekになってますね。実行プラン見る限りは
587NAME IS NULL
2021/11/12(金) 01:48:02.27ID:??? ☓ isnull不要にしてfirst_data, last_dateをキーとしてインデックスはってfirst_data, last_dateのbetweenのみで実行してみたら
○ first_data, last_dateをキーとしてインデックスはってisnull不要にしたfirst_data, last_dateのbetweenのみで実行してみたら
○ first_data, last_dateをキーとしてインデックスはってisnull不要にしたfirst_data, last_dateのbetweenのみで実行してみたら
588NAME IS NULL
2021/11/12(金) 01:50:12.13ID:??? ☓ → ×
589NAME IS NULL
2021/11/12(金) 17:47:15.17ID:ud1MiESj >>584
WHERE句の条件の書き方が異常
WHERE句の条件の書き方が異常
590NAME IS NULL
2021/11/12(金) 17:48:55.65ID:ud1MiESj >>585
もうあんたの書き込みはネタとしか思えないんだけど?
もうあんたの書き込みはネタとしか思えないんだけど?
591NAME IS NULL
2021/11/12(金) 18:25:15.51ID:wE0oiQg0 >>584
インデックスにこだわっている理由は?
インデックスにこだわっている理由は?
592NAME IS NULL
2021/11/12(金) 19:08:33.33ID:??? >>591
こだわっている理由というか、このクエリでなんでこの条件がパフォーマンス改善の候補として上がってきたのかの理由が知りたい。
自分の今持っている知識が間違っているのだろうけど、この付加列が入ってくる理由がわからないので
前にも書いたけど、元の処理のパフォーマンス改善自体はどうでもいい
こだわっている理由というか、このクエリでなんでこの条件がパフォーマンス改善の候補として上がってきたのかの理由が知りたい。
自分の今持っている知識が間違っているのだろうけど、この付加列が入ってくる理由がわからないので
前にも書いたけど、元の処理のパフォーマンス改善自体はどうでもいい
593NAME IS NULL
2021/11/12(金) 19:18:04.33ID:wE0oiQg0 isnull関数を使っているから、他人には何を知りたいのかわからない。
594NAME IS NULL
2021/11/12(金) 19:42:04.72ID:??? インデックスに付加列しとけばインデックスの読み込みだけで済むからでしょう
付加列にないカラムを参照したらインデックス以外にテーブルも読み込みしないといけないから遅くなる
付加列にないカラムを参照したらインデックス以外にテーブルも読み込みしないといけないから遅くなる
595NAME IS NULL
2021/11/12(金) 19:54:35.42ID:wE0oiQg0 典型的なSQL Server脳だなw
596NAME IS NULL
2021/11/12(金) 19:55:36.00ID:wE0oiQg0 インデックスそのものが大きければ意味がない。
597NAME IS NULL
2021/11/12(金) 21:42:13.95ID:??? いつもの嫌なやつ召喚しちゃったね・・・
598NAME IS NULL
2021/11/12(金) 22:17:40.73ID:wE0oiQg0 インデックススキャンにしなければいけない→テーブル全体のインデックスを作る→このインデックスはいらないのでは?
599NAME IS NULL
2021/11/12(金) 22:20:21.09ID:wE0oiQg0600NAME IS NULL
2021/11/13(土) 19:09:19.46ID:??? 付加列の話を出したものです。
一応簡易的にデータを作って確認してみたので結果を書きます。
環境:
Microsoft SQL Server 2017 (RTM) - 14.0.1000.169 (X64) Express Edition (64-bit)
on Windows 10 Pro 10.0 <X64> (Build 19043: ) (Hypervisor)
実施内容:
互換性レベル:SQL Server2017 のデータベース上で
create table AAAA
(
colmun01 char(4) not null
,colmun02 char(4) not null
,seq int not null
,first_date varchar(8) null
,last_date varchar(8) null
,primary key clustered
(
colmun01
,colmun02
,seq
)
)
の形のテーブルをAAAA〜EEEEの5つ作成。同一のデータを100万件投入
各々
CREATE INDEX IX_XXXX ON BBBB(colmun02)
CREATE INDEX IX_XXXX ON CCCC(colmun02) include(first_date, last_date )
CREATE INDEX IX_XXXX ON DDDD(colmun02, first_date, last_date )
CREATE INDEX IX_XXXX ON EEEE(first_date, last_date )
のindexを作成
各テーブルに対しての
select colmun01
from <テーブル名>
where colmun02 = 'BBBB'
and '20210401' between isnull(first_date, '00000000') and isnull(last_date, '99999999')
を1クエリでまとめて実行し実際の実行プランを確認
一応簡易的にデータを作って確認してみたので結果を書きます。
環境:
Microsoft SQL Server 2017 (RTM) - 14.0.1000.169 (X64) Express Edition (64-bit)
on Windows 10 Pro 10.0 <X64> (Build 19043: ) (Hypervisor)
実施内容:
互換性レベル:SQL Server2017 のデータベース上で
create table AAAA
(
colmun01 char(4) not null
,colmun02 char(4) not null
,seq int not null
,first_date varchar(8) null
,last_date varchar(8) null
,primary key clustered
(
colmun01
,colmun02
,seq
)
)
の形のテーブルをAAAA〜EEEEの5つ作成。同一のデータを100万件投入
各々
CREATE INDEX IX_XXXX ON BBBB(colmun02)
CREATE INDEX IX_XXXX ON CCCC(colmun02) include(first_date, last_date )
CREATE INDEX IX_XXXX ON DDDD(colmun02, first_date, last_date )
CREATE INDEX IX_XXXX ON EEEE(first_date, last_date )
のindexを作成
各テーブルに対しての
select colmun01
from <テーブル名>
where colmun02 = 'BBBB'
and '20210401' between isnull(first_date, '00000000') and isnull(last_date, '99999999')
を1クエリでまとめて実行し実際の実行プランを確認
601NAME IS NULL
2021/11/13(土) 19:10:10.28ID:??? 結果:
AAAA Clustered Index Scan となりクエリコスト30%
BBBB Clustered Index Scan となりクエリコスト31% ※作成したindexは効かず
CCCC IX_XXXX がindex Seek となりクエリコスト6%
DDDD IX_XXXX がindex Seek となりクエリコスト6%
DDDD IX_XXXX がindex Scan となりクエリコスト28%
となりました。
この結果からIndexのキー列、または付加列が関数の引数として使用されている場合もindexが効く場合があるようです
ちなみにBBBBテーブルの実行の際にヒント句でindexを強制した場合は
AAAA クエリコスト8%
BBBB クエリコスト81%
CCCC クエリコスト2%
DDDD クエリコスト2%
DDDD クエリコスト8%
となりました。
AAAA Clustered Index Scan となりクエリコスト30%
BBBB Clustered Index Scan となりクエリコスト31% ※作成したindexは効かず
CCCC IX_XXXX がindex Seek となりクエリコスト6%
DDDD IX_XXXX がindex Seek となりクエリコスト6%
DDDD IX_XXXX がindex Scan となりクエリコスト28%
となりました。
この結果からIndexのキー列、または付加列が関数の引数として使用されている場合もindexが効く場合があるようです
ちなみにBBBBテーブルの実行の際にヒント句でindexを強制した場合は
AAAA クエリコスト8%
BBBB クエリコスト81%
CCCC クエリコスト2%
DDDD クエリコスト2%
DDDD クエリコスト8%
となりました。
602NAME IS NULL
2021/11/13(土) 19:29:49.86ID:??? >>575の通りの理解だったので、なぜこのように動くのかがわかりません。
何か知っている方や理解に誤りなどありましたら教えていただけると助かります
何か知っている方や理解に誤りなどありましたら教えていただけると助かります
603NAME IS NULL
2021/11/13(土) 21:36:11.89ID:??? >>601
演算のパーセント表示だけで比較されてもわからんがな
演算のパーセント表示だけで比較されてもわからんがな
604NAME IS NULL
2021/11/14(日) 02:47:16.70ID:??? >>603
では、他にどのような情報がアレバ良いのですか?
では、他にどのような情報がアレバ良いのですか?
605NAME IS NULL
2021/11/14(日) 21:36:16.11ID:??? クエリコストの大小を比較したいなら各クエリ全体のコスト
コスト1000の6%と、コスト10の30%なら後者のほうが効率がいいからね
SET SHOWPLAN_ALL ON;
SET STATISTICS PROFILE ON;
SET STATICTICS IO ON;
↑この3つでそれぞれ表示される値の意味をdocs見て把握しておくといいと思う
コスト1000の6%と、コスト10の30%なら後者のほうが効率がいいからね
SET SHOWPLAN_ALL ON;
SET STATISTICS PROFILE ON;
SET STATICTICS IO ON;
↑この3つでそれぞれ表示される値の意味をdocs見て把握しておくといいと思う
606NAME IS NULL
2021/11/15(月) 00:21:06.02ID:??? >>605
ありがとうございます。
ただ今回自分が知りたいことはコストはあまり関係ないんですよね。
違う結果になったことを明示するための情報としてコストを出したつもりでしたが下記の知りたいことからすると不要な情報でした。
すみません。
知りたいことは実行したクエリ
select colmun01
from <テーブル名>
where colmun02 = 'BBBB'
and '20210401' between isnull(first_date, '00000000') and isnull(last_date, '99999999')
のfirst_date,last_dateはisnull関数の引数なのになぜ付加列、またはindexのキー列が利用されて、index seekのみで解決されているのか?
になります。※1
元々indexのキー列、付加列は関数の引数や計算が含まれるとwhere句で利用されない(と思っていた)ため、CCCCテーブル、DDDDテーブルの実行はindex seek後にクラスター化indexのキー参照が起こると思っていました。
これはヒント句でindexの利用を矯正したBBBBの実行と同じ動きです。
一応テストした結果として、※1については解決できる場合があり、そもそもの自分の知識が誤っていることがわかりました。
ので「indexのキー列、付加列が関数の引数や計算が含まれてもwhere句で利用される」のはどのような場合か、明確な基準があるのかなどがわかれば教えていただければとおもいます。
一部表現が適切でなく伝わりにくい部分があるかと思いますが汲み取っていただけると助かります。
ありがとうございます。
ただ今回自分が知りたいことはコストはあまり関係ないんですよね。
違う結果になったことを明示するための情報としてコストを出したつもりでしたが下記の知りたいことからすると不要な情報でした。
すみません。
知りたいことは実行したクエリ
select colmun01
from <テーブル名>
where colmun02 = 'BBBB'
and '20210401' between isnull(first_date, '00000000') and isnull(last_date, '99999999')
のfirst_date,last_dateはisnull関数の引数なのになぜ付加列、またはindexのキー列が利用されて、index seekのみで解決されているのか?
になります。※1
元々indexのキー列、付加列は関数の引数や計算が含まれるとwhere句で利用されない(と思っていた)ため、CCCCテーブル、DDDDテーブルの実行はindex seek後にクラスター化indexのキー参照が起こると思っていました。
これはヒント句でindexの利用を矯正したBBBBの実行と同じ動きです。
一応テストした結果として、※1については解決できる場合があり、そもそもの自分の知識が誤っていることがわかりました。
ので「indexのキー列、付加列が関数の引数や計算が含まれてもwhere句で利用される」のはどのような場合か、明確な基準があるのかなどがわかれば教えていただければとおもいます。
一部表現が適切でなく伝わりにくい部分があるかと思いますが汲み取っていただけると助かります。
607NAME IS NULL
2021/11/15(月) 01:23:19.68ID:??? 利用されないのはオプティマイザが利用しても効果がないと判断したからで、効果があると思えば利用する
それだけのこと
べつに引数や計算だろうと直接の比較だろうと同じなんだが
それだけのこと
べつに引数や計算だろうと直接の比較だろうと同じなんだが
608NAME IS NULL
2021/11/15(月) 02:06:34.07ID:??? >>606
column02だけでindex seekしてるのか
column02に加えてfirst_dateやlast_date含めてindex seekしてるのかseek predicatesで確認した?
column02だけでindex seekしてるのか
column02に加えてfirst_dateやlast_date含めてindex seekしてるのかseek predicatesで確認した?
609NAME IS NULL
2021/11/15(月) 23:18:02.81ID:??? >>608
これでした。ありがとうございます。
index seekの中を確認したところ、column02のみがseekでisnull関数の引数になっているfirst_dateとlast_dateはwhereでの参照でした。
CCCCとDDDDのクエリからisnull関数を外したものの実行結果と比較していろいろ合点がいきました。
GUI上のindex seekの表示しか見ていない浅い確認でそれ以降の知識がなかったため、自力でここにたどり着くのは難しかったと思います。
あらためてありがとうございました。
ついでにで申し訳ないのですが、今まで実行プラン上でindex seek、またはindex scanになっていることを「indexが効いている」と表現していたのですが、これは一般的に間違っていますか?
質問の中で色々表現がおかしく、理解しづらい部分もあったと思いますので少しでも修正できればと思っております。
これでした。ありがとうございます。
index seekの中を確認したところ、column02のみがseekでisnull関数の引数になっているfirst_dateとlast_dateはwhereでの参照でした。
CCCCとDDDDのクエリからisnull関数を外したものの実行結果と比較していろいろ合点がいきました。
GUI上のindex seekの表示しか見ていない浅い確認でそれ以降の知識がなかったため、自力でここにたどり着くのは難しかったと思います。
あらためてありがとうございました。
ついでにで申し訳ないのですが、今まで実行プラン上でindex seek、またはindex scanになっていることを「indexが効いている」と表現していたのですが、これは一般的に間違っていますか?
質問の中で色々表現がおかしく、理解しづらい部分もあったと思いますので少しでも修正できればと思っております。
610NAME IS NULL
2021/11/15(月) 23:40:19.19ID:??? >>607
今迄はあなたと同じように「オプティマイザの気分」で済ませてたのですが、今回は少し突き詰めたかったのです
今迄はあなたと同じように「オプティマイザの気分」で済ませてたのですが、今回は少し突き詰めたかったのです
611NAME IS NULL
2021/11/16(火) 00:00:34.73ID:??? SQLserverのハードを買い替えようと検討してもるんだけどストレージをSSDしても大丈夫か聞きたい。
SSDは書き込みの回数制限があり、頻繁な書き込みのあるSQLserverには向かないと昔聞いた事あったんだけど今は大丈夫か教えて下さい。
SSDは書き込みの回数制限があり、頻繁な書き込みのあるSQLserverには向かないと昔聞いた事あったんだけど今は大丈夫か教えて下さい。
612NAME IS NULL
2021/11/17(水) 00:13:51.33ID:??? >>611
SQLserverに向かないってよりもアクセス頻度の問題のような気がするけど。
ssdって言ってもqlc,tlc,mlcのような種類もあるし。
ただ、前にベンダーに見積もりとった時に聞いたのは利用用途が中規模のwebサービスなら、5年位であればそんなに気にしなくて良いって言われた。(ここでのSSDの種類が何か、中規模がどの程度かは忘れた。参考にならずすまん)
ちなみにどんな利用用途なの?
社内用か、インターネットに公開してるサービスなのか(1日のアクセスはどの程度か)、それとも個人用か
個人用でもなければどこかのベンダーに話聞いちゃった方がいいかも
SQLserverに向かないってよりもアクセス頻度の問題のような気がするけど。
ssdって言ってもqlc,tlc,mlcのような種類もあるし。
ただ、前にベンダーに見積もりとった時に聞いたのは利用用途が中規模のwebサービスなら、5年位であればそんなに気にしなくて良いって言われた。(ここでのSSDの種類が何か、中規模がどの程度かは忘れた。参考にならずすまん)
ちなみにどんな利用用途なの?
社内用か、インターネットに公開してるサービスなのか(1日のアクセスはどの程度か)、それとも個人用か
個人用でもなければどこかのベンダーに話聞いちゃった方がいいかも
613NAME IS NULL
2021/11/17(水) 18:17:30.15ID:??? >>612
アドバイスありがとう
用途は会社でデータウエアハウス的利用です。日次で基幹システムからデータ取得して蓄積するようなデータサーバです。
DELLの直販で買う予定でサーバ向けSAS接続のSSDだから大丈夫だと思う。
一応DELLに問い合わせしときました。
アドバイスありがとう
用途は会社でデータウエアハウス的利用です。日次で基幹システムからデータ取得して蓄積するようなデータサーバです。
DELLの直販で買う予定でサーバ向けSAS接続のSSDだから大丈夫だと思う。
一応DELLに問い合わせしときました。
614NAME IS NULL
2022/01/22(土) 16:40:07.61ID:ANkLRIq9 レプリケーションというのを初めて設定しているのですが
「スナップショットエージェントが起動していません」のMSGが
出てスナップショットが取れません。
これってSQL Server エージェントとは別物ですか?
SQL Server エージェントは起動しているのに…。
すみませんが、わかる方がいたら教えて下さい。
「スナップショットエージェントが起動していません」のMSGが
出てスナップショットが取れません。
これってSQL Server エージェントとは別物ですか?
SQL Server エージェントは起動しているのに…。
すみませんが、わかる方がいたら教えて下さい。
615NAME IS NULL
2022/01/26(水) 17:15:02.37ID:IRw1UwiV オブジェクト名'sysservers'が無効です。エラー208
これどういった調査をすれば良いのでしょうか?
これどういった調査をすれば良いのでしょうか?
616NAME IS NULL
2022/01/26(水) 19:31:05.33ID:??? sys.servers じゃね?
617NAME IS NULL
2022/01/27(木) 01:31:47.35ID:??? 将来のバージョンで廃止予定とかになってるけど、バージョンいくつ使ってるんだろうな
618NAME IS NULL
2022/01/27(木) 05:37:50.20ID:??? >>617
2008R2です。
2008R2です。
619NAME IS NULL
2022/01/27(木) 17:53:32.89ID:??? 何をどうしたらそのエラーが出たのかと、エラーメッセージを正確にかけ
620NAME IS NULL
2022/01/27(木) 18:24:31.13ID:??? サブスクリプションの新規ウィザードで
パブリケーションを選択して次へをクリックすると
先のメッセージと一緒に「パブリケーションの
情報が取得できません」のMSGが出て先に進めません。
SQL SERVER2008R2です。
2019の評価版で試すと問題なく設定できます。
パブリケーションを選択して次へをクリックすると
先のメッセージと一緒に「パブリケーションの
情報が取得できません」のMSGが出て先に進めません。
SQL SERVER2008R2です。
2019の評価版で試すと問題なく設定できます。
621NAME IS NULL
2022/01/27(木) 21:44:41.14ID:??? パブリケーション側のバージョンは?
622NAME IS NULL
2022/01/27(木) 22:05:05.99ID:??? パブリケーション側のバージョンが2008なのかな?
SSMSのバージョンを2008をサポートしてる古いやつで試すといいんでない?
SSMSのバージョンを2008をサポートしてる古いやつで試すといいんでない?
623NAME IS NULL
2022/01/28(金) 05:39:07.73ID:???624NAME IS NULL
2022/01/28(金) 08:10:53.42ID:98qoK9/E625NAME IS NULL
2022/03/16(水) 06:19:16.79ID:??? 大したデータ量でもないのに「クエリの実行中にMemoryGrantを25秒間待機する必要がありました」との警告が出て処理が遅くなるんですが対処法はないでしょうか。
また値が1, (2 or 3), (4 or 5)でそれぞれ集計したいのですがどのようなSQLにすればいいのでしょうか
また値が1, (2 or 3), (4 or 5)でそれぞれ集計したいのですがどのようなSQLにすればいいのでしょうか
626NAME IS NULL
2022/03/16(水) 16:26:28.69ID:??? >>625
>大したデータ量でもないのに「クエリの実行中にMemoryGrantを25秒間待機する必要がありました」との警告が出て処理が遅くなるんですが対処法はないでしょうか。
テーブルとインデックスの構成、クエリ内容、実行プランを確認して原因を突き止めてください
原因が分かったらテーブルやインデックスを変更したりクエリを変更して対処してください
>また値が1, (2 or 3), (4 or 5)でそれぞれ集計したいのですがどのようなSQLにすればいいのでしょうか
現在のテーブル構造と欲しい結果のイメージを提示してください
>大したデータ量でもないのに「クエリの実行中にMemoryGrantを25秒間待機する必要がありました」との警告が出て処理が遅くなるんですが対処法はないでしょうか。
テーブルとインデックスの構成、クエリ内容、実行プランを確認して原因を突き止めてください
原因が分かったらテーブルやインデックスを変更したりクエリを変更して対処してください
>また値が1, (2 or 3), (4 or 5)でそれぞれ集計したいのですがどのようなSQLにすればいいのでしょうか
現在のテーブル構造と欲しい結果のイメージを提示してください
627NAME IS NULL
2022/03/16(水) 17:12:02.73ID:??? >>625
> また値が1, (2 or 3), (4 or 5)でそれぞれ集計したいのですがどのようなSQLにすればいいのでしょうか
select
case when 値 = 1 then '1' when 値 = 2 or 値 = 3 then '2 or 3' when 値 = 4 or 値 = 5 then '4 or 5' end as 値,
sum(集計列) as 集計
from テーブル
group by
case when 値 = 1 then '1' when 値 = 2 or 値 = 3 then '2 or 3' when 値 = 4 or 値 = 5 then '4 or 5' end
> また値が1, (2 or 3), (4 or 5)でそれぞれ集計したいのですがどのようなSQLにすればいいのでしょうか
select
case when 値 = 1 then '1' when 値 = 2 or 値 = 3 then '2 or 3' when 値 = 4 or 値 = 5 then '4 or 5' end as 値,
sum(集計列) as 集計
from テーブル
group by
case when 値 = 1 then '1' when 値 = 2 or 値 = 3 then '2 or 3' when 値 = 4 or 値 = 5 then '4 or 5' end
628NAME IS NULL
2022/03/19(土) 18:54:37.22ID:??? 開発サーバにいれるSQLServerのエディションをDeveloperにするの問題ないでしょうか
利用目的はシステム改修の開発単体テストから総合テスト、受入テスト
あとは本番サーバで不具合でたときの検証目的で使用するのは数名〜Max20人くらい
バージョンアップの準備してて、経緯不明なんですが開発サーバが今Enterprise入ってて変えて問題ないなら変えたい
本番はEnterpriseです
利用目的はシステム改修の開発単体テストから総合テスト、受入テスト
あとは本番サーバで不具合でたときの検証目的で使用するのは数名〜Max20人くらい
バージョンアップの準備してて、経緯不明なんですが開発サーバが今Enterprise入ってて変えて問題ないなら変えたい
本番はEnterpriseです
629NAME IS NULL
2022/03/20(日) 13:06:14.65ID:??? >>625
MemoryGrantで待機ってメモリが足りてない
・SQLServer以外のプロセスがメモリ食ってSQLServerのメモリが小さくなってる可能性
→SQLServerの最大メモリ最小メモリの設定、SQLServerのサービスアカウントにメモリのページロックの特権がついてるか
・メモリめっちゃ使うクエリが同タイミングで動いてる可能性
→パフォーマンスモニタのBufferManagerカウンターで急激な変動がないか確認、動的管理ビューでその時間帯に動いてたクエリででかいのを調べる
・そのクエリがめっちゃメモリ食う
→これは626
昔使うメモリの計算に不具合あった覚えあるけど、あれは2008か2012くらいのSPで解消されてたような
MemoryGrantで待機ってメモリが足りてない
・SQLServer以外のプロセスがメモリ食ってSQLServerのメモリが小さくなってる可能性
→SQLServerの最大メモリ最小メモリの設定、SQLServerのサービスアカウントにメモリのページロックの特権がついてるか
・メモリめっちゃ使うクエリが同タイミングで動いてる可能性
→パフォーマンスモニタのBufferManagerカウンターで急激な変動がないか確認、動的管理ビューでその時間帯に動いてたクエリででかいのを調べる
・そのクエリがめっちゃメモリ食う
→これは626
昔使うメモリの計算に不具合あった覚えあるけど、あれは2008か2012くらいのSPで解消されてたような
630NAME IS NULL
2022/03/25(金) 16:26:14.25ID:??? Express版は10GBまでは使用できるようですが、
10GBを超えそうだという警告などは設定できるのでしょうか?
定期的に使用領域を確認していないと、ある日突然なにもできなくなってしまうのでしょうか?
10GBを超えそうだという警告などは設定できるのでしょうか?
定期的に使用領域を確認していないと、ある日突然なにもできなくなってしまうのでしょうか?
631NAME IS NULL
2022/03/26(土) 05:22:50.26ID:??? >>630
このページにあるクエリを実行するスクリプトを作成し、タスクスケジューラで定期実行してみてはどうでしょうか
クエリの結果をもとに、自分で決めたしきいち値超えたら警告メールを送るような処理も加えると監視をほぼ自動化できそうですね
このページにあるクエリを実行するスクリプトを作成し、タスクスケジューラで定期実行してみてはどうでしょうか
クエリの結果をもとに、自分で決めたしきいち値超えたら警告メールを送るような処理も加えると監視をほぼ自動化できそうですね
632NAME IS NULL
2022/03/26(土) 05:24:39.02ID:???633NAME IS NULL
2022/03/27(日) 04:43:57.62ID:g/u0dazF ディスク容量を常に気にしていない運用という点が突っ込みどころなんだろうな
634NAME IS NULL
2022/03/27(日) 09:21:36.36ID:??? 今どき10GBの容量を気にする運用って…
635NAME IS NULL
2022/03/27(日) 12:27:12.36ID:???636NAME IS NULL
2022/03/27(日) 14:58:09.23ID:??? >>633
ディスク容量を常に気にしたところで役に立たないという点が突っ込みどころなんだろうなww
ディスク容量を常に気にしたところで役に立たないという点が突っ込みどころなんだろうなww
637NAME IS NULL
2022/03/27(日) 21:51:16.43ID:g/u0dazF >>636
どこにファイルが作られているのかを気にしてない時点でおかしんだけどな。
どこにファイルが作られているのかを気にしてない時点でおかしんだけどな。
638NAME IS NULL
2022/03/27(日) 22:22:31.32ID:??? > どこにファイルが作られているのかを気にしてない
どこからそんな妄想が?w
どこからそんな妄想が?w
639NAME IS NULL
2022/03/27(日) 22:26:31.76ID:???640NAME IS NULL
2022/03/28(月) 20:26:23.25ID:??? 今、自分1人で使ってるスタンドアロンのACCESS DBがクソ重くて激不安定なので
同じ事をSQL serverでやろうとしてるんだけど
1人でスタンドアロン使用の場合、Developer版を
「永遠に開発中」という設定にしとけばライセンス違反にならない?
同じ事をSQL serverでやろうとしてるんだけど
1人でスタンドアロン使用の場合、Developer版を
「永遠に開発中」という設定にしとけばライセンス違反にならない?
641NAME IS NULL
2022/03/28(月) 23:45:33.37ID:YrCsxNrI >>640
Expressを使わずにDeveloperを使わないといけない理由は?
Expressを使わずにDeveloperを使わないといけない理由は?
642NAME IS NULL
2022/03/29(火) 01:49:02.52ID:??? ちんちんシュッ!シュッ!シュッ!
643NAME IS NULL
2022/03/29(火) 02:24:28.51ID:??? >>640
M$に聞け
M$に聞け
644NAME IS NULL
2022/03/29(火) 08:14:33.09ID:???645NAME IS NULL
2022/03/29(火) 08:20:42.50ID:??? そんなやつがライセンス気にしてるのかw
646NAME IS NULL
2022/03/29(火) 11:33:14.27ID:??? >>640
明らかにライセンス違反
明らかにライセンス違反
647NAME IS NULL
2022/03/29(火) 13:26:38.05ID:???648NAME IS NULL
2022/03/29(火) 23:39:12.46ID:BT3fAchA >>647
そんな理由で別製品にするなんて素人が言うことだろw
そんな理由で別製品にするなんて素人が言うことだろw
649NAME IS NULL
2022/03/30(水) 00:51:56.50ID:??? SSMSでストアドのテストドライバ生成機能ってありますか?
※Sqldeveloperみたいな感じの、っていう表現で伝わりますかね
あるいは皆さんの、ストアドの単体テストの楽な方法とかも何かtipsがあれば
※Sqldeveloperみたいな感じの、っていう表現で伝わりますかね
あるいは皆さんの、ストアドの単体テストの楽な方法とかも何かtipsがあれば
650NAME IS NULL
2022/03/30(水) 01:29:25.29ID:??? Visual StudioのSQL Server Data Tools(SSDT)
651NAME IS NULL
2022/03/30(水) 02:36:50.14ID:Q0Wnmomb >>649
そもそもTransact-SQLをわかってますか?
そもそもTransact-SQLをわかってますか?
652NAME IS NULL
2022/03/30(水) 09:01:40.57ID:??? いつものことながらID付きはとことん的外れだな
653NAME IS NULL
2022/04/02(土) 00:32:00.52ID:??? 接続文字列のData SourceとServerに違いはあるの?
どちらもサーバーのインスタンス名かIPアドレスとポートの指定だと思ってるけど
どちらもサーバーのインスタンス名かIPアドレスとポートの指定だと思ってるけど
654NAME IS NULL
2022/04/02(土) 03:40:35.60ID:??? SQLServerでServerといったら基本的にはSQLServerがインストールされているサーバーかサーバーとそのインスタンス名まで
DataSourceとなるとSQLServer以外のDBMSやフラットファイルも含まれる
DataSourceとなるとSQLServer以外のDBMSやフラットファイルも含まれる
655NAME IS NULL
2022/04/02(土) 13:18:09.84ID:??? >>654
ありがとうございます
ありがとうございます
656NAME IS NULL
2022/04/05(火) 17:10:51.74ID:??? 久々にSSMS2008を触ってて
クエリショートカットのカスタマイズした機能が動かなくなってるんだけど
同じようなことしてる人いる?(COMMITとROLLBACK)
https://dotup.org/uploda/dotup.org2767912.png
クエリショートカットのカスタマイズした機能が動かなくなってるんだけど
同じようなことしてる人いる?(COMMITとROLLBACK)
https://dotup.org/uploda/dotup.org2767912.png
657NAME IS NULL
2022/04/05(火) 18:16:10.44ID:???658NAME IS NULL
2022/04/06(水) 22:53:45.80ID:2Dm57SjU F5キーでコミットとはおそろしい発想だな
659NAME IS NULL
2022/05/17(火) 09:25:02.74ID:??? tes
660NAME IS NULL
2022/05/19(木) 16:16:58.24ID:QTEsI/3c 教えて下さい。
ACCESS2019、SQL Server2012利用しています。
ACCESSからSQL ServerのテーブルへODBCでリンクテーブルを貼っている環境があるんですが、
特定の端末だけ、リンクテーブルを開くと、内容が突然すべて#DELETEになってしまう に現象に見舞われました。
https://pctips.jp/pc-soft/access-sqlserver-deleted
このサイトを始めとして、同様の現象を解説しているサイトには、SQL Server側でbigint型を使ってるせいとありましたが、
bigint型は使っていませんし、特定の端末のみこの現象が発生しています。
再起動やODBC設定の作り直し、リンクテーブルの貼り直しなどしても治りません。
更に不思議なことに、次の日になると治ってしまいます。
で、しばらくたつとまた同じ現象に見舞われます。
(ここ一週間で3回です)
私も長年SE・PGやっていますが、このような現象は初めてで、
途方にくれています。
最悪PC変えれば治りそうな感じではあるのですが・・
なにか情報をお持ちの方のお知恵を拝借したく・・・
何卒よろしくお願いいたします。
ACCESS2019、SQL Server2012利用しています。
ACCESSからSQL ServerのテーブルへODBCでリンクテーブルを貼っている環境があるんですが、
特定の端末だけ、リンクテーブルを開くと、内容が突然すべて#DELETEになってしまう に現象に見舞われました。
https://pctips.jp/pc-soft/access-sqlserver-deleted
このサイトを始めとして、同様の現象を解説しているサイトには、SQL Server側でbigint型を使ってるせいとありましたが、
bigint型は使っていませんし、特定の端末のみこの現象が発生しています。
再起動やODBC設定の作り直し、リンクテーブルの貼り直しなどしても治りません。
更に不思議なことに、次の日になると治ってしまいます。
で、しばらくたつとまた同じ現象に見舞われます。
(ここ一週間で3回です)
私も長年SE・PGやっていますが、このような現象は初めてで、
途方にくれています。
最悪PC変えれば治りそうな感じではあるのですが・・
なにか情報をお持ちの方のお知恵を拝借したく・・・
何卒よろしくお願いいたします。
661NAME IS NULL
2022/05/19(木) 17:06:40.47ID:??? bigintだけじゃなくて、bit型で値がNULLだったりしたらそんな感じになった気がする
まあ、クライアントがまったく同じバージョンでまったく同じデータを表示して起こるなら
ネットワーク系の問題の可能性が高そうだけど
それかODBC定義が違ってるとか
ウィルスチェック系のソフトが悪さしてるんじゃね
まあ、クライアントがまったく同じバージョンでまったく同じデータを表示して起こるなら
ネットワーク系の問題の可能性が高そうだけど
それかODBC定義が違ってるとか
ウィルスチェック系のソフトが悪さしてるんじゃね
662NAME IS NULL
2022/05/19(木) 22:08:33.89ID:??? ググるとよくある症状みたいよ
https://stackoverflow.com/questions/54226858/
https://stackoverflow.com/questions/58454256/
Accessの不具合っぽい
https://stackoverflow.com/questions/54226858/
https://stackoverflow.com/questions/58454256/
Accessの不具合っぽい
663NAME IS NULL
2022/05/25(水) 01:02:51.71ID:q0WabceL sql serverにアプリから接続しているクライアントPCって
利用状況モニターで確認できますが、過去の履歴ってどこから見れますか?
利用状況モニターで確認できますが、過去の履歴ってどこから見れますか?
664NAME IS NULL
2022/05/25(水) 11:21:36.57ID:??? >>663
利用状況モニターってたぶん動的管理ビューから情報とってるから、それの過去データ見たいならそれをとるように設定しないと
データコレクションがそれなんだろうが自作でクエリ組んでSQLAgentで動かすほうがカスタマイズしやすいと思う
あとは、どういう風にデータを見たいかだけど拡張イベントでログインログアウトとるとかも有りかな
利用状況モニターってたぶん動的管理ビューから情報とってるから、それの過去データ見たいならそれをとるように設定しないと
データコレクションがそれなんだろうが自作でクエリ組んでSQLAgentで動かすほうがカスタマイズしやすいと思う
あとは、どういう風にデータを見たいかだけど拡張イベントでログインログアウトとるとかも有りかな
665NAME IS NULL
2022/05/25(水) 16:42:31.89ID:??? どういうログがいるのかわからんが、監査ログで良いんじゃないか
666NAME IS NULL
2022/05/25(水) 23:54:39.54ID:??? 監査ログって拡張イベントを監査用にまとめただけでしょ
簡単にやれるぶん融通がきかない
項目とフィルタの設定の自由度ほしいなら拡張イベント一択
簡単にやれるぶん融通がきかない
項目とフィルタの設定の自由度ほしいなら拡張イベント一択
667NAME IS NULL
2022/11/15(火) 22:39:41.69ID:54ouQ1K1 sql sever 2019で、ファンクションを作成しています。
その処理の中で、番号を管理する列から最大値を取得して1を加えたものを新しい番号として同じテーブルにインサートしようとしています。
その処理の間に、他からこのファンクションを呼び出されて割り込まれることを防止するため、ファンクションが完了するまでテーブルロック(排他ロック)をかけたいのですが、どのような記述が必要でしょうか。
begin transaction
commit のような感じで関係するステートメントをかこえたらよいのですが。
その処理の中で、番号を管理する列から最大値を取得して1を加えたものを新しい番号として同じテーブルにインサートしようとしています。
その処理の間に、他からこのファンクションを呼び出されて割り込まれることを防止するため、ファンクションが完了するまでテーブルロック(排他ロック)をかけたいのですが、どのような記述が必要でしょうか。
begin transaction
commit のような感じで関係するステートメントをかこえたらよいのですが。
668NAME IS NULL
2022/11/15(火) 22:53:59.24ID:??? >>667
自作せずにSEQUENCEをNO CACHEで使えばいいよ
自作せずにSEQUENCEをNO CACHEで使えばいいよ
669NAME IS NULL
2022/11/15(火) 23:38:08.24ID:uZbfP42z >>668
早速のレスありがとうございます。
連番はSQL SEVERに自動で振ってもらおうと思います。
そして、INSERTとOUTPUT inserted.*を使って、
その新しい番号を得たいと思います。
早速のレスありがとうございます。
連番はSQL SEVERに自動で振ってもらおうと思います。
そして、INSERTとOUTPUT inserted.*を使って、
その新しい番号を得たいと思います。
670NAME IS NULL
2022/11/15(火) 23:42:08.86ID:uZbfP42z671NAME IS NULL
2022/11/17(木) 12:06:05.40ID:??? SQL Server 2022 is now generally available
https://cloudblogs.microsoft.com/sqlserver/2022/11/16/sql-server-2022-is-now-generally-available/
https://cloudblogs.microsoft.com/sqlserver/2022/11/16/sql-server-2022-is-now-generally-available/
672NAME IS NULL
2022/11/17(木) 19:21:02.25ID:??? >>667
まず分離レベルってのを理解しような
まず分離レベルってのを理解しような
673NAME IS NULL
2022/11/17(木) 23:47:32.26ID:???674NAME IS NULL
2022/11/24(木) 11:28:43.27ID:DKlnX/+1 質問です。
テーブルA(1)---(∞)テーブルB(∞)---(1)テーブルA
こういう関係になるテーブルBを考えています。
即ち、テーブルAの外部キーをテーブルBの2列で持つことになります。
同じテーブルAについて外部キーを持っても、テーブルBの2列の意味はそれぞれで異なります。
こういうテーブルBの2列は、テーブルAの外部キーを持つので、列名の設定に困ります。
一列だけならforeignkeyofA_CDという列をテーブルBに設定すれば良いですが、こういう場合はどんなふうに列名を設定するのが良いのでしょうか。
テーブルA(1)---(∞)テーブルB(∞)---(1)テーブルA
こういう関係になるテーブルBを考えています。
即ち、テーブルAの外部キーをテーブルBの2列で持つことになります。
同じテーブルAについて外部キーを持っても、テーブルBの2列の意味はそれぞれで異なります。
こういうテーブルBの2列は、テーブルAの外部キーを持つので、列名の設定に困ります。
一列だけならforeignkeyofA_CDという列をテーブルBに設定すれば良いですが、こういう場合はどんなふうに列名を設定するのが良いのでしょうか。
675NAME IS NULL
2022/11/24(木) 12:21:15.60ID:???676NAME IS NULL
2022/11/24(木) 12:25:57.91ID:??? 悩むくらいなら、
/* コメントxxxxx */
みたいにメモを残すほうが、あとでみてもわかる
/* コメントxxxxx */
みたいにメモを残すほうが、あとでみてもわかる
677NAME IS NULL
2022/11/24(木) 12:30:02.95ID:??? >>674
列名?
外部キー制約名じゃなくて?
列名ならそのカラムがテーブルAで持つ意味でつければいい
外部キー制約名はFK_テーブルA_テーブルBが一般的
2つ同じテーブル同士で外部キー制約を貼るなら
テーブルA側の列名も使って外部キー制約名を付ける
列名?
外部キー制約名じゃなくて?
列名ならそのカラムがテーブルAで持つ意味でつければいい
外部キー制約名はFK_テーブルA_テーブルBが一般的
2つ同じテーブル同士で外部キー制約を貼るなら
テーブルA側の列名も使って外部キー制約名を付ける
678NAME IS NULL
2022/11/24(木) 12:34:41.41ID:??? >列名ならそのカラムがテーブルAで持つ意味でつければいい
buyerとsellerとか
primary_contact/secondary_contactとか
buyerとsellerとか
primary_contact/secondary_contactとか
679675
2022/11/24(木) 12:43:41.42ID:??? スレが盛り上がったところで、質問させていただきます
SQLCLRなんですが、複数のアセンブリがあって、その中の、一部のメソッドを仕様変更したとき、アセンブリとストアドの依存関係なしに、全部createやり直すのは普通ですか?邪道ですか?
SQLCLRなんですが、複数のアセンブリがあって、その中の、一部のメソッドを仕様変更したとき、アセンブリとストアドの依存関係なしに、全部createやり直すのは普通ですか?邪道ですか?
680675
2022/11/24(木) 12:46:57.35ID:??? 再作成必要ないものまでcreate assembly、create procedureしてしまうんですよね
681NAME IS NULL
2022/11/24(木) 15:15:06.11ID:??? >>679
普通ではないように思うが署名やテストも含め自動化できてるなら好きにすればいいんじゃない?
普通ではないように思うが署名やテストも含め自動化できてるなら好きにすればいいんじゃない?
682674
2022/11/26(土) 00:22:21.03ID:sFVTXftJ 皆様、レスありがとうございます。
参考になりました。
結局、次のようにしました。
table_A.列名あいう(table_Aの主キー)
table_B.列名あいう(table_A外部キー)
table_B.列名あいう_用途(table_A外部キー)
このように、用途がわかるように列名を設定しました。
ありがとうございます。
参考になりました。
結局、次のようにしました。
table_A.列名あいう(table_Aの主キー)
table_B.列名あいう(table_A外部キー)
table_B.列名あいう_用途(table_A外部キー)
このように、用途がわかるように列名を設定しました。
ありがとうございます。
683NAME IS NULL
2022/11/26(土) 16:16:33.61ID:D63qN8dA 同じ列名で格納かれているデータ異なるけど、関連があるなんてわかりにくいにもほどがあるだろw
684NAME IS NULL
2022/11/26(土) 16:17:09.46ID:D63qN8dA >>682
相互に参照し合う外部キー?
相互に参照し合う外部キー?
685NAME IS NULL
2022/11/26(土) 16:18:35.53ID:D63qN8dA 1対Nを、1対「無限大」と表記する表記法なんて初めて見たわ。
686NAME IS NULL
2022/11/26(土) 16:45:50.88ID:??? >>682
わるい
「列名ならそのカラムがテーブルAで持つ意味でつければいい」と書いたけど
「列名ならそのカラムがテーブルBで持つ意味でつければいい」の間違いだったわ
message.sender -> account.id
message.receiver -> account.id
わるい
「列名ならそのカラムがテーブルAで持つ意味でつければいい」と書いたけど
「列名ならそのカラムがテーブルBで持つ意味でつければいい」の間違いだったわ
message.sender -> account.id
message.receiver -> account.id
687NAME IS NULL
2022/11/26(土) 16:51:31.81ID:D63qN8dA 外部キー列と参照される列を混同するのは初心者あるあるだが、
純粋に間を取り持つテーブルを作った方がいい。
説明がいるデータモデルにしておくと、自分でもわからなくなる。
純粋に間を取り持つテーブルを作った方がいい。
説明がいるデータモデルにしておくと、自分でもわからなくなる。
688NAME IS NULL
2022/11/26(土) 18:53:09.89ID:o+PA739f トランザクションデータの親子関係と、マスタデータの関係がごっちゃになっているのかな?
689682
2022/11/28(月) 07:15:24.18ID:Y7UCoM6L table_A.列名あいう(table_Aの主キー)
table_B.列名あいう(table_A外部キー)
table_B.列名あいう_用途(table_A外部キー)
table_Aの外部キーが保存されるこの2列ですが、table_Aの同じ行とリンクするものではありません。
table_B.列名あいう_用途(table_A外部キー)
は、たとえば
table_B.列名あいう(table_A外部キー)
table_B.列名あいう_用途(table_A外部キー)
table_Aの外部キーが保存されるこの2列ですが、table_Aの同じ行とリンクするものではありません。
table_B.列名あいう_用途(table_A外部キー)
は、たとえば
690NAME IS NULL
2022/11/28(月) 07:19:51.81ID:Y7UCoM6L >>689
table_B.列名あいう_用途(table_A外部キー)
は、たとえば、
table_B.列名あいう_処理ターゲット(table_A外部キー)
とでもして、処理と処理済みであることを銘記するためのものです。
table_B.列名あいう(table_A外部キー)がリンクするtable_Aの行とは違う行とリンクします。
table_B.列名あいう_用途(table_A外部キー)
は、たとえば、
table_B.列名あいう_処理ターゲット(table_A外部キー)
とでもして、処理と処理済みであることを銘記するためのものです。
table_B.列名あいう(table_A外部キー)がリンクするtable_Aの行とは違う行とリンクします。
691NAME IS NULL
2022/11/28(月) 07:20:23.19ID:Y7UCoM6L692NAME IS NULL
2022/11/28(月) 07:21:29.60ID:Y7UCoM6L >>685
アクセスのGUIってそうなってなかった?
アクセスのGUIってそうなってなかった?
693NAME IS NULL
2022/11/28(月) 07:28:43.92ID:Y7UCoM6L >>690
table_B.列名あいう(table_A外部キー)
table_B.列名あいう_用途(table_A外部キー)
つまり、table_Bは、table_Aのサブテーブルでありながら、処理のターゲットにもされるテーブルということになります。
table_B.列名あいう(table_A外部キー)
table_B.列名あいう_用途(table_A外部キー)
つまり、table_Bは、table_Aのサブテーブルでありながら、処理のターゲットにもされるテーブルということになります。
694NAME IS NULL
2022/11/28(月) 14:59:50.69ID:iXYDTEGM テーブルAの別のレコードの列を参照する列を同じレコードに持つテーブルB
これCOBOLの発想か?
これCOBOLの発想か?
695NAME IS NULL
2022/11/28(月) 15:04:08.76ID:??? >>693
親子関係なのか
それならそういう命名もある程度納得できる
taskテーブルとtask_dependencyテーブルがあって
task_dependencyテーブルではtask Aが終わったら
task B, C, Dを実行するみたいな依存関係を管理する時に
↓こういうイメージの構成にして(A, B), (A, C), (A, D)の3レコードを登録する形だよね
task.task_id
task_dependency.task_id -> task.task_id
task_dependency.depentent_task -> task.task_id
親子関係なのか
それならそういう命名もある程度納得できる
taskテーブルとtask_dependencyテーブルがあって
task_dependencyテーブルではtask Aが終わったら
task B, C, Dを実行するみたいな依存関係を管理する時に
↓こういうイメージの構成にして(A, B), (A, C), (A, D)の3レコードを登録する形だよね
task.task_id
task_dependency.task_id -> task.task_id
task_dependency.depentent_task -> task.task_id
696NAME IS NULL
2022/12/02(金) 14:57:13.95ID:??? 他サーバーのテーブルを参照するビューがクソ重くて辛い
データ転送バッチ作るしかないのか?
データ転送バッチ作るしかないのか?
697NAME IS NULL
2022/12/02(金) 17:56:05.96ID:??? レプリとかLog Shippingとかあるよ
698NAME IS NULL
2022/12/05(月) 11:50:30.30ID:???699NAME IS NULL
2022/12/05(月) 21:06:27.64ID:JoOlcgho700NAME IS NULL
2022/12/05(月) 22:09:46.69ID:??? あるよw
701NAME IS NULL
2022/12/06(火) 01:23:03.08ID:mYqHptcX >>700
それは標準SQLのマテリアライズドビューではなく、データベースそのものの物理的なレプリケーションでしかない。
こんなの乱暴すぎてアプリケーションからは危険すぎて使えない。
マテリアライズドビューがわからないのなら、マテリアライズドビューを知ってから反論した方がいい。
それは標準SQLのマテリアライズドビューではなく、データベースそのものの物理的なレプリケーションでしかない。
こんなの乱暴すぎてアプリケーションからは危険すぎて使えない。
マテリアライズドビューがわからないのなら、マテリアライズドビューを知ってから反論した方がいい。
702NAME IS NULL
2022/12/06(火) 15:29:27.72ID:??? >>701
何いってんのww
レプリとマテリアライズドビューの区別もできない上に
マテリアライズドビューが標準SQLになった妄想見てんのかww
恥ずかしいやつだなwww
オラクルしか知らんとマテリアライズドビューの本来の意味もわからんようになるのか
こうはなりたくないな
何いってんのww
レプリとマテリアライズドビューの区別もできない上に
マテリアライズドビューが標準SQLになった妄想見てんのかww
恥ずかしいやつだなwww
オラクルしか知らんとマテリアライズドビューの本来の意味もわからんようになるのか
こうはなりたくないな
703NAME IS NULL
2022/12/06(火) 17:18:32.85ID:??? オラクルだと昔はスナップショットと呼んでたから
マテリアライズドビューをスナップショットレプリケーションだと思い込んでるんだろ
マテリアライズドビューをスナップショットレプリケーションだと思い込んでるんだろ
704NAME IS NULL
2022/12/06(火) 19:56:32.02ID:mYqHptcX おまえらSQL Serverしか知らねえのまるわかりじゃねえかw
705NAME IS NULL
2022/12/06(火) 20:00:28.19ID:mYqHptcX >>702
あのさ、他のRDBMSではレプリケーションという言葉は広い意味の言葉で、製品ごとに定義が異なる。
さらにマテリアライズドビューはデータベースオブジェクトですよ?
SQL Serverで似たようなことをするには、全レコードをSELECTして他のテーブルに登録するくらいしかない。
他のRDBMSはSQLでマテリアライズドビューの操作ができる。
あのさ、他のRDBMSではレプリケーションという言葉は広い意味の言葉で、製品ごとに定義が異なる。
さらにマテリアライズドビューはデータベースオブジェクトですよ?
SQL Serverで似たようなことをするには、全レコードをSELECTして他のテーブルに登録するくらいしかない。
他のRDBMSはSQLでマテリアライズドビューの操作ができる。
706NAME IS NULL
2022/12/06(火) 20:02:10.27ID:mYqHptcX >>703
「スナップショットレプリケーション」なんて言葉が出てくるのはSQL Serverくらい
「スナップショットレプリケーション」なんて言葉が出てくるのはSQL Serverくらい
707NAME IS NULL
2022/12/06(火) 20:05:56.31ID:mYqHptcX 日本マイクロソフトのサポートや、日本マイクロソフトが作らせたOracleDBとの比較資料も大間違いだらけなんだぜ?
そのくらいマイクロソフトは自社製品がわからない。
日本マイクロソフトの品川本社のSQL Serverサポートもひどいレベル。
普通のデスクトップPCで試してみているだけ。
さも知ってましたみたいに答えるが、Bing検索で検索して答えるレベル
そのくらいマイクロソフトは自社製品がわからない。
日本マイクロソフトの品川本社のSQL Serverサポートもひどいレベル。
普通のデスクトップPCで試してみているだけ。
さも知ってましたみたいに答えるが、Bing検索で検索して答えるレベル
708NAME IS NULL
2022/12/06(火) 20:34:37.28ID:mYqHptcX マイクロソフトはSQL Serverの欠点を指摘されて、マテリアライズドビューはあるみたいなことを世界に発信している。
マテリアライズドビューは、ビューにインデックスを作成すれば解決みたいなことを言い出して、そのインデックスが実態がもはやただのテーブルにすぎない。
同じようにロックエスカレーションも悪く言われて、これも正反対のロックエスカレーションはすばらしいと言って回っているので、ますますSQL Serverが売れなくなった。
マテリアライズドビューは、ビューにインデックスを作成すれば解決みたいなことを言い出して、そのインデックスが実態がもはやただのテーブルにすぎない。
同じようにロックエスカレーションも悪く言われて、これも正反対のロックエスカレーションはすばらしいと言って回っているので、ますますSQL Serverが売れなくなった。
709NAME IS NULL
2022/12/06(火) 20:37:02.65ID:???710NAME IS NULL
2022/12/06(火) 21:16:22.43ID:mYqHptcX711NAME IS NULL
2022/12/06(火) 21:32:40.36ID:??? > こんなの乱暴すぎてアプリケーションからは危険すぎて使えない。
とか言ってた奴が
> SQL Serverで似たようなことをするには、全レコードをSELECTして他のテーブルに登録するくらいしかない。
とかw
とりあえず何が危険なのか書いてみ
それでお前のレベルがわかる
とか言ってた奴が
> SQL Serverで似たようなことをするには、全レコードをSELECTして他のテーブルに登録するくらいしかない。
とかw
とりあえず何が危険なのか書いてみ
それでお前のレベルがわかる
712NAME IS NULL
2022/12/06(火) 21:44:53.86ID:??? まいどまいど斜め上のレスを上から目線で書いちゃってwww
いつも笑わせてもらってる
こいつは特別アホだとしても
オラクル信奉者ってなぜか低レベルなやつ多いよなぁ
いつも笑わせてもらってる
こいつは特別アホだとしても
オラクル信奉者ってなぜか低レベルなやつ多いよなぁ
713NAME IS NULL
2022/12/06(火) 21:51:47.80ID:BmDSm/mR よろしくお願いします。
Date型で、日部分のみ指定した値に変更したいのですが、そういう関数はあるでしょうか。
元となる年月日から足し引きするような関数はあったのですが、直接指定するというものが見つかりません。
年、月、日に分解したあとに、日のみ変えてまたDATE型を組み立てるしかないのでしょうか。
Date型で、日部分のみ指定した値に変更したいのですが、そういう関数はあるでしょうか。
元となる年月日から足し引きするような関数はあったのですが、直接指定するというものが見つかりません。
年、月、日に分解したあとに、日のみ変えてまたDATE型を組み立てるしかないのでしょうか。
714NAME IS NULL
2022/12/06(火) 22:04:17.98ID:??? >>712
他のDBMSに精通したらオラクルを信奉したりしないからね
他のDBMSに精通したらオラクルを信奉したりしないからね
715NAME IS NULL
2022/12/06(火) 22:38:13.91ID:??? >>713
SQL-Server 2022 なら
dateadd(day, n - 1, datetrunc(month, 日付))
でできると思うけどどう見ても素直に
datefromparts(year(日付), month(日付), n)
の方がわかりやすいと思う
SQL-Server 2022 なら
dateadd(day, n - 1, datetrunc(month, 日付))
でできると思うけどどう見ても素直に
datefromparts(year(日付), month(日付), n)
の方がわかりやすいと思う
716NAME IS NULL
2022/12/06(火) 22:55:01.97ID:rSr0+yYs717NAME IS NULL
2022/12/07(水) 01:11:49.50ID:???718NAME IS NULL
2022/12/07(水) 02:44:35.29ID:+zJ/wx/Y719NAME IS NULL
2022/12/07(水) 17:41:32.59ID:KFl2dpu1 Sql server 2019と、SQL Server Management Studio(SSMS)について
SSMSを使って、Sql serverにsaで接続し、
ファンクションを作成しました。
作成用Create functionスクリプトの実行は完了しました。
しかし、SSMSの左ペインに表示されるはずの作成したファンクションが見つかりません。
そのファンクションも、SSMSには認識されておらず、dbo.ファンクション名を打とうとしても、インテリセンスが機能しません。
このとき、SSMSを再起動したのですが、状況は変わりませんでした。
しかし、Sql serverも再起動した後に試すと、SSMSはさきのファンクションを認識しました。
こういう挙動は普通ですか?
ストアドプロシジャなら、直ぐに認識されなくても、いくらなんでもSSMSで再接続さえすれば認識されたと思います。
SSMSを使って、Sql serverにsaで接続し、
ファンクションを作成しました。
作成用Create functionスクリプトの実行は完了しました。
しかし、SSMSの左ペインに表示されるはずの作成したファンクションが見つかりません。
そのファンクションも、SSMSには認識されておらず、dbo.ファンクション名を打とうとしても、インテリセンスが機能しません。
このとき、SSMSを再起動したのですが、状況は変わりませんでした。
しかし、Sql serverも再起動した後に試すと、SSMSはさきのファンクションを認識しました。
こういう挙動は普通ですか?
ストアドプロシジャなら、直ぐに認識されなくても、いくらなんでもSSMSで再接続さえすれば認識されたと思います。
720NAME IS NULL
2023/01/09(月) 01:53:59.58ID:get9qHwd >>719
データベースの情報を完璧に取得し直して表示するという仕様は、完璧である必要があると思っているんですか?
データベースオブジェクトを検索して表示するのも負荷のかかることです。
SSMSで一時的に見えなかったことを問題視してますが、そんなに重大な問題ですか?
SSMSではなく、クエリで存在を確認する習慣をつけた方がいいですよ。
データベースの情報を完璧に取得し直して表示するという仕様は、完璧である必要があると思っているんですか?
データベースオブジェクトを検索して表示するのも負荷のかかることです。
SSMSで一時的に見えなかったことを問題視してますが、そんなに重大な問題ですか?
SSMSではなく、クエリで存在を確認する習慣をつけた方がいいですよ。
721NAME IS NULL
2023/01/09(月) 05:36:49.23ID:22YCMRiX ストアドプロシジャ内で、
サブクエリによるテーブルの導出を
テーブル値ファンクションで行うとパフォーマンスは落ちるのでしょうか。
各ストアドプロシジャ内で、同じ導出を行うのも非効率だなと思って、流用しやすい形でfrom 句にファンクションを使おうと思っています。
サブクエリによるテーブルの導出を
テーブル値ファンクションで行うとパフォーマンスは落ちるのでしょうか。
各ストアドプロシジャ内で、同じ導出を行うのも非効率だなと思って、流用しやすい形でfrom 句にファンクションを使おうと思っています。
722NAME IS NULL
2023/01/09(月) 17:03:36.75ID:???723NAME IS NULL
2023/01/09(月) 17:23:40.09ID:???724NAME IS NULL
2023/01/09(月) 22:12:05.07ID:???725NAME IS NULL
2023/01/10(火) 05:05:40.83ID:M8ITj7+H726NAME IS NULL
2023/01/10(火) 05:48:19.71ID:j9AMOfqi >>725
整合性の取れた最新のデータを取得しないといけない理由があるんですか?
理由がないのならそんなやり方は捨てるべきです。
しかもデータ量について言及がないので、データ量が少なければ、どういう方法でやっても速度性能なんてほとんど変わりません。
パフォーマンスは低下するが、1.00秒かかるクエリが1.01秒になるような性能悪化なら気にしても意味はありません。
整合性の取れた最新のデータを取得しないといけない理由があるんですか?
理由がないのならそんなやり方は捨てるべきです。
しかもデータ量について言及がないので、データ量が少なければ、どういう方法でやっても速度性能なんてほとんど変わりません。
パフォーマンスは低下するが、1.00秒かかるクエリが1.01秒になるような性能悪化なら気にしても意味はありません。
727NAME IS NULL
2023/01/10(火) 16:42:39.89ID:MfwzOWLo >>726
>整合性の取れた最新のデータを取得しないといけない理由があるんですか?理由がないのならそんなやり方は捨てるべきです。
どういうこと?
静的テーブルに、予めデータを用意しておいて、
これを使うということ??
>整合性の取れた最新のデータを取得しないといけない理由があるんですか?理由がないのならそんなやり方は捨てるべきです。
どういうこと?
静的テーブルに、予めデータを用意しておいて、
これを使うということ??
728NAME IS NULL
2023/01/10(火) 18:38:33.71ID:??? >>725
通常のビューや、CTEでダメな理由がなにかあるのか?
通常のビューや、CTEでダメな理由がなにかあるのか?
729NAME IS NULL
2023/01/10(火) 19:15:25.24ID:1urMig+5 >>728
再利用できない
再利用できない
730NAME IS NULL
2023/01/10(火) 19:26:28.71ID:???731NAME IS NULL
2023/01/10(火) 20:33:42.25ID:aTVN3pRn732NAME IS NULL
2023/01/10(火) 22:02:19.98ID:??? >>727
そいつはDB板の有名荒らしなので相手にするのは時間の無駄だよ
そいつはDB板の有名荒らしなので相手にするのは時間の無駄だよ
733NAME IS NULL
2023/01/10(火) 22:03:23.61ID:aTVN3pRn >>732
ありがとうございます。
ありがとうございます。
734NAME IS NULL
2023/01/10(火) 22:08:48.47ID:??? 条件となる値が固定ならビュー
条件となる値が可変ならinline TVF
条件となる値が可変ならinline TVF
735NAME IS NULL
2023/01/11(水) 05:06:06.88ID:icJsem5h >>734
引数なしのテーブル値ファンクションは駄目?
引数なしのテーブル値ファンクションは駄目?
736NAME IS NULL
2023/01/11(水) 14:22:52.23ID:??? >>731
だからそれだと、ビューがダメな理由にならないんだが?
だからそれだと、ビューがダメな理由にならないんだが?
737NAME IS NULL
2023/01/11(水) 16:50:03.30ID:iyfLfCdS738NAME IS NULL
2023/01/11(水) 18:33:20.02ID:??? >>737
>from句や、OUTER APPLYできるのかな。
当然使えるよ
SELECTするだけならTableが使えるところならどこでも使えると思うよ
更新系はいろいろ制約があってそれを満たしてなければ使えない
>from句や、OUTER APPLYできるのかな。
当然使えるよ
SELECTするだけならTableが使えるところならどこでも使えると思うよ
更新系はいろいろ制約があってそれを満たしてなければ使えない
739NAME IS NULL
2023/01/13(金) 04:01:42.26ID:gJb3onoK >>738
ありがとうございます。
ありがとうございます。
740NAME IS NULL
2023/01/13(金) 12:39:45.86ID:??? SQL ServerのPKやインデックスは作成後にメモリに常駐し続けるものなんでしょうか?
741NAME IS NULL
2023/01/13(金) 13:47:19.40ID:??? >>740
キャッシュにブロック単位で読み込まれて残ってることはあるけど常駐はしない
キャッシュにブロック単位で読み込まれて残ってることはあるけど常駐はしない
742NAME IS NULL
2023/01/13(金) 16:02:17.39ID:ULxEl8AG SQL Server for LinuxでActive×Activeの遠隔地マルチマスター構成作れるの?
743NAME IS NULL
2023/01/13(金) 21:21:15.28ID:??? >>741
ありがとうございます。
ありがとうございます。
744NAME IS NULL
2023/01/13(金) 21:27:19.96ID:???745NAME IS NULL
2023/01/13(金) 22:38:03.16ID:???746NAME IS NULL
2023/01/14(土) 05:02:21.29ID:wGD1MOCC 大規模システムはOracleDB、
中小システムはSQL Serverという棲み分けは
結局、変わらなかった。
今後も変わることはない。
なぜならマイクロソフトが諦めているから。
中小システムはSQL Serverという棲み分けは
結局、変わらなかった。
今後も変わることはない。
なぜならマイクロソフトが諦めているから。
747NAME IS NULL
2023/01/14(土) 15:34:58.44ID:??? 十数年前ならともかく
本当に大規模なシステムでは
もうオラクルやSQL Serverを検討するような時代じゃないからな
本当に大規模なシステムでは
もうオラクルやSQL Serverを検討するような時代じゃないからな
748NAME IS NULL
2023/01/15(日) 06:58:05.77ID:2joXWGOy >>747
なに使うの
なに使うの
749NAME IS NULL
2023/01/15(日) 14:10:17.70ID:7Mz5p9+i750NAME IS NULL
2023/01/15(日) 14:54:01.25ID:??? SQL Server 2022
https://www.microsoft.com/ja-jp/sql-server/sql-server-2022
https://www.microsoft.com/ja-jp/sql-server/sql-server-2022
751NAME IS NULL
2023/01/15(日) 15:07:57.87ID:???752NAME IS NULL
2023/01/15(日) 15:24:23.29ID:7Mz5p9+i 子供みたいな反論だな
753NAME IS NULL
2023/01/15(日) 15:24:53.65ID:7Mz5p9+i 単にお金がない企業は安いものを選択するしかないだけの話
754NAME IS NULL
2023/01/15(日) 16:07:23.25ID:??? そうなんだよ
お金がないからAmazonもOracle全部やめようとしてるんだよなぁ
お金がないからAmazonもOracle全部やめようとしてるんだよなぁ
755NAME IS NULL
2023/01/15(日) 16:12:59.82ID:??? Googleもお金がないからオラクルなんてボッ・・・高価なものは使えない
Facebookも右肩下がりだから節約してMySQL
Facebookも右肩下がりだから節約してMySQL
756NAME IS NULL
2023/01/15(日) 19:18:52.45ID:7Mz5p9+i AWSなんてすげーお金がかかるのに騙されて契約するのが日本人
757NAME IS NULL
2023/01/15(日) 19:20:18.35ID:7Mz5p9+i 本番環境しか見積もらずにAWSに完全移行して、運用保守環境がなくて積む企業が多発しているのが現状。
758NAME IS NULL
2023/01/26(木) 02:55:42.92ID:0ZdAuIEw あげ太郎
759NAME IS NULL
2023/01/26(木) 09:47:38.66ID:??? さげ二郎
760NAME IS NULL
2023/01/27(金) 16:13:11.65ID:??? 保守三郎
761NAME IS NULL
2023/02/12(日) 07:52:50.32ID:??? SSE2017相手なんだけど
SSMS19は18から設定を引き継ぐと繋がるけど
設定をクリアして新規で接続しようとすると
証明書がどうたらって出て接続エラーになる
でアンインストールしてSSMS18を入れ直すと
新規設定からでも接続できた
SSE2019以降の組み合わせだとどうなるか…
検証が非常に面倒だw
SSMS19は18から設定を引き継ぐと繋がるけど
設定をクリアして新規で接続しようとすると
証明書がどうたらって出て接続エラーになる
でアンインストールしてSSMS18を入れ直すと
新規設定からでも接続できた
SSE2019以降の組み合わせだとどうなるか…
検証が非常に面倒だw
762NAME IS NULL
2023/02/13(月) 15:44:50.45ID:??? SSMS19の接続問題は接続の暗号化オプションが原因だった
SSMS18は暗号化が既定でオフだった
SSMS18は暗号化が既定でオフだった
763NAME IS NULL
2023/02/14(火) 03:21:26.51ID:??? >>762
SSMSだけの問題じゃなくて、ほかのクライアントでも問題出てるから
サーバーかクライアントドライバでのデフォルト設定が変わってるっぽい
とりあえず接続文字列修正してるけど、デフォルト設定変える方法探さんとなぁ
SSMSだけの問題じゃなくて、ほかのクライアントでも問題出てるから
サーバーかクライアントドライバでのデフォルト設定が変わってるっぽい
とりあえず接続文字列修正してるけど、デフォルト設定変える方法探さんとなぁ
764NAME IS NULL
2023/02/14(火) 20:18:55.91ID:??? SSMS19は設定ファイル自体を削除しちゃうと
接続暗号化オプションにもチェックが入るけど
詳細メニューで一度リセットボタン押しとくと
その後は既定で暗号化オプションがオフになる
接続暗号化オプションにもチェックが入るけど
詳細メニューで一度リセットボタン押しとくと
その後は既定で暗号化オプションがオフになる
765NAME IS NULL
2023/02/14(火) 20:21:19.25ID:??? Azureの方も更新来てたけど
引継でも新規接続でも問題無いな
引継でも新規接続でも問題無いな
766NAME IS NULL
2023/06/02(金) 23:00:42.49ID:wLn6qWZ8 SQL Serverは他のRDBMSと実装の方向性が違いすぎて、もはや作りが崩壊している。
767NAME IS NULL
2023/06/08(木) 18:27:59.82ID:??? 具体的な事例を挙げてくれ
768NAME IS NULL
2023/06/11(日) 12:32:26.82ID:0iWIq9DX >>767
特定のインデックスがあるとテーブルが不要になるあたり
特定のインデックスがあるとテーブルが不要になるあたり
769NAME IS NULL
2023/06/11(日) 13:31:49.72ID:??? もっと具体的に。
770NAME IS NULL
2023/06/11(日) 13:34:41.55ID:0iWIq9DX771NAME IS NULL
2023/06/11(日) 14:31:03.94ID:??? いや、個別の機能とかそういうのはいいから。
それをどう使うとどういう風になにが崩壊するのか実際的に語ってみて。
それをどう使うとどういう風になにが崩壊するのか実際的に語ってみて。
772NAME IS NULL
2023/06/11(日) 15:46:57.75ID:??? ボラクル君いじりは非生産的なのでやめようね
773NAME IS NULL
2023/06/11(日) 20:50:10.54ID:0iWIq9DX >>771
テーブルで実装できなかったことをごまかしている
テーブルで実装できなかったことをごまかしている
774NAME IS NULL
2023/06/11(日) 20:55:17.39ID:??? 崩壊してないじゃん。w
775NAME IS NULL
2023/06/11(日) 22:37:56.63ID:0iWIq9DX データの読み取りだけで高負担という欠点をさらしているわけだが、読み取り一貫性の実装が何度、作り直しても同じという諦めはマイクロソフト自身が諦めていること。
マイクロソフトドキュメントでわかるとおり、技術的にわかる人間を投入していないからこうなる。
マイクロソフトドキュメントでわかるとおり、技術的にわかる人間を投入していないからこうなる。
776NAME IS NULL
2023/06/11(日) 22:53:30.42ID:??? 崩壊してないじゃん。w
777NAME IS NULL
2023/06/12(月) 17:56:19.91ID:??? >>770
データウェアハウス向けの機能追加したら、他のRDBMSと実装の方向性が違いすぎるってか
>>データの読み取りだけで高負担という欠点
エビデンスは?
>読み取り一貫性の実装が何度、作り直しても同じという諦めはマイクロソフト自身が諦めている
エビデンスは?
>マイクロソフトドキュメントでわかるとおり、技術的にわかる人間を投入していない
たとえばどのドキュメント?
せめて、具体的なURLの一つでもあげてから言えよ
データウェアハウス向けの機能追加したら、他のRDBMSと実装の方向性が違いすぎるってか
>>データの読み取りだけで高負担という欠点
エビデンスは?
>読み取り一貫性の実装が何度、作り直しても同じという諦めはマイクロソフト自身が諦めている
エビデンスは?
>マイクロソフトドキュメントでわかるとおり、技術的にわかる人間を投入していない
たとえばどのドキュメント?
せめて、具体的なURLの一つでもあげてから言えよ
778NAME IS NULL
2023/06/14(水) 16:03:13.72ID:14/Kwe66 SQL Serverの営業職なのか?
SQL Serverは同時実行性を切り捨てている。
2005から2008でコードを書き直したが、結局、仕様がたいして変わらないものが納品されたことぐらい歴史を勉強しろよ。
SQL Serverは同時実行性を切り捨てている。
2005から2008でコードを書き直したが、結局、仕様がたいして変わらないものが納品されたことぐらい歴史を勉強しろよ。
779NAME IS NULL
2023/06/14(水) 16:08:00.63ID:14/Kwe66 >>777
他のトランザクションを邪魔する形で、読み取り一貫性を実装している。
データそのものを排他ロックするSybaseの流れから方針転換できなかった。
だから、列ストアインデックスのようにテーブルのコピーを作って、読み取りの並列化をするしかなくなった。
批判をしているんじゃなくて、事実を書かれて頭に来ているのは、ちょっとおかしい。
他のトランザクションを邪魔する形で、読み取り一貫性を実装している。
データそのものを排他ロックするSybaseの流れから方針転換できなかった。
だから、列ストアインデックスのようにテーブルのコピーを作って、読み取りの並列化をするしかなくなった。
批判をしているんじゃなくて、事実を書かれて頭に来ているのは、ちょっとおかしい。
780NAME IS NULL
2023/06/14(水) 20:11:54.11ID:??? だから、どこが崩壊してるんだよ。
781NAME IS NULL
2023/06/14(水) 20:43:15.61ID:???782NAME IS NULL
2023/06/15(木) 05:40:55.29ID:Q/3PXPD+ 何が気に入らないのか?
783NAME IS NULL
2023/06/15(木) 05:47:09.29ID:Q/3PXPD+ >>781
他のRDBMSは仕様を変えながら進化している。
後方互換性をマイクロソフトがアピールしていることもないし、そもそも後方互換性を気にしないのがSQL Server。
これを批難されているように受け取るんだろうけど、SQL Serverは日本マイクロソフトが作っているんじゃねえんだぞ?
他のRDBMSは仕様を変えながら進化している。
後方互換性をマイクロソフトがアピールしていることもないし、そもそも後方互換性を気にしないのがSQL Server。
これを批難されているように受け取るんだろうけど、SQL Serverは日本マイクロソフトが作っているんじゃねえんだぞ?
784NAME IS NULL
2023/06/15(木) 05:57:11.40ID:Q/3PXPD+ SQL ServerはSQL ServerのDBAはなかなかいなくて、マイクロソフトは売りっぱなしの商売下手。
すでに終わったSQL Serverの資格も普及させる気があるとは思えなかった。いまはAzureのおかげでセット販売ができているからいいけど。
すでに終わったSQL Serverの資格も普及させる気があるとは思えなかった。いまはAzureのおかげでセット販売ができているからいいけど。
785NAME IS NULL
2023/06/15(木) 20:47:54.90ID:??? だから、どこが崩壊してるんだよ。
結構真面目に聞いてたつもりだったけど、何の根拠を挙げることもできないのね。
ただのアンチさんの戯言だったわけだ。
結構真面目に聞いてたつもりだったけど、何の根拠を挙げることもできないのね。
ただのアンチさんの戯言だったわけだ。
786NAME IS NULL
2023/06/17(土) 08:32:00.55ID:5Ljw3AHe SELECTだけで必要以上にレコードを排他ロックすることがいまだにあり、これによる同時実行性の低下対策として、レコードのコピーを使う仕組みが作られて、それを使わされている。
要するにマイクロソフトが指示した仕様を手抜きで前のバージョンのコピープログラムで再構築してしまったのが不幸の始まり。
マイクロソフトはいまだに「ロックエスカレーションは必ずしも悪いことではない」と説明せざるをえない。
要するにマイクロソフトが指示した仕様を手抜きで前のバージョンのコピープログラムで再構築してしまったのが不幸の始まり。
マイクロソフトはいまだに「ロックエスカレーションは必ずしも悪いことではない」と説明せざるをえない。
787NAME IS NULL
2023/06/17(土) 08:40:49.47ID:5Ljw3AHe >>785
テーブルをSELECTしながら処理するのと、テーブルをSELECTし、同じSELECT結果を登録した一時テーブルや同じデータを持つ列ストアインデックスを参照して処理するのを比べると、後者の方が短時間で終わる。
さらにやばいのがSQL Serverはいまでも単にSELECTしただけで、理由のわからない大幅な性能劣化が起きることがある。
マイクロソフトそのものが諦めているのに、SQL Serverに期待しすぎの人間がこのスレにいるのは、日本マイクロソフトの周知不足なんだろうな。
テーブルをSELECTしながら処理するのと、テーブルをSELECTし、同じSELECT結果を登録した一時テーブルや同じデータを持つ列ストアインデックスを参照して処理するのを比べると、後者の方が短時間で終わる。
さらにやばいのがSQL Serverはいまでも単にSELECTしただけで、理由のわからない大幅な性能劣化が起きることがある。
マイクロソフトそのものが諦めているのに、SQL Serverに期待しすぎの人間がこのスレにいるのは、日本マイクロソフトの周知不足なんだろうな。
788NAME IS NULL
2023/06/17(土) 08:44:00.04ID:5Ljw3AHe SQL Serverは同じテーブルに複数のセッションから同時にSELECT文を発行すると、極端に遅くなることがある。
さすがにこう説明すれば、作りに問題があることがわかるだろ?
さすがにこう説明すれば、作りに問題があることがわかるだろ?
789NAME IS NULL
2023/06/17(土) 11:04:09.78ID:??? だから、どこが崩壊してるんだよ。
自分の台詞だろ。まずそこを説明しろよ。
自分の台詞だろ。まずそこを説明しろよ。
790NAME IS NULL
2023/06/17(土) 11:04:34.79ID:??? あ、失礼。
x 説明
o 証明
x 説明
o 証明
791NAME IS NULL
2023/06/18(日) 23:16:22.92ID:???792NAME IS NULL
2023/06/19(月) 19:27:17.18ID:4/v87WeP 共有ロックの意味が違うぞ
793NAME IS NULL
2023/06/24(土) 16:50:28.70ID:kF0ecW7R 3行めから6行目までのデータを抽出するときってどうやって書いたらいいですか?
794NAME IS NULL
2023/06/24(土) 16:53:00.13ID:kF0ecW7R795NAME IS NULL
2023/06/24(土) 16:53:55.90ID:kF0ecW7R796NAME IS NULL
2023/06/24(土) 19:51:58.99ID:??? この辺りのこと?
ttps://sql-oracle.com/sqlserver/?p=857
ttps://sql-oracle.com/sqlserver/?p=857
797NAME IS NULL
2023/06/24(土) 22:11:08.28ID:kF0ecW7R798NAME IS NULL
2023/06/25(日) 09:25:22.34ID:ABQ2v09G 2行目の5列目のみを抽出したいときってどうすればできますか?
SELECT 5列目の列名
FROM テーブル名
まではわかったのですが。。。
SELECT 5列目の列名
FROM テーブル名
まではわかったのですが。。。
799NAME IS NULL
2023/06/25(日) 11:29:58.29ID:??? 796 の応用でできるでしょうに。
800NAME IS NULL
2023/06/25(日) 11:47:11.55ID:ABQ2v09G801NAME IS NULL
2023/06/27(火) 17:05:56.20ID:??? select s from テーブル名 s where s.email = $1;
この s って何でしょうか?
AS句を省略してる的な感じなのでしょうか?
この s って何でしょうか?
AS句を省略してる的な感じなのでしょうか?
802NAME IS NULL
2023/06/27(火) 17:33:51.50ID:??? そうだよ
テーブル名のエイリアス
テーブル名のエイリアス
803NAME IS NULL
2023/06/27(火) 18:30:54.86ID:???804NAME IS NULL
2023/06/27(火) 19:16:12.82ID:XSnmrLrK 同じテーブル同士をjoinする意味ってなに?
805NAME IS NULL
2023/06/27(火) 19:16:57.47ID:XSnmrLrK ですか?
同じテーブルを隣同士に繋げても意味ない気がして。。
同じテーブルを隣同士に繋げても意味ない気がして。。
806NAME IS NULL
2023/06/27(火) 19:27:51.68ID:??? 同じテーブルでも行ごとに中身がちがうんだから
違う行をつなげる意味はあるだろう
違う行をつなげる意味はあるだろう
807NAME IS NULL
2023/06/27(火) 19:55:39.96ID:XSnmrLrK 行を消せたりするってこと?
808NAME IS NULL
2023/06/27(火) 21:58:44.24ID:XSnmrLrK LEFT OUTERJOINの説明で、結合した時に余計なデータを取ってくるとノイズになるって説明見たんですけど、(ノイズ)ってなんの意味ですか?
NULLばっかりになるってことですか?
NULLばっかりになるってことですか?
809NAME IS NULL
2023/07/14(金) 20:40:09.51ID:???810NAME IS NULL
2023/07/15(土) 12:24:05.87ID:ZDu5V+2v ?
811NAME IS NULL
2023/07/15(土) 13:28:07.72ID:??? 不要な列のデータ=ノイズって解釈なのだろうとエスパー。
812NAME IS NULL
2023/07/15(土) 16:37:15.54ID:??? たぶんそういう意味だろうね
(特に右テーブルの)不要な列を取ってくるなってことを言いたかったんだろう
(特に右テーブルの)不要な列を取ってくるなってことを言いたかったんだろう
813NAME IS NULL
2023/07/15(土) 22:00:38.83ID:aJ3C4xJo >>812
左右が逆
左右が逆
814NAME IS NULL
2023/07/15(土) 22:04:46.99ID:aJ3C4xJo >>812
難解な表現だな。
難解な表現だな。
815NAME IS NULL
2023/07/15(土) 22:05:30.45ID:aJ3C4xJo >>809
列指定にアスタリスクを使うことはあまりない
列指定にアスタリスクを使うことはあまりない
816NAME IS NULL
2023/08/07(月) 00:03:36.76ID:KYaloyhj Developer Editionのライセンス規約数年前に変わったはずなのに、未だに開発者しか使えないと
大手ベンダですら勘違いしているのはマイクロソフトの宣伝周知足りないよな
こっちは損しないからどうでもいいけど、無駄な金払う顧客が可哀想・・・
大手ベンダですら勘違いしているのはマイクロソフトの宣伝周知足りないよな
こっちは損しないからどうでもいいけど、無駄な金払う顧客が可哀想・・・
817NAME IS NULL
2023/08/08(火) 01:33:23.95ID:??? 昔もいまも開発用途にしか使えないと思うんだが
昔はどうで今はどうなのか詳しく
昔はどうで今はどうなのか詳しく
818NAME IS NULL
2023/09/19(火) 00:15:00.16ID:??? それってどうしてそうなの?
819NAME IS NULL
2023/09/19(火) 00:29:15.64ID:??? https://www.microsoft.com/ja-jp/sql-server/sql-server-downloads
SQL Server 2022 Developer は、非運用環境におけるデータベースの開発およびテスト向けの、全機能を備えた無料エディションです。
SQL Server 2022 Express は、デスクトップ、Web、小規模サーバー向けのアプリケーションの開発と運用に最適な、SQL Server の無料エディションです。
SQL Server 2022 Developer は、非運用環境におけるデータベースの開発およびテスト向けの、全機能を備えた無料エディションです。
SQL Server 2022 Express は、デスクトップ、Web、小規模サーバー向けのアプリケーションの開発と運用に最適な、SQL Server の無料エディションです。
820NAME IS NULL
2023/10/04(水) 00:26:39.56ID:??? クエリストア、めちゃくちゃ便利ですね
Oracleから移ってきたけどsql serverの便利さ
Oracleから移ってきたけどsql serverの便利さ
821NAME IS NULL
2023/10/04(水) 00:28:48.45ID:??? に驚いています。
ssmsやc#との連携のしやすさなどエコシステム全体がユーザーフレンドリーな感じ
逆にOracleが不便なだけなのかもだけど
ssmsやc#との連携のしやすさなどエコシステム全体がユーザーフレンドリーな感じ
逆にOracleが不便なだけなのかもだけど
822NAME IS NULL
2023/10/08(日) 08:12:40.58ID:1K2SEOD7 公式ドキュメントに問題があるせいで伸びないSQL Server
823NAME IS NULL
2023/10/18(水) 08:53:43.60ID:??? ねぇ…試してみる?
824NAME IS NULL
2023/10/19(木) 00:03:00.82ID:??? エラーの有無にかかわらずログテーブルへの出力をしたいんですが、オラクルのような自律型トランザクションってないんですよね…
皆さんどうやってます?
皆さんどうやってます?
825NAME IS NULL
2023/10/19(木) 15:21:35.75ID:??? それってメインの処理は成功してログテーブルへの出力が失敗した場合はどう対処してるの?
826NAME IS NULL
2023/10/19(木) 20:34:46.35ID:??? テキストファイルに吐いといて定期的にログテーブルに乗せるとか
原始的すぎるかな
原始的すぎるかな
827NAME IS NULL
2023/10/19(木) 20:35:14.26ID:??? テキストファイルに吐いといて定期的にログテーブルに乗せるとか
原始的すぎるかな
原始的すぎるかな
828NAME IS NULL
2023/10/19(木) 20:35:48.55ID:??? テキストファイルに吐いといて定期的にログテーブルに乗せるとか
原始的すぎるかな
原始的すぎるかな
829NAME IS NULL
2023/10/19(木) 20:38:16.15ID:??? ごめん!
830NAME IS NULL
2023/10/20(金) 19:12:09.41ID:??? 本当にロールバックさせたいとこだけ子トランザクションにして全体はコミットする
831NAME IS NULL
2023/10/20(金) 19:12:18.60ID:??? 本当にロールバックさせたいとこだけ子トランザクションにして全体はコミットする
832NAME IS NULL
2023/10/21(土) 09:43:57.33ID:??? トランザクションをハンドリングするレイヤーとログ出力するレイヤーが揃ってないんだろう
テーブル変数やリンクテーブル使った回避策もあるけど揃ってないのがアンチパターンなので設計を見直したほうがいい
テーブル変数やリンクテーブル使った回避策もあるけど揃ってないのがアンチパターンなので設計を見直したほうがいい
833NAME IS NULL
2023/10/21(土) 13:56:10.51ID:??? 設計がおかしいって言っとけばなんかわかってる感が出るから便利よね
どうおかしいかは言ってる本人もわからない
どうおかしいかは言ってる本人もわからない
834NAME IS NULL
2023/11/18(土) 00:15:40.15ID:t4HCeZxT Accessマスターしたんだが次何やればいい?
835NAME IS NULL
2023/12/03(日) 23:54:43.93ID:??? test
836NAME IS NULL
2023/12/07(木) 00:03:22.93ID:??? ssmsとazure data studioそれぞれで実行計画出したときの不足インデックス提案が微妙に違うことに気づいたけどなんで?
837NAME IS NULL
2023/12/14(木) 14:28:23.30ID:??? ごめん、ポスグレに移行します
838NAME IS NULL
2023/12/14(木) 14:37:57.09ID:LkoJvXxu いいね👍
839NAME IS NULL
2023/12/14(木) 23:52:39.82ID:??? azureの料金上がるし、azureからawsに乗り換えるってなるとDBもついでにsql serverからauroraに移行、みたいな話は増えそう
840NAME IS NULL
2023/12/16(土) 23:22:24.72ID:dHU1nQbd >>839
オラクルクラウドだろ?
オラクルクラウドだろ?
841NAME IS NULL
2023/12/16(土) 23:48:47.64ID:??? オラクルクラウドとか罰ゲーム
VMがタダなのでたまに使うくらい
VMがタダなのでたまに使うくらい
842NAME IS NULL
2023/12/17(日) 01:42:37.95ID:rc5EPYnZ オラクルクラウドはAzureと提携しているんだが?
843NAME IS NULL
2023/12/17(日) 02:28:25.20ID:??? 「提携してるんだが」wwwwww
844NAME IS NULL
2023/12/17(日) 21:30:43.12ID:rc5EPYnZ 知らねえだけか
Azureの意味も製品の単位だとまちがって思い込んでいるな
Azureの意味も製品の単位だとまちがって思い込んでいるな
845NAME IS NULL
2023/12/18(月) 08:18:13.62ID:??? awsのマネージドsql serverって実際移行先としてどうなんだろう
846NAME IS NULL
2023/12/20(水) 15:34:03.74ID:6ZdiLoKb >>845
クソ高いだけ
クソ高いだけ
847NAME IS NULL
2024/01/03(水) 17:51:37.12ID:??? クラウドはDBが一番コストかかるので頭が痛い
案件ごとにチューニングしてvCore2つなんとか減らせるかどうか…を突き詰めるのしんどいわ
案件ごとにチューニングしてvCore2つなんとか減らせるかどうか…を突き詰めるのしんどいわ
848NAME IS NULL
2024/01/04(木) 19:09:30.45ID:9A15oU4c みんなの後悔するんだよな
849NAME IS NULL
2024/01/04(木) 21:01:53.61ID:??? インフラメンテコストを丸投げできるなら安い
DBサーバのメンテ不足で痛い目見た経験ある人はこのスレ多いでしょ
DBサーバのメンテ不足で痛い目見た経験ある人はこのスレ多いでしょ
850NAME IS NULL
2024/01/05(金) 22:59:11.61ID:E7vKZkjZ オラクルクラウドはいいぞ
なんせただでサーバー立てられるからな
ある時よくわからん理由で消されるけどwww
なんせただでサーバー立てられるからな
ある時よくわからん理由で消されるけどwww
851NAME IS NULL
2024/01/06(土) 00:13:48.60ID:??? 数年前に勝手にインスタンス消されたってツイッターで騒ぎあったね
信用してないからタダでも使わないかなw
信用してないからタダでも使わないかなw
852NAME IS NULL
2024/01/06(土) 22:08:12.83ID:+8fz8nB8 数年前と現在の区別がないのか
853NAME IS NULL
2024/03/18(月) 00:34:07.58ID:??? サブスクがコスト高でオンプレ回帰の流れ
クラウドの役割なんてバックアップ程度が相応しい
クラウドの役割なんてバックアップ程度が相応しい
854NAME IS NULL
2024/03/18(月) 00:50:59.03ID:??? お前の中ではそうなんだろうな
855NAME IS NULL
2024/03/18(月) 01:01:28.53ID:??? 定期的にボラクル君が出現するねw
それも決まってなぜかSQL Serverスレww
それも決まってなぜかSQL Serverスレww
856NAME IS NULL
2024/03/18(月) 04:06:55.63ID:??? 従量課金のことをサブスクと呼ぶやつとは希少種だな
857!
2024/04/29(月) 04:26:52.27ID:??? azureで無料版サーバレスがプレビュー
858NAME IS NULL
2024/07/03(水) 16:05:42.02ID:??? select * except(abc) from hoge
で abc 列以外を選択できるRDBがありますが、SQLServerでこういう事できますか?
で abc 列以外を選択できるRDBがありますが、SQLServerでこういう事できますか?
859NAME IS NULL
2024/08/15(木) 19:47:06.08ID:QzVtyKRD sybase系はやはり嫌われていて、脱SQL Serverの流れが止まらない。
860NAME IS NULL
2024/08/17(土) 10:17:19.66ID:uiuzMKuw 最新の醜い奇形OSが普及しない間抜け愚鈍なMicrosoft爆
861NAME IS NULL
2024/08/17(土) 18:36:50.78ID:9qQH55uU MySQLにすら選定で負けてしまっている
862NAME IS NULL
2024/08/22(木) 21:36:58.36ID:isHcuDV8 リンクサーバーのソースにmdbを使うと上手く行くのに、csvを使うといさむが居ないって言われるの何だぜ?
ファイルの場所とACE.OLEDBは同じ
ファイルの場所とACE.OLEDBは同じ
863NAME IS NULL
2024/08/23(金) 20:47:43.97ID:es0ruq1O >>862
「いさむ」さん?
「いさむ」さん?
864NAME IS NULL
2024/08/23(金) 21:06:55.52ID:yAtp65Kw そう、いさむ運転手がいねえよって言われるやつ
どちらにしても自決しました
mdbとxlsxがファイル指定でcsvだけフォルダ指定だなんて分かるか~い!
どちらにしても自決しました
mdbとxlsxがファイル指定でcsvだけフォルダ指定だなんて分かるか~い!
865NAME IS NULL
2024/08/23(金) 21:49:27.53ID:YuqGesnN >>864
ファイル形式がわからないという理由
ファイル形式がわからないという理由
866NAME IS NULL
2024/10/01(火) 02:01:55.91ID:??? CosmosDBとSQL DatabaseでCQRS作るのが最強
867NAME IS NULL
2024/10/20(日) 06:02:18.08ID:??? 複合indexとカバリングindexの違いがわかりません…
複合indexの考え方の一つとして、キー以外でも必要なカラムは全部indexに含めてしまえ!がカバリングindexだと思ってたのですが、そう言い切ってる情報とかがあまり見当たらずもやもやします
付加列indexはわかるんですけど
複合indexの考え方の一つとして、キー以外でも必要なカラムは全部indexに含めてしまえ!がカバリングindexだと思ってたのですが、そう言い切ってる情報とかがあまり見当たらずもやもやします
付加列indexはわかるんですけど
868NAME IS NULL
2024/10/20(日) 12:27:30.00ID:??? 複合インデックスは複数カラムを含むインデックス
カバリングインデックスは特定のクエリに必要なカラムをすべて含むインデックスのこと
カバリングインデックスは基本的に複合インデックスだけど
複合インデックスがカバリングインデックスとなっているかどうかはクエリ次第
ノンクラスタードインデックスでインデックスだけじゃなくリーフノードへのアクセスが必要な場合でも
クエリに必要なカラムがすべて含まれてれば一般的にはカバリングインデックスと呼ばれる
カバリングインデックスは特定のクエリに必要なカラムをすべて含むインデックスのこと
カバリングインデックスは基本的に複合インデックスだけど
複合インデックスがカバリングインデックスとなっているかどうかはクエリ次第
ノンクラスタードインデックスでインデックスだけじゃなくリーフノードへのアクセスが必要な場合でも
クエリに必要なカラムがすべて含まれてれば一般的にはカバリングインデックスと呼ばれる
869NAME IS NULL
2024/10/21(月) 00:36:57.58ID:??? ですよね。ありがとうございます。
実際の機能と呼び方がごっちゃになってる情報が多い気がして。
実際の機能と呼び方がごっちゃになってる情報が多い気がして。
870NAME IS NULL
2024/10/27(日) 01:02:10.16ID:bj42m4ZV 英語がわからないという話か
871NAME IS NULL
2024/11/16(土) 06:38:11.75ID:Vf71iLar アクセスから移行してて、Leftよし、Rightよし、Midダメ、なんでじゃ~!ってなってる
サブストリング?
長げぇよ
サブストリング?
長げぇよ
872NAME IS NULL
2025/03/24(月) 12:06:44.34ID:??? sqlserverの資格、復活してほしい
ワイの業務目標に丁度ええんよ
ワイの業務目標に丁度ええんよ
873NAME IS NULL
2025/03/29(土) 19:51:31.74ID:T2omeBr6 シェアポにアドでオープンローセット出来ないの何でだぜ?
874NAME IS NULL
2025/04/10(木) 00:22:40.26ID:??? 実行計画固定してもプラン変わってることがあるんだけど俺だけ?
プランが悪化したわけじゃないけど怖いんだよね
プランが悪化したわけじゃないけど怖いんだよね
875NAME IS NULL
2025/04/10(木) 01:02:32.51ID:??? 実行計画を固定するとは?
レスを投稿する
ニュース
- 首相、就職氷河期世代の支援表明 週内に関係閣僚会議設置 ★3 [どどん★]
- 【自民】小泉氏 物価高対策 “現金給付や減税含む負担軽減策を” [ぐれ★]
- 【日本語】「親子丼」を「おやこどん」と読む人は20代と30代に多い…年代・性別・地域でも差が出る身近な食べ物の呼び方 ★3 [おっさん友の会★]
- 【テレビ】橋下徹氏 広末涼子釈放に「罪と罰のバランスがとれてない」「きちんと復帰していただきたい」 [少考さん★]
- 【野球】パ・リーグ L 1-0 H [4/19] 西武4連勝 隅田4安打完封勝ち、セデーニョ決勝タイムリー ホークス5連敗 [鉄チーズ烏★]
- 万博で行きたい「海外パビリオン」ランキング!3位フランスパビリオン、2位北欧館を抑えた1位は? [煮卵★]
- 🏡
- 【実況】博衣こよりのえちえちRUST🧪 2
- ▶ホロライブ
- 中国人「540万円のエルメス・バーキン、原価は20万円。それでも買いますか?」 [279147496]
- 【ヤバイ】日本男性、ガチで女性に興味が無くなる [298184846]
- 【TBS】報道特集、またまた特集を組んで立花孝志を叩いてしまう [882679842]