X



Microsoft SQL Server 総合スレ 12
0002NAME IS NULL
垢版 |
2018/08/19(日) 20:53:14.99ID:???
・過去スレ
Microsoft SQL Server 総合スレ 11 [無断転載禁止]©2ch.net
http://mevius.5ch.net/test/read.cgi/db/1464508208/

Microsoft SQL Server 総合スレ 10
http://echo.2ch.net/test/read.cgi/db/1385363382/

Microsoft SQL Server 総合スレ 10(レス数6で落ち)
http://toro.2ch.net/test/read.cgi/db/1371907307/

Microsoft SQL Server 総合スレ 9
http://toro.2ch.net/test/read.cgi/db/1310645522/

Microsoft SQL Server 総合スレ 8
http://hibari.2ch.net/test/read.cgi/db/1259409678/

Microsoft SQL Server 総合スレ 7
http://pc11.2ch.net/test/read.cgi/db/1231665917/

Microsoft SQL Server 総合スレ 6
http://pc11.2ch.net/test/read.cgi/db/1207377114/

Microsoft SQL Server 総合スレ 5
http://pc11.2ch.net/test/read.cgi/db/1175091880/

Microsoft SQL Server 総合スレ 4
http://pc11.2ch.net/test/read.cgi/db/1142315583/

Microsoft SQL Server 総合スレ3【MS SQL】
http://pc11.2ch.net/test/read.cgi/db/1123981539/

MS SQL Server 総合スレ2
http://pc11.2ch.net/test/read.cgi/db/1093012583/
0003NAME IS NULL
垢版 |
2018/08/19(日) 22:04:19.10ID:???
前スレの993だけど、ここにラージオブジェクト データ型はでてくる
https://msdn.microsoft.com/ja-jp/library/ms187752(v=sql.120).aspx

intやcharと同列で語るもんじゃないのはわかってるよ
なにを指摘したいのかわからん。前スレでも書いたがストアドの引数に使うことのデメリットは知らんぞ
普通のテーブルの列で使ったら1ページ8KBの話に関わるから必要な場合を除き乱用すべきじゃないのは言えるが
0004NAME IS NULL
垢版 |
2018/08/19(日) 22:38:57.15ID:dJDtG65d
>>3
お前さんが「LOB型」とかいう俺様用語を使うから
みんなOracleのCLOB型/BLOB型の話かと思って話が混乱した
(「LOB型」でググったらOracleばかりだ)

最初から「ラージオブジェクト データ型」と書いていたら
混乱は避けられたかもな
0005NAME IS NULL
垢版 |
2018/08/20(月) 05:38:33.37ID:???
>>3
それ型じゃないよ
ちょっと上に
> SQL Server では一部のデータ型は、格納の特性に基づいて次のグループに分けられます。
ってあるようにグループの名前みたいなもんだから
0006NAME IS NULL
垢版 |
2018/08/20(月) 07:30:35.21ID:???
>>4
ああ、最初にLOB型を言い出した前スレ989は俺じゃない(993や995が俺)んだけど、あれへの突っ込みって分かってて突っ込んでる的なやつだったのか
すまんすまん、LOBがなんのことか分からずに素でLOB型ってなにと聞いてるもんかとばかり思った
つかIDないと不便だ、スレ建て時のワッチョイの付け方はわかるんだけどな


>>5
知ってるということを書いたつもりだったんだけどな
そこのMSDNの内容見てそれが読み取れないほど日本語能力に不自由はしてないぞw
0007NAME IS NULL
垢版 |
2018/08/20(月) 08:39:42.53ID:???
何を言いたいのかよくわからんけどスレを跨いでまで引きずるほど悔しかったことはわかった
0008NAME IS NULL
垢版 |
2018/08/20(月) 11:35:27.51ID:???
俺から言いたいことは別にないよ
LOB型云々はいい出した989にいってくれ
0009NAME IS NULL
垢版 |
2018/08/24(金) 14:20:59.52ID:Hi7a43qz
やたら遅い処理があると思ってトレース見てたんだけど、リンクサーバー経由で前方一致like検索されると、データ全件取得するSQLが流れてるように見える。
なんだこりゃ?
バージョンは2016のsp1
0011NAME IS NULL
垢版 |
2018/08/24(金) 19:39:18.48ID:Hi7a43qz
なるほど。
0012NAME IS NULL
垢版 |
2018/08/28(火) 11:46:33.94ID:???
ユーザー定義テーブル関数の中で
SET @p = SELECT A FROM B
みたいな感じで、テーブルの中のデータを変数にぶち込みたいんですが、エラーになってしまいます。
どうやればいいでしょうか?
0013NAME IS NULL
垢版 |
2018/08/28(火) 11:55:55.74ID:???
()付けたらイケました
お騒がせしました
0014NAME IS NULL
垢版 |
2018/08/28(火) 12:55:41.53ID:???
select @P=A from B
でもよし
0015NAME IS NULL
垢版 |
2018/08/28(火) 20:15:05.55ID:???
selectが複数レコード返してもエラーにならない罠
0016NAME IS NULL
垢版 |
2018/08/29(水) 16:30:39.36ID:???
プーリング接続についてお尋ねします。
ファイアウォールで一定時間アクセスのないTCP接続を切るようにしている環境下で、プールされていたsqlserverのセッションが切られて、次回接続時にエラーになることってあるんですか?
つまり、自分のセッションがプールされているはずなので無条件に使いにいく動作をしているのであって、あれば使いなければ新たに作るわけではないという事でしょうか?
0017NAME IS NULL
垢版 |
2018/09/08(土) 14:32:55.96ID:???
SSMSのクエリウインドウはどんなに長い文字列貼り付けても折り返されないみたいですが
10億文字ぐらいの文字列でもやはり折り返されずに1行で表示されるのでしょうか?
0018NAME IS NULL
垢版 |
2018/09/08(土) 17:18:14.64ID:???
やってみりゃいーじゃん
0019NAME IS NULL
垢版 |
2018/09/11(火) 19:15:33.86ID:MFn43GEi
ROLLBACK TRANSACTION
をやっても元に戻せない場合ってありますか?
0020NAME IS NULL
垢版 |
2018/09/11(火) 19:43:57.80ID:???
シーケンスとか戻らんはず

SQL SERVERで暗黙的にコミットするのなんかあったっけ
0021NAME IS NULL
垢版 |
2018/09/11(火) 19:44:22.70ID:???
シーケンスとか戻らんはず

SQL SERVERで暗黙的にコミットするのなんかあったっけ
0022NAME IS NULL
垢版 |
2018/09/11(火) 19:45:29.69ID:???
あとスキーマいじる奴は戻らないはず
0023NAME IS NULL
垢版 |
2018/09/12(水) 15:31:41.68ID:StI1kJbU
>20>21>22>ありがとうございました。
0024NAME IS NULL
垢版 |
2018/09/12(水) 20:28:23.90ID:???
>>22
戻らないと言うかたいていのDBMSはDDLの前後でコミットするから
0025NAME IS NULL
垢版 |
2018/09/12(水) 22:51:22.95ID:+BSS23iW
DDL?ロールバックで戻るよ?DROP とかTRANCATEとか。
0026NAME IS NULL
垢版 |
2018/09/13(木) 00:09:10.41ID:B034+Mhh
当たり前だがBEGIN TRANしてないと戻らんぞ

Oracle長かったから
SQL ServerはBEGIN TRANしておけばDROP TABLEもTRUNCATEも取り戻せてびびった
0027NAME IS NULL
垢版 |
2018/09/17(月) 15:17:22.23ID:???
DB破損させる可能性はOracleの方が高い
バックアップ取得失敗してると死ぬ
0028NAME IS NULL
垢版 |
2018/10/06(土) 11:10:31.90ID:???
文字列の検索や突合がにがて
0030NAME IS NULL
垢版 |
2018/10/17(水) 11:08:01.26ID:???
Accessはインデックスが壊れてしまった場合、[データベースの最適化/修復]を行うと治りますが
SQL Serverにもそういうコマンドがありますか?
0031NAME IS NULL
垢版 |
2018/10/17(水) 14:00:05.95ID:UxDg84T+
>>30
一旦DROPして再作成すれば?
0033NAME IS NULL
垢版 |
2018/10/23(火) 08:59:01.17ID:???
indexの断片化とか気にしたことなかった
やばいかな?
0034NAME IS NULL
垢版 |
2018/10/23(火) 13:09:21.29ID:???
目に見えて速度変わるぞ断片化酷いと
0035NAME IS NULL
垢版 |
2018/10/23(火) 23:25:58.35ID:hntOGwbv
はいはい
0036NAME IS NULL
垢版 |
2018/11/01(木) 09:41:26.04ID:zQFReMU2
  ★★★貧富格差解消の為には、累進税の税率を国民投票で決めるべきである★★★●
  http://jbbs.livedoor.jp/stud●y/3729/storage/1069408696.ht●ml#47  

  この掲示板(万有サロン)に優秀な書き●込みをして、総額148万円の賞金をゲットしよう!(*^^)v
  http://jbbs.livedoor.jp/stud●y/3729/ →リンクが不良なら、検索窓に入れる!
0037NAME IS NULL
垢版 |
2018/11/03(土) 16:19:44.77ID:JBJEgXB4
断片化もそうだけど統計情報はちゃんとやらんと泣く
インデックスヒント入れてればまあごまかせるけど、フルスキャンしいのNestedLoopしいので時間かかるわCPUぶんまわるわとひどい目に遭う
0038NAME IS NULL
垢版 |
2018/11/12(月) 07:22:56.36ID:???
SSL通してインターネット経由で使うのはありですか?
0039NAME IS NULL
垢版 |
2018/11/12(月) 07:24:45.79ID:???
VPNではなく、SQL ServerのSSL使ってポート固定でFW に穴開けて、という想定です
0040NAME IS NULL
垢版 |
2018/11/12(月) 09:29:18.82ID:B9ac6m2S
SQL Slammerなんてのが流行ったことあったらから
FWで接続元絞れるんならまあ
0041NAME IS NULL
垢版 |
2018/11/12(月) 13:41:10.82ID:???
セキュリティがSQLServer自身の認証頼りになるからおススメしない
特定IPのみ接続可とかやるくらいなら素直にVPNにしとけ
0042NAME IS NULL
垢版 |
2018/11/12(月) 13:51:07.65ID:HPkNogVe
>>41
なぜかあなたのようなことを言ってしまう方が大勢いますが、明確な理由を説明できないでしょう?
0043NAME IS NULL
垢版 |
2018/11/12(月) 13:59:37.37ID:???
明確な理由も何もフロントの認証より危険なのはちょっと考えればわかるだろ
Webアプリの認証突破されてもまだDBまで到達されない方法はあるが
直でログインされたらもう終わりだ
0044NAME IS NULL
垢版 |
2018/11/12(月) 18:19:04.61ID:HPkNogVe
>>43
それ単にWebアプリケーションサーバが挟まる構成を取る意味がわかっていないひとの理屈だよ。
0045NAME IS NULL
垢版 |
2018/11/13(火) 13:03:06.08ID:???
>セキュリティがSQLServer自身の認証頼りになるからおススメしない
個人的にはこの意見に同意するんだが
実際それでどれほどの危険があるかだろ

ありなしの基準をはっきりさせんと何とも言えんわな

SQL Azureのセキュリティってこれしかないんじゃね
0046NAME IS NULL
垢版 |
2018/11/13(火) 16:11:45.56ID:???
Azureはサブネットで隔離すりゃ行けるんじゃないの知らんけど
0047NAME IS NULL
垢版 |
2018/11/13(火) 16:44:01.34ID:flNaI3Li
だいたい管理者ユーザーを使わせるわけでもないのに騒ぎすぎなんだよな。
0048NAME IS NULL
垢版 |
2018/11/13(火) 16:52:05.86ID:???
つってもぶっこ抜きだけなら管理者権限要らんべ
0049NAME IS NULL
垢版 |
2018/11/13(火) 21:31:12.65ID:???
AzureってNGFWみたいなのないの
0050NAME IS NULL
垢版 |
2018/11/16(金) 15:58:30.59ID:???
SQLの認証にセキュリティホールがあるかどうか、って話だよな
0051NAME IS NULL
垢版 |
2018/11/16(金) 16:21:06.93ID:???
そういや3回失敗したら垢ロックみたいなのはないのかね
あっても解除どうすんのとは思うが
0052NAME IS NULL
垢版 |
2018/11/16(金) 19:54:52.97ID:???
普通のSQL Serverなら、パスワードポリシーでロックアウト出来んじゃね
Azureはどうだかしらんが
0053NAME IS NULL
垢版 |
2018/11/17(土) 09:13:38.55ID:QE+FFbm+
結局のところ守りたいとこまでの壁を1つにしますか2つ以上にしますか、ってとこじゃないの?
詳しくないから見当違いかもだけど
0054NAME IS NULL
垢版 |
2018/11/17(土) 18:03:20.53ID:???
IPアドレス制限もできないのかよAzure
0055NAME IS NULL
垢版 |
2018/11/19(月) 12:58:59.92ID:???
全世界から凸られまくるの嫌だよなぁ
0056NAME IS NULL
垢版 |
2018/11/19(月) 13:18:58.81ID:???
AWSだとサブネットで制限できると思った
Azureは知らん
0057NAME IS NULL
垢版 |
2018/11/20(火) 02:05:44.88ID:0nVlCieC
AzureだとNSGだな
0058NAME IS NULL
垢版 |
2018/11/20(火) 10:00:35.83ID:WY+B3UFR
サーバー再起動したら、夜に2時間で終わってた処理が4時間ちょいかかるようになった
dm_exec_query_statsみてもこれだというのが特定できなかったんで、とりあえず統計情報更新とインデックス再構築かけたけどかわらん
パフォーマンスカウンタとってたんで比較すると
・CPU使用率は2時間ave80%だったのが4時間ave80%に
・ディスクIOはPhysical diskのキューも読み書きバイト数も1秒あたりの数値が半減、IO Latch waitも1秒あたりの待ち時間が半減
・メモリはmax、minで割り当てを固定(物理RAMの8割)、Buffer Managerのデータキャッシュをグラフでみると、2時間の挙動がまんま4時間に引き延ばしたかたちに変わった
・ロック待ちのカウンタみると1秒あたりの平均待ち時間が倍増←たぶんここの原因が問題

考えられること、他にみるべきところあったら教えてほしい
どう推論するか悩み中です
0060NAME IS NULL
垢版 |
2018/11/20(火) 14:50:56.69ID:???
リコンパイル指定掛けないと統計反映されないとかいう話なかったっけ
それでロック街増えるかはわからんが
0061NAME IS NULL
垢版 |
2018/11/20(火) 15:36:28.83ID:WY+B3UFR
>>60
アドホッククエリが多すぎるのかキャッシュが1日保たないのでそれはないです
と、書いて気付いたけどプランが変わったとかは考えにくいな
ほぼ毎日コンパイルされるのは前と変わらんし・・・まじでハード絡みなのか、異常があったら通知されるはずなんだけどな、、
0062NAME IS NULL
垢版 |
2018/11/20(火) 21:30:17.85ID:???
手動で止めてたサービスが再起動で動いてリソース食ってるとか

WindowsUpdateとかウィルス対策ソフトとかあやしい
0063NAME IS NULL
垢版 |
2018/11/21(水) 07:42:47.71ID:Vsi8ZXDt
>>58
OSを再起動したかの、SQL Serverを再起動したのか、どちらなのか?
0064NAME IS NULL
垢版 |
2018/11/21(水) 08:56:03.13ID:ypOdLX/M
>>62
サービスの確認はしてないですが、日中は全然負荷かかってないのでリソース喰ってるとかはたぶんないです
メモリはSQLServerに固定で80%分与えてるんで空き10数パーしかないですが(とはいえ10GB前後くらいは空きあり)

>>63
OS再起動です。再起動した部隊に聞いたらOSのパッチ当てたとのこと(OSはWin2012)
そっちの確認が先だった、なに当てたか確認します。
0065NAME IS NULL
垢版 |
2018/11/21(水) 13:35:51.35ID:3oLtE4+Y
年明けののIntelCPU脆弱性のやつだったらめちゃ遅くなるぞ
0066NAME IS NULL
垢版 |
2018/12/13(木) 23:09:41.29ID:ND4c+Iuc
SQL serverのライセンスに関する質問です。

データベースにSQL serverを使用している
業務アプリケーションソフトがあります。

本部のWindows10のパソコンにSQL server を
インストールし、スタンドアロンでアプリを
動かすのですが、このパソコンで作成した
データをエクスポートし、支社のパソコンに
インポートして使用します。

支社のパソコンにもSQL serverがインストール
されており、スタンドアロンでアプリを動かす
ことが出来ます。

この場合、各パソコンにインストールする
SQL serverは全て無償版で問題ないのでしょうか?
それとも、正規版が必要でしょうか?

正規版が必要な場合、CALは必要でしょうか?

各パソコンはネットワーク接続されていますが、
SQL serverの使用形態は各パソコン個別で、
他のパソコンのデータベースを参照するような
ことはありません。

よろしくお願い致します。
0067NAME IS NULL
垢版 |
2018/12/14(金) 02:45:52.18ID:xTQ3pUgW
>>66
最新版なら無償版で問題ない
ファイルサイズ10Gの制限だけ気をつけろ
0068NAME IS NULL
垢版 |
2018/12/14(金) 09:17:04.99ID:DAdCiiEs
>>67
ありがとうございました
0069NAME IS NULL
垢版 |
2018/12/14(金) 22:38:22.51ID:???
どうでもいいけど、無償版の対義語が正規版ってお前...
0070NAME IS NULL
垢版 |
2018/12/15(土) 10:29:08.93ID:dWy0aRvu
無償版てExpress Editionよね、それなら商用利用可能だしだいじょぶ
他のEditionならライセンス必要(Developerは商用利用不可)
0071NAME IS NULL
垢版 |
2018/12/15(土) 11:52:02.97ID:???
sever osじゃないosでの、他ノードからのアクセスもokだっけ?
0072NAME IS NULL
垢版 |
2018/12/15(土) 15:26:05.73ID:???
それはダメ
なおMySQLやPostgreSQLでもダメな模様
0073NAME IS NULL
垢版 |
2018/12/15(土) 16:10:25.58ID:???
それはどっちかっていうとOSのライセンスの問題だからな

この質問はスタンドアロンでやってるからセーフだろう
0074NAME IS NULL
垢版 |
2018/12/15(土) 17:39:55.29ID:???
ファイル共有なら20アクセスまでOKなのにな
0075NAME IS NULL
垢版 |
2018/12/15(土) 17:43:22.55ID:???
>>74
原則ダメじゃなかった?
プリンタとかの接続は許可されてるけど
0076NAME IS NULL
垢版 |
2018/12/15(土) 17:49:49.70ID:???
>>75
例外的にOK
IISもそう
データベースサーバーはダメ

IIS経由のデータベースとかは知らん
0077NAME IS NULL
垢版 |
2018/12/15(土) 17:51:57.77ID:???
考えてみたら、mdbファイルとかSQLiteとかをIIS経由で使うのはOKてことになるのかな
なんだかな
0078NAME IS NULL
垢版 |
2018/12/17(月) 22:34:55.51ID:Y2xIxlHH
でも小規模な会社でもなけりゃだいたいのところは買ってるんじゃないの
ファイルサーバにしたってCAL不要のWindowsStorageServerじゃスペックきついし
サーバ毎に必要なわけじゃないしユーザ分なりデバイス分なり買うもんじゃないのかな
0080NAME IS NULL
垢版 |
2018/12/18(火) 16:27:53.59ID:w5gk3kps
>>79
すまん
Windows Server CALの話に乗っかったつもりだったがクライアントOSの話だったね
0081NAME IS NULL
垢版 |
2018/12/19(水) 16:52:40.40ID:vkImC/04
【悔日企業ヘイトバンク】 父は犬、兄は黒人、白戸は白洲、私たちはあのCMを見るたびに侮辱されていた
http://rosie.5ch.net/test/read.cgi/liveplus/1545098183/l50

 I T 業 界 の B T S 問 題 浮 上 !
0082NAME IS NULL
垢版 |
2018/12/24(月) 00:32:48.07ID:???
DECLARE @TABLE TABLE = TABLE01;
SELECT * FROM @TABLE;

みたいなことは出来ないです?
同じ構成のテーブルを条件で切り替えて使えないかなと。

sp_executesql を使って SQL を文字列で合成する方法は知っていますが、正直めんどくさい。。
0084NAME IS NULL
垢版 |
2019/01/23(水) 09:05:14.47ID:uSf5hxNs
・SQL Server Express自体の接続数は無制限
・Windows 7、8、10 OSにインスコの場合、接続数は20まで
・Windows Server OSにインスコの場合、接続数はCALに依存
らしいぞ。

sql server express 接続数 windows10 ググれ
0085NAME IS NULL
垢版 |
2019/01/24(木) 21:21:27.41ID:sgV7WTTD
システムエグゼ
苦情申し立てダイレクト窓口

代表取締役社長 酒井 博文
h-sakai@system-exe.co.jp

専務取締役 大場 康次
yohba@system-exe.co.jp
専務取締役 後藤 清孝
kgotou@system-exe.co.jp

取締役 藤林 隆司
rfujiba@system-exe.co.jp
rfujiba2@system-exe.co.jp
取締役 荻野 弘昭
h-ogino@system-exe.co.jp
取締役 新船 幸広
arafune@system-exe.co.jp
arafune_PJ@system-exe.co.jp

監査役 白銀 亨
sirokane@system-exe.co.jp
0086NAME IS NULL
垢版 |
2019/01/28(月) 05:18:49.81ID:nK0TPIBj
LDHから新発売の「EXSUPPLI BLOCK」「EXSUPPLI PARTY」ゼビオ・ヴィクトリアの全店舗で11月29日(木)発売開始!
0087NAME IS NULL
垢版 |
2019/01/29(火) 11:22:21.77ID:???
select *
from テープ゛ル
where 日時>getdate()

みたいな感じに getdate() を使ったとき、
1行ごとに(その瞬間の)getdate() と日時が評価されるのか
SQLが走り始める瞬間のgetdate()を得て、その単一の値を使って評価されるのか、どっちでしょうか?
0088NAME IS NULL
垢版 |
2019/01/29(火) 14:05:13.47ID:???
>>87
後者は保証されてないはずだから前者じゃね
0089NAME IS NULL
垢版 |
2019/01/30(水) 00:04:10.20ID:VnIK1JFs
>>87
それは動作不明、意図が曖昧だからやらない。あらかじめ日時を取得してから条件値として用いるのが普通。
0090NAME IS NULL
垢版 |
2019/01/30(水) 00:09:14.90ID:VnIK1JFs
>>87
同じ結果が返り続ける関数を延々と使うのは開発者としてありえない。時間がすぎて変わることを想定しているのかどうかもSQLから読み取れない。
0091NAME IS NULL
垢版 |
2019/01/30(水) 13:45:22.21ID:???
何万行入ったテーブルに select *,getdate() from table やるとgetdate()の結果は全行同じだから後者と思われ
0092NAME IS NULL
垢版 |
2019/01/30(水) 13:57:21.34ID:???
>>91
10万行でやったら違うのかもw
0093NAME IS NULL
垢版 |
2019/01/30(水) 15:10:50.14ID:???
一応1300万行超のテーブルで確認したけどgetdate()の結果は全行同一でしたw
0094NAME IS NULL
垢版 |
2019/01/31(木) 01:57:55.73ID:???
getdateは非決定的関数のはずだが、実行計画次第で1回しか評価されてないのかも
0095NAME IS NULL
垢版 |
2019/01/31(木) 15:00:17.41ID:kxiPGIi/
ただの読み取り一貫性を保つためだと思うけどな。SELECTをし始めた時点と条件の日時が異なったら、結果のデータをみたら一貫性があるのかどうかわからなくなる。

こんなSQLを書くやつはプログラマではない。
0096NAME IS NULL
垢版 |
2019/02/02(土) 23:26:55.83ID:???
>>95
読み取り一貫性ってどういう意味で使ってるんだ?
その理屈だとたとえばRAND関数で評価してもすべて同じ数値で評価されるのか?
0097NAME IS NULL
垢版 |
2019/02/03(日) 07:01:35.79ID:VYE2BzFT
>>96
RAND関数そのものが常に同じ値を返す関数だとわかってる?
0098NAME IS NULL
垢版 |
2019/02/03(日) 17:39:28.72ID:???
RANDは評価するたびに違う値を返す
select RAND(),RAND() とかやればあきらか
GETDATEも同じ値を返すとは限らない非決定的関数

ただ手元で試した範囲では、>>91のようなSQLだとComputeScalarの実行回数が1回になる
つまり、関数が1回しか評価されていないから、同じ値なのは当然

これは保障された動作じゃないはずだから、それらの関数が同じ値を使う保証はないと思うが

ないとは言えないはずだが、実際に複数回評価される状況があるかどうかわからんな
パーティション分割されたテーブルとかでパラで評価されるような状況だと違う結果にならないか誰か実験してみれくれ
0099NAME IS NULL
垢版 |
2019/02/03(日) 19:21:46.44ID:7ctyNWmj
乱数表の値が順番に返るだけ。
0100NAME IS NULL
垢版 |
2019/02/03(日) 19:27:12.83ID:???
んな悪魔の証明やるより無難に1回変数に入れろよw
0101NAME IS NULL
垢版 |
2019/02/04(月) 15:15:47.94ID:eS3ydgbJ
>>100
ベテランプログラマのなかにもループの中で今日の年月日を取得し続けるやつがいるからなあ。

しかもそれ日次バッチ処理w
0102NAME IS NULL
垢版 |
2019/02/04(月) 18:59:45.28ID:???
そりゃベテランにもアホはいるだろ
たいてい淘汰されるんだけどお前ん所が生き残れる環境だっただけ
0103NAME IS NULL
垢版 |
2019/02/07(木) 22:07:20.34ID:m3XO0Yy+
カラムストアインデックスの検証したけど、単一の表にアクセスするだけのSQLだと劇的な効果出たけど、複数の表を結合した複雑なクエリには無力だった。これって常識?
0104NAME IS NULL
垢版 |
2019/02/07(木) 22:42:59.22ID:27zRlaWR
列から表に戻す操作が入るからまあ当たり前だな
0105NAME IS NULL
垢版 |
2019/02/08(金) 23:12:13.40ID:ozRfEPKl
>>103
全部ひとつのテーブルにまとめてしまえばよいw
0106NAME IS NULL
垢版 |
2019/02/09(土) 01:21:00.30ID:Wx+/pMSK
>>105
リレーショナルデータベース完全否定やん
0107NAME IS NULL
垢版 |
2019/02/09(土) 01:49:59.75ID:IrWvKIY/
>>106
皮肉だから
0108NAME IS NULL
垢版 |
2019/02/09(土) 07:59:02.61ID:???
リレーショナルデータベース
0109NAME IS NULL
垢版 |
2019/02/09(土) 13:53:06.86ID:zMONpaiF
実際縦集計速くするための仕組みだから
そういうテーブル設計が正解でしょ
必要な項目が全て存在する集計用データマート
0110NAME IS NULL
垢版 |
2019/02/10(日) 05:03:07.85ID:NAb/MghI
VPSにSQLServerをインストールして、外部接続可能な設定はしました。(パワーシェルでポート指定で疎通確認済み)
また、SQLServer認証も設定済みです。

@@servernameで取得した名前が db1
VPSのアドレスが1.1.1.1
開放したportが1433
だとして、自宅のPCのSSMSからVPS上のdb1に接続するには、サーバー名にはどのような記入をすれば良いのでしょうか?
0111NAME IS NULL
垢版 |
2019/02/10(日) 17:11:56.88ID:3nFQ3NJJ
>>110
デフォルトインスタンス(MSSQLSERVER)なら
VPSの外向けグローバルIPだけでOK
VPS側のファイヤーウォールで自宅側ルータのIPに絞っとかないと
アタック受けるから注意しろ
0112NAME IS NULL
垢版 |
2019/02/10(日) 17:48:12.24ID:???
>>111
無事、接続出来ました。セキュリティの件もアドバイスありがとうございます。
0113NAME IS NULL
垢版 |
2019/02/10(日) 18:34:29.82ID:???
>>103
ビュー作っても同じだよねきっと
0114NAME IS NULL
垢版 |
2019/02/11(月) 04:33:48.44ID:XERbxblT
>>113
ただのインデックス付きビューではたいして変わらないだろう。

SQL Serverはマテリアライズドビューが最新版でもないのかな?

そのときの最新の一貫性のとれたデータが必要でないなら、更新がかからない時間にでもコピーを作っておけばよい。

または目的のSQLを更新がかからない時間に実行して結果を取得しておく。
0115NAME IS NULL
垢版 |
2019/02/20(水) 11:53:44.29ID:???
いったん対象範囲を#テーブルに切り出して、それにインデックス張って・・・ってのは時々やる
0117NAME IS NULL
垢版 |
2019/03/15(金) 09:07:22.82ID:HyeSds7t
ツイッターやネットでテクノロジー犯罪と検索して、まじでやばいことを四代目澄田会の幹部がやってる(アメリカではMKウルトラ計画)
被害者に対して暴力団以外にタゲそらしをしてるがやってるのは暴力団で普段外に出ることが少ないため遊びで公共の電波と同じような電波を使って殺人をしてる
統失はほとんどが作られた病気で実際は電波によって音声送信や思考盗聴ができることが最近明らかになりつつある
警察や病院では病気としてマニュアル化されてしまっているのが現状で被害者は泣き寝入りしてる
被害者がリアルタイムで多い現状を知って、被害者間でしか本当の事だと認知できていない
実際にできると思われていない事だから、ただの幻聴ではない実際に頭の中で会話ができる
できないことだと思われているからこそ真面目に被害を訴えてる
海外でも周知されつつあることを知ってほしい。
このままだとどんどん被害が広がる一方


#テクノロジー犯罪
#四代目澄田会
#拡散希望

[参考]
https://black.ap.teacup.com/yamisiougn01/6.html
https://tekunoroji-hanzaihigai.jimdo.com
https://blogs.yahoo.co.jp/patentcom
https://twitter.com/celesty_cs 👀
Rock54: Caution(BBR-MD5:f70dfdc711a7c6ae6accccb939f27fbf)

https://twitter.com/5chan_nel (5ch newer account)
0118NAME IS NULL
垢版 |
2019/03/21(木) 10:20:07.65ID:???
not exists句とexcept演算子ってほぼ同じものでしょうか?
どちらかがあればもう片方は無くても特に困らないですかね?
0119NAME IS NULL
垢版 |
2019/03/21(木) 12:31:44.60ID:zHKJlC0U
>>118
求める結果が同じあればまだいいが、2つはまったくの別物。
0120NAME IS NULL
垢版 |
2019/03/29(金) 11:48:07.44ID:???
「ユーザー定義データ型」ってのがあると思うんですが、
そいつを含んだものを C# 側から ExecuteReader() とかで SELECT 取得したとき
各列のユーザー定義データ型を調べる手段ないでしょうか。

CREATE TYPE [dbo].[JAN13] FROM [char](13) NOT NULL

みたいにして、この列を含んだ行を SELECT したとき
char[13] じゃなくて [dbo].[JAN13] という定義名を得たいのです。
0121NAME IS NULL
垢版 |
2019/04/05(金) 09:42:17.48ID:???
同じバージョン間でバックアップ、復元を行っていますが
何故かバックアップを作成した時点ではなく少し前の状態で復元されてしまいます
フルバックアップしたものと聞いているので最新の状態で復元されるものと考えていますが
バックアップの取り方に問題があるのでしょうか?
ちなみに復元する側はDBを一旦削除してから復元しています
0122NAME IS NULL
垢版 |
2019/04/05(金) 17:53:14.62ID:???
自己解決しました

復元の際にタイムラインでバックアップポイントを最新に指定していなかったことが原因でした
デフォルトで最新になるものだと思い込んでいました
0123NAME IS NULL
垢版 |
2019/04/19(金) 14:36:17.03ID:???
SQL Server で SSD 使ってる方おられますか?
書き換え可能回数も随分と伸びたと聞くので、そろそろ大丈夫なのかなぁと。

HDD も併用するんなら、トランザクションだけ HDD に逃がしたほうがいいですかね?
0124NAME IS NULL
垢版 |
2019/04/19(金) 16:03:23.95ID:omXBRiX9
>>123
SSDの寿命って突然死するのか?
なんにしてもデータ保護考えたら単一ディスクはあり得んし
0125NAME IS NULL
垢版 |
2019/04/20(土) 00:55:57.88ID:5u+C7Ddr
>>123
なぜ目的を書かないのか?
0126NAME IS NULL
垢版 |
2019/04/20(土) 19:44:10.44ID:5u+C7Ddr
>>123 は単にSSDを使ってもよいのかどうかという質問なんだろうね。スマートフォンのストレージがHDDでないことに疑問を持たないのかね?
0127NAME IS NULL
垢版 |
2019/04/20(土) 22:30:41.11ID:???
スマートフォンはSSDだったのか?
てっきりメモリかと思っていた
0128NAME IS NULL
垢版 |
2019/04/20(土) 22:32:59.90ID:5u+C7Ddr
>>127
あんたIT技術者か?
0129NAME IS NULL
垢版 |
2019/04/21(日) 15:50:33.08ID:???
コンシューマー向けのTLC/QLCを使うなんてことがなければいいんじゃないかとは思うが
3DXpoint高いお…
0130123
垢版 |
2019/04/23(火) 16:31:41.28ID:???
ここの住人では実績なさそうですね
0131123
垢版 |
2019/04/23(火) 16:32:56.95ID:???
>>125
目的は高速化しかないと思いますが・・・
投資の優先順位は
メモリー>ストレージ>CPU だと思ってます。

メモリーマンタンなので、次はストレージをと
0132NAME IS NULL
垢版 |
2019/04/23(火) 16:52:14.50ID:zLlBW4oP
やはり素人か。
0133NAME IS NULL
垢版 |
2019/04/23(火) 17:01:51.96ID:???
データベース丸ごとキャッシュに乗るべきと思って
96GB まで積み増したのですが、最近はストレージへのアクセスが増えてしまったので。
0134NAME IS NULL
垢版 |
2019/04/23(火) 18:31:02.93ID:zLlBW4oP
>>133
メモリ上のバッファキャッシュが多ければ、ストレージのIOデータ量も増える。

データ量が大きくなって遅くなっていることをハードウェアでどうにかしようとするのは根本的な解決になっていない。
0135NAME IS NULL
垢版 |
2019/04/23(火) 22:12:52.29ID:???
データ量が増えてメモリを食うようになった⇒ストレージへの I/O が増えた状態への有効な対処法ってどんなのがあるんだろう。
素人な自分としてはこれは本気で知りたい。


まえに環境の検討をやってたときに、 tempdb を SSD 上に置いたことはあった。
結構かなり速かったよ。本番環境でやっていいかどうかは知らないけど。
0136NAME IS NULL
垢版 |
2019/04/24(水) 12:34:42.09ID:???
>>135
まずは無駄な検索とか更新をしてないかとか
インデックスがちゃんと効いてるかの確認
あとは物理的に複数のデバイスに分割してI/O処理を分散する
そのとき各デバイスで片寄らないように配置するキーを上手く選ぶとか
0137NAME IS NULL
垢版 |
2019/04/24(水) 18:00:35.24ID:w0YZ3suz
データが増え続けても性能問題は起こらないという発想がおかしい。

性能問題が発生してSSDにするというのは、その場しのぎでしかない。
0138NAME IS NULL
垢版 |
2019/04/25(木) 22:05:51.41ID:???
>>136
ああなるほど。
ひとつのストレージの上でなんとかすることしか考えてなかったよ。
参考にします。ありがとう。
0139NAME IS NULL
垢版 |
2019/04/26(金) 04:54:39.91ID:l8u5/4vh
DB初心者なんですが、質問させてください。

最初のSQL Serverをインストールし、DB・テーブルの作成、レコードの挿入・更新・削除までやってみました。
次にプログラムからSQL Sv.を操作してみようと思い、C#からレコードやテーブルの操作をしてみました。
ここで気づいたのですが、実運用においてプログラムからDBを操作するケースって、基本的にはレコードの操作くらいでしょうか?

というのも、DB・テーブルの作成はシステムを構築する際には技術者がSSMSなどで行いうと思いますが、

プログラムがやることってシステムが稼働する段階になって、
ユーザーの操作に従ってレコードの挿入・更新・削除くらいかなと思いましたので。

DB技術者の先輩方、よろしくお願いいたします m(__)m
0140NAME IS NULL
垢版 |
2019/04/26(金) 06:47:20.35ID:???
>>139
一時テーブルを作るとか普通にあるけど?
てか、一番多いのは検索だと思うぞ
0141NAME IS NULL
垢版 |
2019/04/26(金) 20:31:59.53ID:l8u5/4vh
>>140
一時的テーブルってどんなケースでしょうか?

自分がイメージしてるのは↓みたいな感じですが、実際こんな感じでしょうか?

例えば商品を扱う時に
◆登録時
 商品(+カテゴリ)のレコードを追加、
 もしくは既存レコードの数量を更新
◆検索
 SELECT 〜 WHERE で商品検索。
 表示されたものを並べ替える時に、上記SELECT分に ORDER BY 〜 を追加。
0142NAME IS NULL
垢版 |
2019/05/01(水) 18:56:39.99ID:769RFL3v
SQL serverをデータベースに使用している業務用アプリを
Windows7+SQL server 2008R2EXPRESSの環境で動かして
いましたが、今回、Windows10+SQL server 2016EXPRESSに
移行したところ、途端にアプリの動きが重くなりました。

いろいろ調べた結果、移行時に、SQL server 2016に2008R2の
データベース完全バックアップを復元した際に互換性レベルを
「2016」にしたことが原因で、これを「2008」に下げるとサクサク
動くようになりました。

そこで質問ですが、SQL server 2016EXPRESSに復元したDBの
互換性レベルを「2008」で動かしても特にリスクはないでしょうか?

そもそも互換性レベルは「2016」で動かす方が望ましいのでしょうか?

よろしくお願い致します
0143NAME IS NULL
垢版 |
2019/05/01(水) 19:41:43.69ID:TltKGa3C
>>142
調べたから見たはずだけど、2016を2008互換で動かしていたら、ただの問題の先送り。
0144NAME IS NULL
垢版 |
2019/05/01(水) 20:29:24.14ID:???
>>142
暫定的にはいいけど、そのままだと次のバージョンアップの時に苦労するぞ
0145NAME IS NULL
垢版 |
2019/05/01(水) 22:13:30.92ID:iAIhZMl0
>>143
>>144
ありがとうございます
さらにテストをしたら、互換性レベル2014までは正常に動きますが、
2016になった途端、動きが極端に重くなることが分かりました

問題の先送りにしかならないにしても、暫定措置としては、
なるべく互換性レベルは高い方がいいでしょうか?

それとも、2016でなければ、2008でも2014でもさほど変わりませんか?
0146NAME IS NULL
垢版 |
2019/05/01(水) 23:57:26.78ID:Z1eUgulk
>>145
本当に互換性に問題のある使い方をしているのかどうかを調べるのが基本だよ。
0147NAME IS NULL
垢版 |
2019/05/02(木) 04:23:23.11ID:rL4gUhau
>>145
便所の落書きに判断を求めるなよ
正攻法なら最新に合わせて改修するだけだし
コストがかけられないなら確実に動作する状態でリプレースを待つだけだろ
0148NAME IS NULL
垢版 |
2019/05/02(木) 20:31:31.39ID:???
そもそもそれホントに互換性レベルの問題なのか?
2016出てだいぶ立つから、メジャーな問題ならもっと話題になってると思うが
0149NAME IS NULL
垢版 |
2019/05/02(木) 22:09:13.65ID:???
実行プランに影響するから>>142の環境だけで発生するとかもあり得る
0150NAME IS NULL
垢版 |
2019/05/03(金) 07:56:37.64ID:FseZSqD/
その後、同じ業務用アプリケーションで、以下のような環境移行を行い、
サーバ:Windows server 2008R2→Windows server 2016
SQL server:SQL server 2008R2→SQL server 2017
クライアント:Windows7→Windows10
互換性レベルをSQL server 2017にしたところ、やはり動きが
極端に重く(遅く)なり、互換性レベルをSQL server 2014に
下げると正常なスピードになりました

データベースがSQL server 2014までは互換性レベルなんて
意識したことなかったけど、SQL server 2016以降において
急に引っかかるようになった感じですね
0151NAME IS NULL
垢版 |
2019/05/03(金) 08:53:54.23ID:lS9VfNzG
>>150
だから製品の何が変わったのかマイクロソフトの情報を見ているのか?
0152NAME IS NULL
垢版 |
2019/05/03(金) 09:11:40.19ID:???
切り分けもしないような奴はスルーしてくださいな
0153NAME IS NULL
垢版 |
2019/05/03(金) 10:15:30.90ID:FseZSqD/
切り分け???
0154NAME IS NULL
垢版 |
2019/05/03(金) 12:04:10.91ID:???
どこのSQLで遅くなってるかとかの確認もしてないんだろ?
0155NAME IS NULL
垢版 |
2019/05/03(金) 23:55:03.93ID:???
例えばどんなSQLがどのくらい遅くなったのか、そのときの実行計画は同じなのかぐらいは調べてさらせよ
0156NAME IS NULL
垢版 |
2019/05/04(土) 12:14:50.42ID:???
GW中に仕事のことは考えたくないなw
0157NAME IS NULL
垢版 |
2019/05/04(土) 16:41:00.90ID:???
確か遅いSQL一発で出せるやり方あったよな
事前にフラグ立てなきゃいけなかった気もするが
0158NAME IS NULL
垢版 |
2019/05/05(日) 01:15:20.04ID:EcFZ4uZL
言っておくが彼はSQLが遅くなったとは一度も書いていない。
0159NAME IS NULL
垢版 |
2019/05/05(日) 07:50:24.90ID:???
そもそも何も書いてないから切り分けろって言われてるんだが…
0160NAME IS NULL
垢版 |
2019/05/05(日) 13:27:25.13ID:???
DBでSQL実行が遅くなる以外に何が遅くなるって言うんだ…?
0161NAME IS NULL
垢版 |
2019/05/05(日) 13:49:54.90ID:???
バックアップとか?
0162NAME IS NULL
垢版 |
2019/05/05(日) 14:09:42.14ID:???
>>160
可能性は低いだろうけど接続に時間がかかるようになったとかメモリー足りなくてスラッシング起きてるとか
0163NAME IS NULL
垢版 |
2019/05/05(日) 16:11:54.87ID:???
まあまずはなにがどう遅いか調べんと話にならん

あとはリストアしてからなにしたかだな
ほんとに互換性レベルだけで遅くなるとは思いにくい
0164NAME IS NULL
垢版 |
2019/05/05(日) 22:59:56.81ID:EcFZ4uZL
>>160
データベースそのものも考えてくれよw
0165NAME IS NULL
垢版 |
2019/05/06(月) 14:04:27.64ID:???
>>164
DBの機能が遅い以外何があるってんだよハゲ
0166NAME IS NULL
垢版 |
2019/05/06(月) 22:56:09.24ID:stsMt92h
>>165
データベースは外部からSQLが発行されなくても、ただ動いているだけでもメモリ上のデータを定期的にファイルに書き込む。余裕があればファイルからデータを読み込む。

いっぱいあるがとにかくデータを失わない、データの整合性がとれなくならないようにする処理等があるんだよ。
0167NAME IS NULL
垢版 |
2019/05/07(火) 18:35:52.13ID:???
>>166
で?
それはDBの機能じゃねえのか?
大体そんなバックグラウンド処理なんて四六時中走ってねーよこじつけんな
0168NAME IS NULL
垢版 |
2019/05/07(火) 19:43:05.91ID:ALcLaDvG
>>167
走ってますよ。
0169NAME IS NULL
垢版 |
2019/05/08(水) 16:53:24.61ID:VbqXritb
Express版でオンラインバックアップ取る技ってないの?
0170NAME IS NULL
垢版 |
2019/05/08(水) 20:01:01.21ID:8qp+Z1yx
>>169
普通にバックアップとるだけだろ
0171DBかじり始めたオープン系エンジニア
垢版 |
2019/05/09(木) 06:15:57.71ID:Rd8XFIHD
DBエンジニアの業務ってどんな感じですか?
↓みたいなイメージで合ってます?w

設計時:忙しい。責任重大。
開発中:DBのインストールやテーブルの作成が済めば、トラブルなければ特にやることない。
※開発中はC系のエンジニアなどがPG内にSQL文を書いてあれこれやるのをイメージしてます。
運用時:トラブルなければ特にやることない。

よろしくお願いいたします。
0172NAME IS NULL
垢版 |
2019/05/09(木) 14:48:34.81ID:???
会社によってやり方が違うよ
0173NAME IS NULL
垢版 |
2019/05/10(金) 23:34:22.83ID:kyiAxM67
>>171
インフラ寄りなのか、アプリ寄りなのかでまったく違う。

ただ本来はどちらにも深く関わるのがまっとうなデータベースエンジニア。
0174NAME IS NULL
垢版 |
2019/05/11(土) 00:51:45.46ID:???
ソフトの応答時間って結構重要なのに後回しにされがちなのね。
最後の最後で死にそうな顔して調整しまくってる DB エンジニアさんて結構ありがちと言うか。。。
0175NAME IS NULL
垢版 |
2019/05/11(土) 03:26:52.97ID:EnWh/KFP
>>173
そういう区別もあるんすね。ありがとうございます。
ちと調べてみまふ。
0176NAME IS NULL
垢版 |
2019/05/12(日) 01:00:26.24ID:DtTEN3xu
>>174
開発の上流から下流までチェックし続けないと、クソみたいなDB設計とクソSQLのてんこ盛りで、データ量が多いシステムだと死ぬ。
0177NAME IS NULL
垢版 |
2019/06/06(木) 13:16:03.50ID:XVcXsSEI
メンテナンスプランによる、インデックス再構築、統計の更新、完全バックアップあたりの
処理は毎日やってますか?
毎日やるのはバックアップだけですか?
0178NAME IS NULL
垢版 |
2019/06/15(土) 11:22:01.07ID:cf7Yx71E
SSIS使いたいんだけど、SSDTをインストールしないといけない。
これは手持ちのクライアントPCにできないのかな?SSMSみたいに。

インストーラ立ち上げると「SQLServer データベース」が必須になっているよ。
0179NAME IS NULL
垢版 |
2019/06/15(土) 11:25:06.40ID:???
>>177
完全バックアップ以外は週一でいいんじゃないの?
もちろん、DBのサイズや用途にもよるけど。たしか、ウィザードはそんな(週一)がデフォルトだったと思う。

うちは完全バックアップを毎日とっている。
0180NAME IS NULL
垢版 |
2019/06/15(土) 11:28:47.86ID:BUxyU7ss
>>178
SSISはSQL Serverが必要というよりは、Visual Studioが必要なんだよ。

Visual Studioは入ってるのか?
0181NAME IS NULL
垢版 |
2019/06/15(土) 11:43:43.61ID:BUxyU7ss
>>178
SQL Serverは伝統的にサーバーソフトウェア、クライアントソフトウェアを作り分けていない。
0182NAME IS NULL
垢版 |
2019/06/15(土) 13:19:11.29ID:???
SSMS、SSDT、SSIS、ISIS
0183NAME IS NULL
垢版 |
2019/06/15(土) 18:20:20.58ID:cf7Yx71E
>>180-181
サーバのリソース食うのは避けたいので、クライアントでパッケージ作成したかったの。

慌ててVS2019のCommunityインストールしてSSDT入れたら
要求されたメタファイル操作はサポートされていません。 (0x800707D3)
(涙)
0185NAME IS NULL
垢版 |
2019/07/30(火) 11:24:47.61ID:???
最近VSCodeでSQL書いてるけどこれすげえいいな
補完もするし複数列にCASTだのISNULLだのつけるとき
マルチカーソルが便利すぎる

SQL発行の結果が帰ってくるのはManagement Studio
のが速いけどVSCodeのが起動速いし
実行計画見るときぐらいしかSSMS使わんくなった
0187NAME IS NULL
垢版 |
2019/09/20(金) 23:47:02.97ID:isalmAv1
>>150
リプレース時の互換性レベルの変更は危険。
チューニング済みの SQLほど実行計画ボロボロになる。
0188NAME IS NULL
垢版 |
2019/09/22(日) 17:07:49.52ID:EkE2g3Xn
ロール作成しようとしてるんだけど、Viewに対しては全DDL,DMLを許可し、Tableに対してはそれらを許可しない、っていう内容。
公式サイトをずっと見てるんだけど、オブジェクト単位で設定しないとダメなんだろうか。
0189NAME IS NULL
垢版 |
2019/11/15(金) 14:20:01.76ID:LnPkd02i
なんかのソフトにバンドルされてるSQL serverてそれ単体でも使うことができる。
例というとPCに弥生会計をインスコしたらSQLserver2014SP2 ExpressEditionてのがインストールされたんだが。
同じPCにwordpress入れようと思うんだが、このSQLserver兼用できるのかな?
0190NAME IS NULL
垢版 |
2019/11/15(金) 16:32:36.49ID:???
もうSQL鯖入ってるならやってみたらイイじゃん
0191NAME IS NULL
垢版 |
2019/11/16(土) 13:40:22.31ID:???
Express版なら無償だよ
ただし制限あり
0192191
垢版 |
2019/11/16(土) 13:44:59.14ID:???
書き忘れた
なので別用途に使っても問題なし
0193NAME IS NULL
垢版 |
2019/11/16(土) 14:13:35.75ID:OTSEDY2q
ログインの認証周りが大丈夫ならいけるのでは
というかExpressインストールされるのはいいが、saにパスワード設定されていたら泣く
0194NAME IS NULL
垢版 |
2019/11/17(日) 19:22:51.47ID:???
普通はWindows認証でadministratorで入れる
0195NAME IS NULL
垢版 |
2019/11/21(木) 02:11:24.95ID:cBCqHARp
189ですが、1台のPCにSQL serverと弥生会計いれて、もう一台のPCに弥生会計を入れて、
2個の弥生会計からSQL serverをつつく作りになってるんだけど、
こういう場合て、ネットワークて同一セグメントで使うもの?
弥生会計の取説だと「同一セグメントで」て書いてあるんだが、ためにしもう一台をVPN接続越しで接続してみたり
SQL serverをAWSに置いてみたら激重になったんだが、DBてそういう使い方しないもの?
0196NAME IS NULL
垢版 |
2019/11/21(木) 10:52:04.04ID:QmN8bdJf
>>195
今時の回線事情考えたら
DBの問題じゃなくアプリの設計の問題の可能性のが高い
0197NAME IS NULL
垢版 |
2019/11/21(木) 13:01:05.46ID:???
>>195
実際にできるできないはあなたの会社のセキュリティポリシーによるけど、
vpnで直接連携なんて怖くてやらない

同一セグメントでないとダメかといえばそんな事はない
しかし、FW、L3SWの設定はもちろん必須
0198NAME IS NULL
垢版 |
2019/11/21(木) 13:06:29.08ID:???
弥生はどうか知らないが、SQL ServerをVPNの向こうに置いてもそれほど遅くならないよ。
0199NAME IS NULL
垢版 |
2019/11/21(木) 13:07:35.95ID:???
AWSってSQLサーバのサービスをやってくれるの?
0200NAME IS NULL
垢版 |
2019/11/21(木) 16:01:11.96ID:cBCqHARp
>>196
アプリ設計の問題みたい。
https://yayoi-k.jp/yayoi-network/vpn/
DBを1拠点だけで突く設計みたい。複数拠点の場合はリモートデスクトップだ。
0201NAME IS NULL
垢版 |
2019/11/22(金) 18:45:25.30ID:/DwkIedt
5席規模のデータ入力で
SQL Server Express使おうとしたら
「無償版とか信用ならん!!!」
って言って上司がライセンス購入しようとして聞かない
その割にベンダーからの見積もり30万って見て
高すぎ!安くして!と言ってくる

なんとかなりませんか、、、
0202NAME IS NULL
垢版 |
2019/11/22(金) 19:52:08.93ID:???
>>201
「お前はバカか」と言ってやれ。
無償版が信用ならんのなら、オープンソースは全部だめ。
アンドロイド携帯もルータもNASもオープンソースだらけだぞってね。
0203NAME IS NULL
垢版 |
2019/11/22(金) 19:54:18.94ID:???
>>201
言ってくるってお前の立場は何なんだよ
値段の文句は見積もり出したベンダーに言えよ
0204NAME IS NULL
垢版 |
2019/11/22(金) 20:00:28.57ID:???
>>203
おそらくベンダーのソフトの見積もりは妥当なもんだと思うよ。
作業料金とかの方でぼった食ってる場合が多い。
0206NAME IS NULL
垢版 |
2019/11/22(金) 22:02:46.18ID:???
>>205
20万でも高いとか言われそうな案件の悪寒
0207NAME IS NULL
垢版 |
2019/11/23(土) 12:42:35.28ID:bO9R3pau
>>201
だが皆レスありがとう。
こんだけ来るとは思ってなかったw

俺は案件に絡んでなくて
アドバイスを求められてるだけなんだ。
だからExpressを勧めた。
Expressを信頼できない無償版と言ったのは上司。
見積もりを取ったのは別の社員。

確かに作業費等々でボッタ食られてることも
伝えたんだけど金のこと言うなら
Express使えよって思ってさ…
0208NAME IS NULL
垢版 |
2019/11/23(土) 14:08:44.73ID:???
経験浅いので教えて欲しいのですが
ストアドの中でテーブルAにデータをINSERTしているのですが
エラーが起きるとロールバックされて消えてしまいます。

これを消える前に取得する方法はあるでしょうか?

例えばロールバックされても消えない特殊なテーブルB(構造はAと同じ)を作っておいて
このテーブルBにもINSERTしておくとかは出来るのでしょうか?
そもそもそんなテーブルは作れないのかもしれませんが・・・
0209NAME IS NULL
垢版 |
2019/11/23(土) 14:45:46.16ID:???
>>208
コミットすりゃいいんじゃね?
てか、何もしてなきゃinsert自体が成功してたらその後のエラーでロールバックなんてしないはずだが…
0210NAME IS NULL
垢版 |
2019/11/23(土) 14:56:51.94ID:xEYUxjzb
>>208
問題なければINSERT直後にCOMMITしてしまうか
そもそもトランザクション処理をしなければ良い
0211NAME IS NULL
垢版 |
2019/11/23(土) 15:21:08.34ID:???
ストアド内ならエラーキャッチしてうにゃうにゃできるかもしれんが
まあトランザクションの設計が悪いな
0212208
垢版 |
2019/11/23(土) 17:18:20.37ID:???
システム自体が巨大でストアドを入れ子で何階層も呼び出していて、割りと下位のストアドでエラーが起こっているのです。
業務データが壊れる可能性があるので中途半端な状態でコミットはできないです。
そもそも何階層目でトランザクションが開始されてるのかもわかりません・・・
0213NAME IS NULL
垢版 |
2019/11/23(土) 23:52:12.62ID:???
有料版買う必要ある?無料版でもいける?
0214NAME IS NULL
垢版 |
2019/11/24(日) 05:28:21.26ID:???
>>207
Expressはdbのサイズが10GBまでという制限もあるから、そもそも収まるのかという話もあるけどね
アプリケーションのデータ格納用としては結構使われてるし、実績的には申し分ないよ

だけどサポートや問い合わせは受けられないので会社のルール的に保守契約できないものは採用できないって事はあるよね
0215NAME IS NULL
垢版 |
2019/11/24(日) 07:20:12.68ID:???
>>213
要件次第
Expressの1番の制限は>>214の言うDBサイズ
まあ10GBってそこそこのサイズだしインスタンスは複数作れるので工夫次第である程度回避できたりするけど
あとは使用するメモリーが制限されてるとかフェイルオーバーができないとかあるから自分で https://docs.microsoft.com/ja-jp/sql/sql-server/editions-and-components-of-sql-server-2017?view=sql-server-ver15 とかを見て判断すればいい
0216NAME IS NULL
垢版 |
2019/11/24(日) 13:09:57.98ID:???
そもそもそのテーブルの値をとってどうしたいんだ?

まあざっと思いつくと
エラーの出るところだけ子トランザクションにする
エラーキャッチしてなんとかする
@変数にとっておく
事前にコミットする

そんなとこか
思いつきだから実際どうかはそれぞれ試して決めろ

ストアド内から別トランザクションはちょっと難しいし、出来てもやるべきではない
ロールバックされないテーブルとかもない(シーケンスとかはロールバックされないけどな)
0217NAME IS NULL
垢版 |
2019/11/27(水) 19:51:15.78ID:???
いつのまにか、SSMSでストアドのデバッグできなくなってるんだが
みんなどうしてるんだ?
0219NAME IS NULL
垢版 |
2019/11/28(木) 12:53:59.04ID:DUf6UIqk
Visual Studio必須になったような
0220NAME IS NULL
垢版 |
2019/11/29(金) 01:29:28.21ID:???
やっぱりVSか
それはそれで問題あるんだよなぁ
0221NAME IS NULL
垢版 |
2019/12/16(月) 09:31:32.90ID:???
Standard版だと40万円以上するのがExpress版だと無料って
一体どうなってんの、この会社?
0222NAME IS NULL
垢版 |
2019/12/16(月) 11:42:07.37ID:OtwdW/Bu
>>221
素人?
0224NAME IS NULL
垢版 |
2019/12/19(木) 07:33:15.87ID:WCIv84d0
SQLOLEDB、MSDASQL、SQLNCLI11
接続プロバイダどれ使ってる
0226NAME IS NULL
垢版 |
2019/12/22(日) 20:16:53.58ID:???
SQLOLEDB

どこがどう変わるかよくわからん
プロパイダごとの機能差とかだれかまとめてくれ
0228NAME IS NULL
垢版 |
2019/12/23(月) 17:17:54.07ID:v+gE9Z/w
227から、MSOLEDBSQLが推奨っぽいね
0229NAME IS NULL
垢版 |
2019/12/23(月) 20:22:46.02ID:???
OLEDB非推奨とはなんだったのか
0230NAME IS NULL
垢版 |
2019/12/28(土) 09:21:32.13ID:???
Windows10でSQLServer2017ExpressのDATAフォルダがエクスプローラで開けなくなりました。
コマンドプロンプト等でどうかは確認していません。
UACで警告されるのは知ってたんですが、インストール直後のデフォルトの状態で、フォルダが開けませんでした。
同型機を2台設定していて、1台は開くことができました。
C:\Windows\Tempも同様でした。
0231NAME IS NULL
垢版 |
2019/12/28(土) 09:29:38.94ID:???
途中で送信してしまいました。
会社のPCで別の担当がセキュリティソフトまでは導入済で、SQLServer2017Expressをインストールして動作確認しようとして気づきました。
管理権限のあるユーザでセットアップしていたつもりですが、VirtualStoreへのセットアップになっていたとかあるかもしれません。
本日から休暇になってしまって詳細に確認できていません。
直接SQLServerとは関係ないことかもしれませんが、どなたか解決策に思い当たる方いらしたらご助言ください。
0233NAME IS NULL
垢版 |
2019/12/29(日) 01:38:58.61ID:???
開こうとしたフォルダのアクセス権確認する以外に何があるというのか
0234NAME IS NULL
垢版 |
2019/12/29(日) 10:52:52.68ID:???
>>233
>>230-231の質問者です。
質問を短く言えば「アクセス権確認する以外に何があるか」という質問です。
アクセス権はAdministratorsにフルコントロールがついていて、Administratorsに所属するユーザだったと思います。
セキュリティ以外にも、ファイルやフォルダの読み書きには、排他制御がかかることがあるから、何らかの処理中だと可能性があるとも考えていますが、再起動しても変わらなかったので、処理中の可能性は低いと思います。
ActiveDirectory環境なので、その不具合も考えられるかもしれません。

>>232
同じときに同じ仕様で購入したPCに設定していてということです。
一方は問題なく操作できて、もう一方がダメでした。
開梱時からの操作が同じかというと、異なっている作業が行われた可能性はあります。
0235NAME IS NULL
垢版 |
2019/12/29(日) 12:55:51.30ID:???
そもそも2017EXPRESSのデフォルトのデータディレクトリってどこだ?
まあ、そこにインストールしたかどうかも怪しいけどな
0236NAME IS NULL
垢版 |
2019/12/29(日) 13:24:54.87ID:KfWSGuC1
>>234
ADのアカウントに対してローカルの管理者アカウントが存在しているのか?
0237NAME IS NULL
垢版 |
2019/12/29(日) 17:02:10.83ID:???
>>236
そこは問題ないはず
2つのPCともにADの機能で該当ユーザに管理者権限を付与している
管理者権限じゃないとリモートデスクトップが使えない設定にしていて、リモートデスクトップも使えているから管理者権限はあることになる
個々のPCでセキュリティ設定すると漏れがあるからADのグループポリシーで設定するのを基本にしてます。
0238NAME IS NULL
垢版 |
2019/12/29(日) 17:36:17.06ID:???
フォルダの所有者をAdministratorsに変えれ
0239NAME IS NULL
垢版 |
2019/12/29(日) 17:56:22.27ID:???
誰がSQL Serverを立ち上げるてるだ?
0240NAME IS NULL
垢版 |
2019/12/29(日) 19:27:13.79ID:???
>>239
デフォルトだとLOCALSERVICEとかですかね
>>238
インストールした自分のアカウントがAdministratorsに所属するんで、Administratorsではないかと思いますが、確認してみます。

仕事納めの日に慌ててセットアップしていたので確認が不十分です。
年を開けたら振替出勤なんで、確認して報告させていただきます。
0241NAME IS NULL
垢版 |
2019/12/29(日) 20:10:09.90ID:???
LOCALSERVICEのアクセス権はどうなってると?
0242NAME IS NULL
垢版 |
2019/12/30(月) 21:29:16.28ID:???
>>230
うろ覚えだけど、UAC効いていてAdministrator以外でアクセスしている(Administratorsのメンバーのユーザーではない)場合はUACを切るまたはAdministratorでアクセスしてみるとひらけるかも?
Windows10だとデフォルトではAdministratorが無効化されているので有効化してね(作業終わったら無用なトラブル避けるためもとに戻す)
開けたら管理用にグループ作ってフォルダにアクセス権に追加しておく
そして管理させたいユーザーをグループのメンバーにするとUAC有効にしてもアクセスできるようになる
サーバーOSでやっていた内容だけどクライアントOSでも同様のはず
間違っていたらゴメンネ
0243NAME IS NULL
垢版 |
2019/12/31(火) 09:27:35.55ID:???
>>242
UACは無効にしていたつもりですが確認してみます。
SQLSeverとCAMをインストールしていて、CAMは無効にしてと指示がありましたが、もしかするとSQLSeverインストール時は、UACが既定のままだったかもしれません。
Administratorでは試していないので確認してみます
0244NAME IS NULL
垢版 |
2019/12/31(火) 20:53:18.59ID:???
試してないけど思いますかもしれません
話にならんな

そもそも特定のディレクトリが開けないってはなしで、本質的にはSQLServerの話じゃないし
開こうとしたフォルダに対する開こうとしたユーザのアクセス権確認するしか確認方法なんてないよ
なぜそのアクセス権になったかはその次の話だ
0245NAME IS NULL
垢版 |
2020/01/01(水) 14:11:51.79ID:mYS4vz8I
Windowsは権限が複雑だからな。
0246NAME IS NULL
垢版 |
2020/01/02(木) 23:03:53.68ID:???
実機に触れねえトコロで質問するヤツにはクズが多い
0247NAME IS NULL
垢版 |
2020/01/07(火) 20:03:21.46ID:???
Windows10でSQLServer2017ExpressのDATAフォルダがエクスプローラで開けなったと言った者です。
休み中に確認するつもりでしたが、手が回らず、休み明けになってしまい申し訳ありません。
結論から言うと何も問題無しにフォルダは開くことができました。
Windows10の設定には特に問題なかったようです。
他でも類似の不具合が確認されました。
明確にADの管理者から回答を得ていませんが、ADに何か不具合があるような感じです。
アドバイスを頂いた方ありがとうございました。
その他の方、スレ違いで失礼しました。
0248NAME IS NULL
垢版 |
2020/01/07(火) 20:17:04.22ID:???
SQLServerをHyper-V上で動作させたときの不具合事例を一つ報告させていただきます。
今まで、WindowsServer2008のHyper-V上で動作させていたSQLServer2008R2を最終的にWindowsServer2012R2のHyper-V上のSQLServer2017にアップデートしたところ、著しくパフォーマンスが低下し、クライアントプログラムからタイムアウトが頻発しました。
Hyper-Vのメモリ割り当てを動的にしていたのがパフォーマンス低下の原因だったようです。
よくよく考えるとSQLServerは特に制限しなかった場合、許す限りのメモリを消費するので、仮想サーバのメモリを動的にしていても上限値まで使い切ってしまうので、初めから最大値を割り当てるべきでした。
ネットで多少情報はありましたが、皆さんもこんな不具合はあったことありませんか
SQLServerのパフォーマンス比較ってMSの許可なく公表できないことになってるから、あんまり情報無いんでしょうかね
0250NAME IS NULL
垢版 |
2020/01/08(水) 01:49:58.86ID:???
>>249
単純なバージョンアップだけだと著しく動作速度が遅くなるって話
バージョンアップで遅くなる話はよくあるけど普通は数パーセントレベルだと思うけど何百パーセントて感じで遅くなりました
Hyper-V使い慣れている方には当然なのかもしれなけど今回初めてだったもので上げてみました
2008にする前はVirtalServerだったんでHyper-Vに乗り換えた時は問題になりませんでした
0251NAME IS NULL
垢版 |
2020/01/08(水) 02:12:23.04ID:fMxLGwbt
一般的にそれは「単純なバージョンアップ」とは言わないと思うぞ
0252NAME IS NULL
垢版 |
2020/01/08(水) 12:07:01.61ID:???
仮想化されてるけど物理構成変更だからな
0253NAME IS NULL
垢版 |
2020/01/09(木) 03:53:35.89ID:???
>>251>>252
分かり難くてすみません
Hyper-V仮想マシンはそのままでしたよ

今回は、ホストOS2012R2上のHyper-V仮想マシンのOSを2008から2012R2に変えて
SQLServerは2008R2から2012R2に変えたって話です
ソフトのみ更新で、すごく遅くなったのでHyper-V仮想マシンの設定を変えました

3か月ほど前にホストOS2008のサーバから2012R2のサーバへ移動させました
その数年前がホストOS2003でVirtalServerでした
このくらい変われば物理構成変更と思うんですけどね
0254NAME IS NULL
垢版 |
2020/02/03(月) 21:27:38.24ID:???
Sqlserverのバイナリ型は例えば本当にバイナリだけをdbに入れるのでしょうか?
アクセスのOLE型みたいにOLE型ヘッダーを付け加えたりしないのでしょうか?
ファイルのバイナリだけを保存してくれればいいのですが。
0255NAME IS NULL
垢版 |
2020/02/03(月) 22:02:09.04ID:01WTNDQb
>>254
そんなの製品の仕様で、データファイルを直にいじろうとするのがおかしい。
0256NAME IS NULL
垢版 |
2020/02/03(月) 22:56:54.27ID:???
バイナリデータを格納したいってだけで、データファイルを直で弄りたいとか言ってないけど?

つかADO.NETスレの人か
出来るかできないかで言えばできる
あとFILESTREAMとかいう機能もある
0257NAME IS NULL
垢版 |
2020/02/04(火) 00:13:16.39ID:pSRmCDt6
>>256
そうです。バイナリ型はつかったことないので手探りで調べています。
(1)適当なエクセルファイルをSQLで格納
例)副問い合わせでエクセルファイルをかきこみ
SQL
INSERT INTO [Test].[dbo].[BlobTable](Data)
SELECT BulkColumn
FROM OPENROWSET(BULK N'C:\work\Book1.xlsx', SINGLE_BLOB)
それからc#から読み込みファイルをかきこみ。
connection.Open();
command.CommandText = @"SELECT [Data] FROM [Test].[dbo][BlobTable]";//SQL Dataはバイナリ型
byte[] data = null;
data= (byte[])command.ExecuteScalar();//読み込み
string tmpdir = Path.GetTempPath();
var Tempfile = Path.Combine(Path.GetTempPath(), "tmp.bin");//テンポラリのパス設定 ファイル名はtmp.bin
System.IO.FileStream fs = new System.IO.FileStream(
Tempfile,
System.IO.FileMode.Create,
System.IO.FileAccess.Write);
fs.Write(data, 0, data.Length); fs.Close();

これをtmp.binとBook.xlsxを比較して(ファイルの中身がおなじことを
確認できました。PDFやWORDなどバイナリとしてSQLServerに
格納したかったのです。おさわがせしました。
0258NAME IS NULL
垢版 |
2020/02/04(火) 00:16:23.26ID:???
sharepointはblob型でドキュメントファイル保存してたな
0259NAME IS NULL
垢版 |
2020/02/04(火) 00:19:44.16ID:pSRmCDt6
ちなみにアクセスで失敗した点はおっしゃるとおりOLEのヘッダーを
削除しなければならないようです。マイクロソフトプログラミング
ASP.NET4のP140にかいてありますね。ためしていないのですが
書き込むとたしかに元ファイルとアクセスに書き込んだバイナリと比較すると
違うみたいですね。
0260NAME IS NULL
垢版 |
2020/02/06(木) 12:35:58.99ID:???
データベースにバイナリデータ入れると
データベースが肥大化して扱いにくくなるぞ。バイナリデータは外部にもってデータベースには保存先パス情報だけもつほうがいい。
0261NAME IS NULL
垢版 |
2020/02/06(木) 13:14:49.27ID:???
バイナリ項目を含んだSELECT文は取得結果に時間がかかる。
ローカルネットワーク内なら速度はでるだろうが
ルーター越えだとメチャクチャ遅くなりユーザーから遅いと文句言われるぞ
0262NAME IS NULL
垢版 |
2020/02/06(木) 13:42:10.95ID:???
データベースの中に突っ込むと権限とかバックアップとか移行とかがラクチンすぎるので
容量が許せば積極的にデータベース内に保管したい。
0263NAME IS NULL
垢版 |
2020/02/06(木) 20:08:32.65ID:d+4IHk/W
>>バイナリ項目を含んだSELECT文は取得結果に時間がかかる。
バイナリの部分はSELECT文に含まさなくても重いのですか?
>>データベースの中に突っ込むと権限とかバックアップとか移行
ファイル管理は便利ですよね
>>バイナリデータは外部にもってデータベースには保存先パス情報だ
はじめはそれがベターと思っていたのです。私も
0264NAME IS NULL
垢版 |
2020/02/07(金) 07:39:29.59ID:???
バイナリのフィールド含まなければSELECTは重くない
アプリケーション側でバイナリのフィールド含まないSELECT文で検索用一覧用データを取得して必要なデータ数件だけバイナリフィールド含んだSELECT文で取得すればいい
0265NAME IS NULL
垢版 |
2020/02/07(金) 12:57:16.02ID:???
保存先パス情報って、20世紀じゃあるまいし・・・

クライアントからアクセスできる場所に置かないといけないと思うけど
アクセス権どうすんの?
0266NAME IS NULL
垢版 |
2020/02/07(金) 19:01:39.18ID:???
必要ならアクセス権設定できるファイルサーバーに置くだけだろ
21世紀にもなって何をいってんだか
0267NAME IS NULL
垢版 |
2020/02/07(金) 20:46:15.05ID:???
ファイルサーバは読取専用権限にしないと変更されてしまうので
権限設定がめんどくさいのでWebサーバがいいかな
見たかったらパス情報からリンク先url作ってダウンロードさせるようにすればいいと思う
0268NAME IS NULL
垢版 |
2020/02/07(金) 21:58:26.25ID:???
静的ファイルのような扱いではなさそうだからそれもどうなのかね?
0269NAME IS NULL
垢版 |
2020/02/08(土) 09:26:42.96ID:???
>>265
> クライアントからアクセスできる場所に置かないといけないと思うけど
サーバー経由で取得すればいいだけ
って言うかそういうシステム普通にあるでしょ
0270NAME IS NULL
垢版 |
2020/02/12(水) 18:18:00.03ID:???
システム運用で考えたらデータベースバックアップとっときゃそれで済むってのは楽なんだよな
ファイルサーバー用意するならファイルサーバーの運用を別に考えなきゃならん(言っても大したことはないが手間にはなる)
0271NAME IS NULL
垢版 |
2020/02/14(金) 12:55:14.02ID:???
外だしのメリットは例えば画像ファイルをデータベースに保存したりすると画像ファイルの解像度を下げて空き容量を増やす事が出来なくなる。最近の画像ファイルは解像度高くサイズが大きいので増えてくると空き容量がすぐ足りなくなるよ
0272NAME IS NULL
垢版 |
2020/02/14(金) 13:41:35.81ID:???
>>271
解像度を落としたれば、落としてUPDATEしたらいいだけじゃないか
そもそも容量不足って、ファイルサーバーでも一緒じゃん。
足りなくなったらディスク増やすまでだろ。
0273NAME IS NULL
垢版 |
2020/02/14(金) 15:07:10.14ID:???
SQL Server 2019 Developer が起動できなくなり、
データベースのmdfファイルもディレクトリ毎消えています。
イベントログには「SQL Server の評価期間が終了しました。」とあるのですが、
これは仕様ですか?
0274NAME IS NULL
垢版 |
2020/02/14(金) 18:16:41.57ID:???
>>273
> データベースのmdfファイルもディレクトリ毎消えています。
MSがそんな鬼畜な事するとは思えないが…
0275NAME IS NULL
垢版 |
2020/02/14(金) 18:33:02.19ID:???
そもそもdeveloperと評価版は別のはずだが
今のデベロッパーは登録しないと評価版とかになってるのか?
0276NAME IS NULL
垢版 |
2020/02/14(金) 18:46:45.17ID:???
すみません、mdfファイルは前のバージョンのディレクトリにありました。
Developer版を入れ直してアタッチしたら復元できました。
確かではありませんが、無料トライアルからダウンロードしたファイルを使用して
Developerをインストールしたから期限切れになったのかもしれません。
ありがとうございました。
0277NAME IS NULL
垢版 |
2020/02/14(金) 20:03:34.27ID:???
>>276
VisualStudioとかだと登録しないと30日とかで期限切れになるのと同じじゃないの
0278NAME IS NULL
垢版 |
2020/02/14(金) 21:23:04.17ID:vyX2cI8S
当社拠点における新型コロナウイルス感染者の発生について
https://www.nttdata.com/jp/ja/news/information/2020/021400/


2020年2月14日

株式会社NTTデータ

当社拠点ビルに勤務している協働者1名が新型コロナウイルスに感染していることを本日確認しました。
本件を受けて、社員の健康と事業継続を保てるよう本社対策本部を設置し、所管保健所と連携を図り対応を進めてきました。その結果、感染者の当社拠点ビルにおける行動履歴と、14名の濃厚接触者が保健所によって特定されております。
感染者が発生したビルに対しては、本日時点で以下の対応を取っております。

当該ビルおよび周辺3拠点の関連部門に勤務する社員/協働者の在宅勤務指示
0280NAME IS NULL
垢版 |
2020/03/01(日) 11:24:02.92ID:???
>>278
「自分ひとりが感染したために周囲に大迷惑をかける」

今みんなが恐れているのはまさにこれだな
コロナ自体は軽症で済むんだし
0281NAME IS NULL
垢版 |
2020/03/10(火) 23:04:28.38ID:???
クラスターはすっかり有名になったねw
0282NAME IS NULL
垢版 |
2020/03/12(木) 20:24:24.12ID:???
むしろコロナとかのクラスターとデータベースクラスタがごっちゃになってワケワカメになりそう
0283NAME IS NULL
垢版 |
2020/03/13(金) 15:17:06.55ID:???
どっちも同じ意味のクラスタじゃないの?
0284NAME IS NULL
垢版 |
2020/03/13(金) 15:45:28.21ID:???
同じ単語だけどDBクラスタのクラスタは
グループで1つのシステムとして機能するという意味が付加されるから
語源は同じでも意味は違う

集団感染って言えばいいところを
その語感から来る悪い印象を遠ざけたいがために
一般人に馴染みのない言葉を使う大本営体質はうんざりする
0285NAME IS NULL
垢版 |
2020/03/13(金) 15:46:11.08ID:???
主任「ようやくA社へのクラスター導入を完了しました」
課長「おお、最後のX拠点もクラスターに入ったのか」
勘違い君「課長! 来週のA社への出張は遠慮します!」
0286NAME IS NULL
垢版 |
2020/03/29(日) 17:33:27.63ID:???
質問なのですが

例えばtbl1テーブルに
fld1フィールドが'A'のデータと'B'のデータがある状態で

SELECT fld1 FROM tbl1 WHERE fld1 IN ('A','B','C','D','E')

を実行すると'A'と'B'が表示されますが

その逆に無かったほうの'C'と'D'と'E'を表示することって難しいでしょうか?

つまりIN句で指定したものの中で存在しなかったものを表示したいのです
0287NAME IS NULL
垢版 |
2020/03/29(日) 18:27:26.89ID:???
NOT IN ( 'A', 'B' )じゃダメなの?
0288NAME IS NULL
垢版 |
2020/03/29(日) 18:52:42.68ID:???
>>286
tbl1 -> foo
fld1 -> name
で読み替えて

select bar.name
from (values ('A'), ('B'), ('C'), ('D'), ('E')) as bar(name)
left outer join foo on bar.name = foo.name
where foo.name is null;

not exists使ってもいい
0289NAME IS NULL
垢版 |
2020/03/29(日) 20:05:41.26ID:???
>>287
それだと何も出ない
'C','D','E'を出力したいならデータとして持たないと駄目だから>>288みたいにvaluesでやるのが簡単
0290NAME IS NULL
垢版 |
2020/03/29(日) 23:15:23.94ID:???
valuesってfrom文で使えるんだな、知らんかった
0292NAME IS NULL
垢版 |
2020/03/30(月) 20:53:55.86ID:???
SQLは存在しないデータを生み出すためのもんじゃないからな

まあ、'A'から'E'までとか、なんか別のマスタあるんじゃないのかね
0293NAME IS NULL
垢版 |
2020/03/30(月) 22:17:10.17ID:???
A~Eが入力で受け取るような値ならテーブル変数使う
0294286
垢版 |
2020/03/31(火) 00:19:06.55ID:???
>>288
こんな書き方が出来るなんて目からウロコです!

スレにしばらく書き込みがなかったので不安でしたが即レス感謝します。

ありがとうございました〜!
0295NAME IS NULL
垢版 |
2020/03/31(火) 19:04:00.80ID:Kc++IpJB
いつもの自作自演
0297NAME IS NULL
垢版 |
2020/04/05(日) 03:12:44.11ID:???
カーソルについて質問させてください
カーソルを宣言するときのSELECT結果は1件のはずなのですがループが二回走ります
ループ内ではINSERを行っていて、デバッグするとその新規レコードがフェッチされて二回目のループが走っているように見えます
カーソルをループした処理の中で作成したレコードって、カーソルに反映されますか?
0299NAME IS NULL
垢版 |
2020/04/05(日) 11:45:57.96ID:???
>>298
レスありがとうございます!
コードそのままは出せないので一部置き換えたものですがすみません

declare cur1 cursor for
select id, rireki_num, name, birth
from test
where name like '%太郎%';

open cur1;

fetch next from cur1 into @id, @rireki_num, @name, @birth;
while @@FETCH_STATUS = 0
begin
insert into test values (@id, @rireki_num + 1, '太郎 様', @birth);
fetch next from cur1 into @id, @rireki_num, @name, @birth;
end;

close cur1;
deallocate cur1;

このカーソル宣言部分のSELECTを単品で流すと1件のレコードしか取得されないのですが、
実際に動かしてみるとインサートした後のFETCHで@@FETCH_STATUSが0になってもう一度ループに入ってきます

説明が下手ですみません
何かご存じでしたらお願いします
0300NAME IS NULL
垢版 |
2020/04/05(日) 13:32:27.79ID:???
testから抽出してtestに挿入していて、SELECTの条件が合うならそうなるんじゃないの
もしかするとSQLServerの設定で防げる場合もあるだろうけど、挙動が分からない時は試してみるけどね
'太郎 様'を'次郎 様'とかにして試してみれば、すぐわかるんじゃない
素人の俺が意見するのもなんだけど、確認するのが確実じゃないかな
0301NAME IS NULL
垢版 |
2020/04/05(日) 14:33:25.10ID:???
>>300
確かにbegin tranつけないでinsertしてるし読めちゃってるかもね
既定値はauto commitだし
0302NAME IS NULL
垢版 |
2020/04/05(日) 15:05:53.67ID:???
>>299
仕様どおり

FORWARD_ONLY
All insert, update, and delete statements made by the current user (or committed by other users)
that affect rows in the result set are visible as the rows are fetched.

FORWARD_ONLY is the default, unless the keywords STATIC, KEYSET, or DYNAMIC are specified

STATIC
Specifies that the cursor always displays the result set as it was when the cursor was first opened, …

https://docs.microsoft.com/en-us/sql/t-sql/language-elements/declare-cursor-transact-sql?view=sql-server-ver15

あとカーソル使わなくてもINSERT SELECTで対応できるケースだったりしない?
0303NAME IS NULL
垢版 |
2020/04/05(日) 15:22:49.00ID:???
>>300,301,302
教えてくださってありがとうございます
300さんに教えていただいたように試してみたところループは一回で終わりました

カーソルの挙動についてはいろいろなサイトで調べていたのですが、
カーソルの宣言時にSELECTした結果がカーソルのオブジェクトに入って、
フェッチはそこから一行ずつ取得しているというように読み取ってしまっていたので今回のSQLで大丈夫だと思ってしまっていました
こういった仕様なのですね

実際のSQLはループ内でIF分岐でいろいろと処理が別れているのでINSERT SELECTが難しいかなと思ったのですが、
もう少しやるべきことを整理した上でINSERT SELECTに替えることも視野に入れて見直してみようと思います
とても勉強になりました!皆さん本当にありがとうございました!!
0304NAME IS NULL
垢版 |
2020/04/05(日) 15:34:05.08ID:???
>>302
確かにカーソル使う処理は遅いのでまずはinsert selectで対処できるかを検討すべきやね
0305NAME IS NULL
垢版 |
2020/04/05(日) 17:50:44.06ID:x2ikEwoi
>>303
カーソルオープンのことを、カーソルの宣言と言わないでほしい。

これだけで何を言っているのかわからない。
0306NAME IS NULL
垢版 |
2020/04/05(日) 17:52:13.86ID:x2ikEwoi
>>303
カーソルオープンで行われるのは結果セットの取得ではないよ。

フェッチ構文はなんだと思ってんの?
0307NAME IS NULL
垢版 |
2020/04/05(日) 17:59:12.78ID:???
>>306
INSENSITIVEやSTATIC付ければ
カーソルオープンで結果セットの取得が行われる
>>302に書いてるよね?
0308NAME IS NULL
垢版 |
2020/04/05(日) 20:46:00.45ID:???
>>307
別人だけど、それ知らんかったわ
まず使わんとは思うんだけど勉強になった
0309NAME IS NULL
垢版 |
2020/04/07(火) 22:55:49.06ID:???
取得っていう言い方がなぁ
カーソルオープンで結果セットが生成されて、フェッチで取得される
っていう言い方のがよくね?

生成されているのが、静的コピーかキー情報のみなのか、実体はフェッチ時に生成してるのかの違いだろ
0311NAME IS NULL
垢版 |
2020/04/08(水) 07:42:52.21ID:ph1i5B2f
>>309
確かに表現がよくなかった。カーソルオープンはレコードの特定で、レコードの値をコピーするのがフェッチ。

データベースや指定によってはカーソルのSELECT文の対象レコードがロックされたり、対象レコードのコピーが作成される。
0312NAME IS NULL
垢版 |
2020/04/08(水) 07:46:10.80ID:ph1i5B2f
SQL Serverでデータ量が少なければ、一時テーブルを使うのが無難かな。
0313NAME IS NULL
垢版 |
2020/04/15(水) 11:24:04.86ID:???
Management Studioで
左側にオブジェクトエクスプローラ
右側にクエリウインドウが開いてる状態で
オブジェクトエクスプローラの幅を変えようと思って
オブジェクトエクスプローラ右端の境界線をマウスで左右にドラッグしても
うまく変わってくれないことが多いんですが、何が原因でしょうか?
0314NAME IS NULL
垢版 |
2020/04/15(水) 22:28:34.42ID:???
↑バージョンは2016です
0315NAME IS NULL
垢版 |
2020/04/16(木) 18:54:50.18ID:???
うまくいかないって具体的にどうなんだよ
OSとかSSMSのバージョンとか詳しく書けないのかよ

お前のマウスがぼろいだってオチな気がするがな
0316NAME IS NULL
垢版 |
2020/04/17(金) 00:04:46.29ID:u+YHZMQq
Windows版でなければ、そんなの日常茶飯事。
0318NAME IS NULL
垢版 |
2020/07/28(火) 09:45:25.38ID:d740VVDU
教えて下さい
環境
サーバAとサーバBがあって、それぞれにSQLServerが入ってます。
どちらもユーザ名、パスワードは同一で変更できません。

質問
サーバAのManagement Studio上からサーバBに誤って接続させたくないのですが
いい方法ないでしょうか?
(ユーザ名、パスワードが同一なので誤って接続&ログインで来てしまう)

例えばManagement Studio起動時のサーバ名選択なリストボックスに自身のインスタンスしか表示させないとか。
0319NAME IS NULL
垢版 |
2020/07/28(火) 11:42:24.69ID:???
双方サーバで固定IPならSQLのアクセスをファイヤーウォールでブロックしてしまう。
0320NAME IS NULL
垢版 |
2020/07/28(火) 17:30:01.78ID:???
>>318
サーバ名は(local)のみ使うことを徹底するでもいいかなぁ
0321NAME IS NULL
垢版 |
2020/07/28(火) 17:52:50.42ID:???
sa 使わず、別の保守用アカウント作って、それで SMSS したらいいんじゃね?
0322NAME IS NULL
垢版 |
2020/07/28(火) 19:53:55.45ID:???
WindowsファイアウォールでSSMSの外向け通信遮断とかで行けるんじゃね
0323NAME IS NULL
垢版 |
2020/07/28(火) 21:33:50.07ID:???
ファイアウォールじゃなくLogon Triggerでも制御可能

あとミスオペを防ぐにはコネクション別に色を変えるのは結構有効
0324NAME IS NULL
垢版 |
2020/07/28(火) 21:52:52.79ID:???
>>323
それしらんかった
ありがとう、勉強になった
0326NAME IS NULL
垢版 |
2020/07/29(水) 12:51:54.54ID:???
>>323
コネクション別に色を変える方法は?
0327NAME IS NULL
垢版 |
2020/07/29(水) 14:27:37.65ID:???
>>326
コネクションのプロパティで出来るでしょ
ステータスバーの色が変わる

アドオン入れればもう少し違う箇所の色を変えたりできるかもしれない
0328NAME IS NULL
垢版 |
2020/07/29(水) 21:33:49.33ID:???
>>327
探したけど、その説明では...探したが、接続後では変えられないっぽい

サーバーへの接続ダイアログで、オプションをクリック
接続プロパティタブで、カスタム色を使用にチェックして、選択ボタンから色を選択

でステータスバーの色を変えれるようになった
セキュリティ的に絶対繋げたくないとかじゃなければこっちのが良いな

アドオン作れば色々出来るんだろうけど、アドオン作るための資料ってみたことないんだよなぁ
0330NAME IS NULL
垢版 |
2020/07/29(水) 22:54:50.25ID:???
なるほど
基本Visual Studiのエディタ部分だから、アドオンそのものはVSのアドオンなのか
あとは各種SSMSのオブジェクトのリファレンスさえあればなんとなる、かも

しかしまあ、日本語のドキュメントほしいよなぁ
0331NAME IS NULL
垢版 |
2020/07/31(金) 19:40:52.30ID:LbLGxfcR
csvファイルからデータをインポートしたいのですけど、
読み込ませようとしたら、
全てvarcharの長さ50バイトに
なってしまいます。
実際のデータはもっと長い文字列の項目があります。
どうすればデータ長に合う長さで
読み込むでしょうか?

ちなみにcsvは先頭行から
データとなっています。
0332NAME IS NULL
垢版 |
2020/07/31(金) 20:47:08.25ID:???
>>331
>読み込ませようとしたら

import wizardみたいので普通に設定できたと思うんだが違うやり方なんかな?
0333NAME IS NULL
垢版 |
2020/07/31(金) 23:35:06.24ID:???
ここはエスパースレではないので
せめてどうやって読み込ませたのかぐらいかけよ
0334NAME IS NULL
垢版 |
2020/08/03(月) 18:10:28.15ID:???
>>318
Management Studioに接続を登録して使うようにしたら良いと思うよ

> 例えばManagement Studio起動時のサーバ名選択なリストボックスに自身のインスタンスしか表示させないとか。
起動時のダイアログは表示しない設定にできるよ

誤って接続させないなら、これで十分じゃないかな
接続の登録は、エクスポートできるから、みんなで同じ環境にするのも簡単だよ
0335NAME IS NULL
垢版 |
2020/08/04(火) 16:22:32.03ID:J7T+4U9I
OS認証で何もかも使っているような馬鹿だろ
0336NAME IS NULL
垢版 |
2020/08/04(火) 16:47:32.43ID:???
などという馬鹿がおりまして
0337NAME IS NULL
垢版 |
2020/08/05(水) 08:50:51.70ID:8yHopzKP
csvからインポートしてるのですけど
数値項目のところにスペースのみとか、
スペース+数値文字列(リーディングスペースっていう?)は、
読み込み中にエラーが発生するようです。
という、ところまでわかりました。

次は、文字コード混在(932と1252)しています、というエラーに
悩んでいます。

csvを調べても932(シフトJIS)に
なってるはずなのです。

なにかアドバイスください!
0338NAME IS NULL
垢版 |
2020/08/05(水) 10:39:24.54ID:???
>>337
まずはcsvファイルをいくつかに分割したりして、エラーの原因の行を特定してみてはどうか

で、特定できた行と、使ってるBULK INSERT文なりbcpコマンドなりが出されると
悩みに効くかもしれない
0340NAME IS NULL
垢版 |
2020/08/06(木) 01:49:08.34ID:RlDmGsR2
>>337
いったん文字列として別のテーブルに取り込めぱいいんだよ。途中をすっとばして一気にやろうとすれば何もかもたいへんになる。
0341NAME IS NULL
垢版 |
2020/08/07(金) 08:45:41.39ID:e0ioXoYC
>>338
>>340
コメントありがとうございます。
プログラムは詳しくありませんので、
csvインポートは、SSMSで
画面から指定してやっています。
いろいろ試してみます。
0342NAME IS NULL
垢版 |
2020/08/08(土) 05:26:17.50ID:???
mssqlの物理設計の仕事をすることになりそうなんですが、この仕事って将来性ありますか?
0343NAME IS NULL
垢版 |
2020/08/08(土) 14:31:22.82ID:nuZHIe/X
SQL ServerのDBAは供給が常に足らないから、仕事はあるよ。
0344NAME IS NULL
垢版 |
2020/08/11(火) 17:02:42.91ID:KQ3PRvmN
職場のPCなんですけど、SQL serverをインストールしてないのに、
SSMSを使ってデータのインポートをするとテーブルが作られて、
クエリも実行できるのですけど、
SSMSをインストールするだけで、自動的にSQL serverが
インストールされるのでしょうか?
0346NAME IS NULL
垢版 |
2020/08/11(火) 19:41:26.32ID:???
>>344
SSMSはクライアントツールだ
SSMSのインストールではサーバはインストールされない

SSMSでどこにつないでるだよ
0347NAME IS NULL
垢版 |
2020/08/11(火) 21:50:16.23ID:txpGgpOg
WinPro+SQL2013+Excel2013で使えてたtime型が、
WinHome+SQL2019+Excel2019で使えなくなった
0348NAME IS NULL
垢版 |
2020/08/11(火) 21:52:52.70ID:txpGgpOg
SQLの実行ではエラーは起きないので、Excel側の問題だけど
OLEではレコードセットの該当列を見ると「複数のステップ」エラー
ODBCではレコードセットの何か(EOFとか)を見ると「数値の範囲」エラー
0349NAME IS NULL
垢版 |
2020/08/11(火) 21:54:35.18ID:txpGgpOg
数か所だったのでchar(5)に変えたけど(hh:nn)

※書き込めない原因はこの行だったかーw
0350NAME IS NULL
垢版 |
2020/08/11(火) 21:55:48.05ID:txpGgpOg
char(5)か(hh:nn)のせいかな?
DB板でこれを半角で書けない意味はw
0351NAME 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}にしといた
名前がナンバリングってことは、次回買い替え時にまたメンテが必要…
0352NAME IS NULL
垢版 |
2020/08/11(火) 22:59:13.01ID:KQ3PRvmN
>>346
> SSMSでどこにつないでるだよ

会社のPCを見てないんですけど、
(localDB)SQLSERVERというような名前を設定したと思います。

この設定は、
「こういう文字列を設定するとできたことがある」
と先輩が教えてくれたものです。
0353NAME IS NULL
垢版 |
2020/08/12(水) 09:29:12.25ID:???
>>352
Visual studio とか ASP.NET とかを入れてるんじゃね?
その他にもSQL-Server LocalDB使うアプリを入れるとインストールされたりする
0354NAME IS NULL
垢版 |
2020/08/12(水) 09:55:56.64ID:???
なんか使えない先輩と言う感じだなあ
0355NAME 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ドライバ使えってスタンス

まあ迷走してる感はあるが、新しめの使っとけば数年で使えなくなることはなさそう
0356NAME IS NULL
垢版 |
2020/08/12(水) 11:52:14.71ID:???
>>354
使えない先輩というか、この程度の知識でSSMSでクエリ発行する業務そのものが理解できん
0357NAME IS NULL
垢版 |
2020/08/12(水) 14:07:32.44ID:???
>>356
システムの事なんか全然知らず、サーバを構築したりすることもなく、
SQLでクエリーを作る作業者って想像できないわけじゃないよ。
でもトラブルがあった場合とかパフォーマンスが出ない時とかどうするんだろうなあとは思うな。
0358NAME IS NULL
垢版 |
2020/08/12(水) 14:37:15.58ID:???
SSMSはVer18からストアドプロシージャのデバッグができなくなってたんだね
2008が残ってたからVer17を使い続けてたんだけど、現行は、VSDTを使えってことなのかな
0359NAME IS NULL
垢版 |
2020/08/12(水) 16:45:51.11ID:???
>>357
相手によってはとりあえず使えるように必要な設定を呪文として提供することならままあると思う。
その呪文をきちんと理解できるように自分で調べる、問題があるなら質問を返す、などの器量は受け取る側の問題じゃないかと。
0360NAME 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もバグってるけど、エラーの出方が素直(ただしメッセージは分かりにくい)
0361NAME IS NULL
垢版 |
2020/08/12(水) 17:00:46.71ID:4QU2lpeJ
下請けのプロに凄いもん作らせて、社内の素人に「保守」させるという
よくあるよ
「誰でもできる」は買い叩きのためなの神話なのに、多数が心から信じてる様子
それがブラック社会

ただ俺の場合、凄過ぎて引き継げない
0362NAME IS NULL
垢版 |
2020/08/12(水) 17:08:35.93ID:???
>>361
その「保守」って大丈夫か?
データベースに限らずソフトウェアは、後からの要望で、あれ付けてくれ、これやってくれをいちいち聞いていると酷いことになる。
「××を行わないことを大前提で最適化している」なんて説明しても全然理解してくれなかったりする。
0363NAME IS NULL
垢版 |
2020/08/12(水) 20:28:50.95ID:???
自分で作らない人は、後から注文しても普通に付け足すだけで済むと思ってる人多いよね
最初にどれだけ考えて設計してるか知らないから仕方ないけど
0364NAME IS NULL
垢版 |
2020/08/12(水) 21:16:17.00ID:???
極度の属人性を受け入れられるんなら開発費を10分の1にすることだってそう難しいことじゃないんだよ

ベンダーに発注すると高くつくのは属人性を排除するために一見無駄に見えることに時間と金がかけてるから

ついでにそういう属人性が高いシステムのリプレース案件は
大手ベンダーとしてはやりたくない場合が多くてワザと高い見積もりを出すんだよ
0365NAME IS NULL
垢版 |
2020/08/12(水) 21:41:27.21ID:4QU2lpeJ
>>364
>そう難しいことじゃないんだよ

それw
そういうのが買い叩きのための神話
そういう嘘で多大な損害が出たり、人が死ぬ
0366NAME IS NULL
垢版 |
2020/08/13(木) 10:16:31.93ID:OyaVw4Wp
すまんが、SSMSってコピペ用の接続文字列表示してくれないんだっけ?
あれはVisualStudioのみの機能だったっけか・・・・?
0367NAME IS NULL
垢版 |
2020/08/13(木) 13:44:10.21ID:2n69KQro
>>356
>>357
契約していた業者さんがずっと
SQL serverのメンテナンスやってくれていたのですけど、
6月末で契約が切れて、
それでもSQL serverを使うシステムが
残っていて、いくつかやることがあります。

全員がSQL serverはほぼ素人なんですけど、
やらざるをえないという状況です。

いろいろググりながら頑張ってみます!
0368NAME IS NULL
垢版 |
2020/08/17(月) 11:09:19.04ID:???
文字列の最初にN’’と見かけるのですが、この最初のNはどういった意味があるのですか?
省略可能でしょうか?
0369NAME IS NULL
垢版 |
2020/08/17(月) 11:11:34.31ID:???
>>368
自己解決しました。
N’Unicode文字列’ということですね。
0370NAME IS NULL
垢版 |
2020/08/19(水) 14:23:12.93ID:5/nQUFqV
SQL serverをインストールしたのですけど、
一部のGUIが動かないので
他のPCと比べてみたら、
どうやらVisual Studio 2005のライブラリ(?)
というのがインストールされてないみたいです。

SQL serverのGUIで使ってるらしいですけど、
後からVisual Studio 2005のライブラリというのを
インストールする方法を教えてください
よろしくお願いします!
0371NAME IS NULL
垢版 |
2020/08/19(水) 14:30:48.38ID:???
いつの時代の話だよw
0372NAME IS NULL
垢版 |
2020/08/19(水) 15:00:17.21ID:5/nQUFqV
すいません時代錯誤してました。
というか分かっておりませんでした
NetFrameWork 3.5というのをMicrosoftのサイトから
ダウンロードすればいいはずと聞きまして、
やってみます。

>>371
あのね、からかうだけなら
書かないほうがいいですよ。
「バカだから何も知らないくせに
マウントしたいんだろう、このFランの馬鹿がw」
と、みんな思ってますからw
0373NAME IS NULL
垢版 |
2020/08/19(水) 17:04:43.41ID:???
>>372
恥の上塗りはやめとけってww

SQL ServerやSSMSのバージョンも書かない上に
ライブラリの名前も正確に書けないようじゃまともに相手されなくて当然
必要なVC++の再頒布パッケージが入ってないならインストールに失敗してるんだよねそれ
0374NAME IS NULL
垢版 |
2020/08/21(金) 22:01:11.18ID:???
sqlserverのパッチは出たら積極的に当てた方がよい?
問題がなければほっとくべき?
0376NAME IS NULL
垢版 |
2020/08/21(金) 22:15:58.88ID:???
パススルークエリヤバすぎワロタ
0377NAME IS NULL
垢版 |
2020/08/21(金) 22:41:50.30ID:???
>>374
どういう種類のサービスに使ってるかとパッチの内容次第
セキュリティ系なら基本的に当てる
0378NAME IS NULL
垢版 |
2020/08/22(土) 05:05:36.41ID:???
最近のは統合パッチ?になって選択出来ない
と思っていたが
0379NAME IS NULL
垢版 |
2020/08/22(土) 11:35:29.43ID:???
うちはcuもあてとるぞ
0380NAME 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 エージェント−ジョブ−該当メンテナンスプランを
 右クリックして、履歴の表示を選択しても、履歴の記録なし
・該当メンテナンスプランを右クリックして実行を選択すると
 正常に実行され、実行後履歴も表示され、ログも作成された

スケジュール実行するためには、何か特別な設定が必要なのでしょうか?
0381NAME IS NULL
垢版 |
2020/08/23(日) 19:39:22.79ID:???
>>380
> ・ MSSQL13.MSSQLSERVER\MSSQL\Logにログの作成なし
server 2016ならフォルダが違わない?
旧バージョンからのアップデートならあり得るけど、インスタンス間違えてないか
0382NAME IS NULL
垢版 |
2020/08/24(月) 17:51:57.68ID:???
すみません、教えて下さい。
クエリ実行時にエラーになったときに、
どのエラーコードだったらリトライすべきとかの標準的なガイドラインのようなものってあったりするのでしょうか?
0383NAME IS NULL
垢版 |
2020/08/24(月) 18:15:16.74ID:???
それは要件次第じゃないの?
0384NAME IS NULL
垢版 |
2020/08/24(月) 20:04:22.86ID:???
要件は特に無いといいますか、聞けていないのですが、どのような手順で整理すべきでしょうか?
0385NAME IS NULL
垢版 |
2020/08/24(月) 20:34:42.27ID:???
エラーが出たら困るときにリトライすればいいんじゃね
0386NAME IS NULL
垢版 |
2020/08/24(月) 21:04:11.28ID:???
リトライしたらエラーが解消される可能性があるケースで
呼び出し側が1回でエラーを返されるよりも
複数回トライしてからエラーを返してほしいという要件に当てはまるものがあるかどうか

接続系じゃなくクエリ実行中のエラーでとなると結構絞られるとは思うが
運用開始前に対象をもれなく洗い出すのは現実的ではないので
運用開始後に簡単にリトライ対象を追加したり削除したりできるようにして
追加/削除の判断が迅速にできるような運用監視体制を整えておくほうが現実的
0387NAME IS NULL
垢版 |
2020/08/25(火) 00:27:02.86ID:SjT+of3l
>>382
レコードがロックできなかったとき
0388NAME IS NULL
垢版 |
2020/08/25(火) 01:19:46.56ID:???
ロックタイムアウトでリトライすべきかどうかは要件次第だよね
普通はやらないと思うけど
0390NAME IS NULL
垢版 |
2020/08/27(木) 13:21:47.59ID:???
単純にリトライするだけなら、ロック外れるまで待てばいいからじゃね
0391NAME IS NULL
垢版 |
2020/08/27(木) 14:51:54.59ID:???
>>389
手動リトライじゃなくコードで自動リトライするのは普通やらないって意味

対処を自動化したくなるくらいロックタイムアウトが発生するのは設計に問題がある可能性が高いのと
単純な固定delayだと同時実行性が落ちたり連鎖反応でエラーが頻発したりする可能性もあるから

デッドロックとかと似たようなもの
0392NAME IS NULL
垢版 |
2020/08/27(木) 15:40:19.59ID:???
サーバーリプレイスする場合の引っ越しはデタッチ→アタッチでおけ?
0393NAME IS NULL
垢版 |
2020/08/27(木) 17:53:54.96ID:???
自分的にはbackupとって、移行先でリストア派
0394NAME IS NULL
垢版 |
2020/08/29(土) 11:43:13.92ID:???
>>392
この前それでやったらなんの問題もなかった
0395NAME IS NULL
垢版 |
2020/08/31(月) 19:44:53.79ID:???
>>392-394
リプレースするならバージョンアップはしないの?
システムデータベースをリストアとかやったことないんで
面倒なんで仮想環境を新しいサーバに移してからバージョンアップした
0396NAME IS NULL
垢版 |
2020/08/31(月) 21:15:12.47ID:???
>>395
システムデータベースなんて障害復旧以外では移行したことないっぺよ
0397NAME IS NULL
垢版 |
2020/09/02(水) 19:25:18.36ID:???
移行はバックアップのリストアでやったほうがパフォーマンスが上がった感じがあった
デフラグみたいなのがされるんじゃないかな
0398NAME IS NULL
垢版 |
2020/09/02(水) 19:35:47.77ID:LSxEusa+
0399NAME IS NULL
垢版 |
2020/09/02(水) 20:55:17.17ID:???
??
バックアップ/リストアなら普通にデフラグされるでしょ
0400NAME IS NULL
垢版 |
2020/09/03(木) 11:45:17.87ID:???
基本バックアップ・リストアが良いと思うが。
なにしろオリジナルファイルとは別にバックアップファイルができるというのが作業安心度が高い。
0401NAME IS NULL
垢版 |
2020/09/05(土) 16:34:53.14ID:???
>>400
システムデータベースのバックアップは同じバージョンにしか書き戻せないでしょ?
新しいバージョンに直接書き戻すことできるの?
調べればどっかに出てるんだろうけど、単純だからインストーラのアップデートを使ってる
0402NAME IS NULL
垢版 |
2020/09/05(土) 20:13:10.43ID:???
>>401
システムデータベースって言葉の解釈が他と違う気がする
master,msdb,model等を指して話ししてる?
0403NAME IS NULL
垢版 |
2020/09/05(土) 23:46:16.40ID:???
>>402
> master,msdb,model等を指して話ししてる?
そうです。
他のPCに移すってことは、そう言うことでしょ?
その他に、レプリケーション用のDBも含むかな
0404NAME IS NULL
垢版 |
2020/09/05(土) 23:48:22.94ID:???
>>402
>>396が言われているのは、master,msdb,model等のことだと思ってレスしてましたよ
0405NAME IS NULL
垢版 |
2020/09/06(日) 11:44:41.42ID:???
>>403
>>404
じゃ俺が文脈読み間違えてるだけだね(´・ω・`)すみません
0406NAME IS NULL
垢版 |
2020/09/06(日) 21:36:15.51ID:???
システムデータベースバックアップなんて必要なの?
0407NAME IS NULL
垢版 |
2020/09/06(日) 22:53:53.53ID:???
バックアップ自体はめっちゃ必要でしょ
0408NAME IS NULL
垢版 |
2020/09/07(月) 02:36:47.59ID:???
とったバックアッップいつ使うの?
ユーザデータベースはわかるけど
システムデータベースをリストアするイメージが湧かない
0409NAME IS NULL
垢版 |
2020/09/07(月) 07:53:42.40ID:???
ハードウェア故障とか(震え)
0410NAME IS NULL
垢版 |
2020/09/07(月) 10:36:53.26ID:???
単体で動かしてるなら再インストールして必要な分再設定のほうが簡単だがな
0411NAME IS NULL
垢版 |
2020/09/07(月) 11:14:37.06ID:???
“必要な分”が漏れなくすべてミスなく再設定できてるかどうかどうやって確かめるの?
0412NAME IS NULL
垢版 |
2020/09/07(月) 16:11:23.92ID:???
大事なのは環境構築の作業ログはちゃんと残そうぜだっぺ
0413NAME IS NULL
垢版 |
2020/09/07(月) 18:06:08.83ID:???
>>408
>>392-393サーバーのリプレースでどうするって話がもと
うちはサーバを仮想化したから仮想環境を新しいサーバに移して、起動させるだけなんだけど
OSのアップデートとSQLServerのアップデートを実施したって話

>>412
作業ログって人の作業記録だとすると、理解できる人材が必要
手順だけを詳細に書いておいても、バージョンアップ等で手順が変わると役に立たなくなる
理解できて対応できる人が必要
仮想サーバの移行は単純だし、単純なOSやSQLServerのアップデートはウィザードに従うだけでできるから、これで良いかなと思ってるところ
0414NAME IS NULL
垢版 |
2020/09/07(月) 19:55:52.08ID:VUeEFudZ
SQL Serverのバックアップの基本は論理バックアップなのかと眺めているけど、本当にそうだとすると大量データには不向きなRDBMSだな。
0415NAME IS NULL
垢版 |
2020/09/07(月) 21:34:28.56ID:???
もしかして設定変更などguiで頑張ってるのか
0416NAME IS NULL
垢版 |
2020/09/07(月) 22:07:50.44ID:???
sqlserver を仮想化するって遅くなるだけでメリットが感じられないな。
テストの時スナップショットからすぐ戻せるとか
そんな事くらいしかメリットない。
サーバー移行も大きい仮想ドライブファイルコピーするのに休日返上で一気にやらないといけないとか大変そう。
バックアップなら完全バックアップ前日とってコピーして
おいて当日差分バックアップとってそれだけコピーすればいいから早くすむと思う
0417NAME IS NULL
垢版 |
2020/09/07(月) 22:42:49.93ID:???
仮想化知らんのかw
0418NAME IS NULL
垢版 |
2020/09/08(火) 12:25:02.82ID:???
>>413
それは移行計画とか手順書を作る前の検証段階レベルで起こる話だから問題ないでしょ?教育にもなる

ぶっつけ本番前提ならそれはそもそもとして体制に問題ありって事だよ
0419NAME IS NULL
垢版 |
2020/09/08(火) 14:39:08.95ID:HzvFsyRh
イメージを戻すだけで済むようなシステムならもともと苦労なんかしないだろうに。
0420NAME IS NULL
垢版 |
2020/09/13(日) 11:59:17.42ID:???
ちょっと困ってるので、詳しそうな人が多そうなここで質問

簡潔に言うとWindows10&WindowsServer2019+VS2019(ASP.NET,VB.NET)+SQLServer2019Expressでwindows認証接続してデバッグモードでプログラムは動作する。
それを発行してIISで参照するとDB接続に失敗する。
なんでだろう?
0421NAME IS NULL
垢版 |
2020/09/13(日) 12:27:14.55ID:???
エラーメッセージを見ろよw
0422NAME IS NULL
垢版 |
2020/09/13(日) 20:27:20.94ID:???
たぶんあのモジュールの設定がアレなんだと思うよ?
0423NAME IS NULL
垢版 |
2020/09/14(月) 01:00:26.63ID:ix9Okpm5
>>420
どうして失敗しているのがわかったのか?
ありのままを知らせてくれないとわからないよ。
0424NAME IS NULL
垢版 |
2020/09/14(月) 02:12:24.66ID:???
デバッグモードのときのあWebサーバは何なんだよ?
それはどのアカウントで動かしてるんだよ?

多分、IISのアカウントがWindows認証で認証できてないんだろ
今のIISのアプリケーションプールとか仮想アカウントで動いてるし
そのへんの仕組みちゃんと勉強する気がないならSQL Server認証でやっとけ
0425NAME IS NULL
垢版 |
2020/09/14(月) 02:39:06.98ID:ix9Okpm5
IISすらろくに理解してないのがわかる質問だから、相手にしなくていいと思う。
0426NAME IS NULL
垢版 |
2020/09/21(月) 16:11:02.91ID:gsw4bqcy
MacのARM化に伴って、Mac+Docker+SQLServerみたいな組み合わせはできなくなりそうなんだけどさ
SQLServerってARM Linuxへの対応は計画にないもんなの?
0427NAME IS NULL
垢版 |
2020/09/22(火) 16:11:00.11ID:???
ここで聞かれても
0428NAME IS NULL
垢版 |
2020/09/22(火) 17:03:29.93ID:???
ARM版WindowsのWOWを流用したら可能性はある
0429NAME IS NULL
垢版 |
2020/09/22(火) 19:04:35.11ID:jrCQ1y5r
macは需要のなさから、いろんなものが対応していない。
0430NAME IS NULL
垢版 |
2020/09/23(水) 08:29:01.06ID:???
シーケンスの現在値がなぜか10個ほど巻き戻っていたせいで重複した番号が使われてレコード追加しようとしたときに一意性エラーでシステムが落ちてた
同じシステムで使われる他のシーケンスオブジェクトは問題なかったのに1個だけなぜか巻き戻ってた
なんか似たようなことなったひといない?
教えてエロいひと
0431NAME IS NULL
垢版 |
2020/09/23(水) 15:13:36.74ID:jpxv++AE
SSMSから社外ドメインのサーバーのSSISに接続しようとすると、WINDOWS認証はできるのですが、SQL SERVER認証ができないためにログインできません。

これは仕様でしょうか?
0432NAME IS NULL
垢版 |
2020/09/23(水) 16:23:58.55ID:???
ポートが通ってないんだろ
0433NAME IS NULL
垢版 |
2020/09/24(木) 00:28:53.49ID:???
>>432
ありがとうございます。

SSMSのログイン画面でSSISに接続しようとすると、サーバー名を入れる前から、WINDOWS接続しか選べないのですが、これもポートですか?
データベースに接続する時には、WINDOWS接続とSQL SERVER接続が選べます。
0434NAME IS NULL
垢版 |
2020/09/24(木) 14:21:52.81ID:???
そもそもそのサーバーでSQL SERVER認証する設定になってるのか?
0435NAME IS NULL
垢版 |
2020/09/24(木) 19:22:22.67ID:???
>>434
混合モードになっていて、DB接続は普通にできます。
0436NAME IS NULL
垢版 |
2020/09/24(木) 20:54:34.93ID:???
仕様ってことでいいんじゃねぇの
知らんけど

DB接続できるならSSISDB使えば?
0437NAME IS NULL
垢版 |
2020/09/27(日) 21:52:54.46ID:???
Express版をいじってみてるんだけどさ
これ、データベースのホットバックアップをとった時って、バックアップ中に行われた更新はどうなっちゃうの?
自動的にリストアに必要なトランザクションログもバックアップに含まれたりするん?
0438NAME IS NULL
垢版 |
2020/09/27(日) 22:06:07.42ID:???
FULLバックアップならトランザクションログも含まれる
0439NAME IS NULL
垢版 |
2020/09/27(日) 23:02:38.40ID:???
ありがとう
さすが元々有料だったのものだけあるな
0440NAME IS NULL
垢版 |
2020/09/28(月) 01:27:27.69ID:???
いろいろいじってたらそうか、流石に無料版はトランザクションログのバックアップに制限があって、使いづらくしてあるわけか
0441NAME IS NULL
垢版 |
2020/09/28(月) 02:28:37.98ID:???
いやそんな制限ないだろ
バックアップまわりの制限って圧縮ぐらいじゃね

SQL Server触るの初めてなのか?まず復旧モデルってのを理解してるか?
0442NAME IS NULL
垢版 |
2020/09/28(月) 13:04:07.47ID:???
正直、復旧モデルがいまいち理解できてない
理解しようと公式のドキュメントをなぞってたんだけど、そもそもExpressだとSimpleってのしか選べなくて続けらんなかったぜ
0443NAME IS NULL
垢版 |
2020/09/28(月) 13:16:14.46ID:???
Simple(単純)ってのは、ログを保存、バックアップしない運用
Expressでも単純しか選べないってことはなかったと思うけどな
インストール後でも変えれるから試してみ
0444NAME IS NULL
垢版 |
2020/09/28(月) 16:00:50.71ID:???
せんきゅー!
デベロッパーに変えたら使えたぜ、これでドキュメントなぞりができるが・・・・使えるようになったときに本番で使う金はねえ
もし使うとしてもAzureの月700円のやつになっちゃいそう
0445NAME IS NULL
垢版 |
2020/09/29(火) 10:05:54.68ID:???
ExpressでSimpleしか選べなかったバージョンって何?
あとOSも何?
0446NAME IS NULL
垢版 |
2020/09/29(火) 13:59:55.80ID:???
ごめんなさい
リカバリーモデルを選択する画面を間違えていました
確かにExpressでも選択できました
0447NAME IS NULL
垢版 |
2020/10/15(木) 22:52:25.90ID:???
SQL Server2016インストール後、IPアドレス変更した場合
特にする事はないのですか?
0448NAME IS NULL
垢版 |
2020/10/24(土) 20:31:09.40ID:???
>>447
DBエンジンそのものは問題なく動くはず
0449NAME IS NULL
垢版 |
2020/11/02(月) 15:26:45.98ID:???
SQLサーバーインストールする時にデータベースエンジンにしかチェック入れていないのにクライアント接続ツールとかが自動的にインストールされる理由を教えてほしいです
0450NAME IS NULL
垢版 |
2020/11/02(月) 19:37:23.45ID:gbiAIS+S
いつものサーバー君ですか?
0452NAME IS NULL
垢版 |
2020/11/12(木) 23:39:34.81ID:???
スレを間違えてしまってこちらに誘導されてきました
SQL Server Developerエディションについて教えて下さい。
このエディションは開発用となっていますが、機能的にはスタンダードと同レベルで使えるのでしょうか?
また実稼働では使用不可とはおもいますが、ライセンス的にはどこでみわけてるのでしょうか?
使用していると定期的に確認メッセージが出たりするのでしょうか?
0453NAME IS NULL
垢版 |
2020/11/13(金) 17:00:45.94ID:???
機能的にはエンタープライズだったはず
ライセンスはたぶん確認とかないと思う
0454NAME IS NULL
垢版 |
2020/11/13(金) 19:00:35.80ID:???
テレメトリーで確認してます
0455NAME IS NULL
垢版 |
2020/11/14(土) 02:55:42.24ID:5WdagOao
>>452
商用ではない非運用ならいいというもの
エンタープライズという名前にしてしまうと、商用で使ってしまう可能性があるから、エディション名を分けたのだと思う。
0456NAME IS NULL
垢版 |
2020/11/16(月) 21:28:14.28ID:5VqfDNor
パッケージソフトをvpn環境でクラサバ運用し始めたのですがクライアントからだとメチャソフトの動作が遅いです。
見直すのはサーバーの性能?クライアントpcの性能?vpnの回線の速度?どこから見直したほうが良いでしょうか?
0457NAME IS NULL
垢版 |
2020/11/18(水) 08:54:02.70ID:???
SQL server2019を買って2017にダウングレードしようと考えてるんですが、やり方を調べると2017の媒体を自前で用意する必要があるのは分かったのですが2017のプロダクトキーも自前で準備するのでしょうか?

2017で持ってるプロダクトキーは他サーバーで稼働中のものしかなく、どちらもバンドル版です。
0458NAME IS NULL
垢版 |
2020/11/19(木) 15:32:39.73ID:???
バンドル版のライセンス関係はその販売元に聞けってのが原則
0459NAME IS NULL
垢版 |
2020/11/19(木) 15:58:34.37ID:???
「他サーバーで稼働中のライセンスを流用できませんか?」 ってバンドル版の販売元に聞くの?

アホか
0460NAME IS NULL
垢版 |
2020/11/20(金) 10:24:55.66ID:???
メディアとプロダクトキーを流用していいか聞くんだが?
ライセンスは2019買う前提だ
バンドル版じゃなければそれで行けるはずだが、バンドル版はいろんな条件が追加されてる可能性があるからな
0461NAME IS NULL
垢版 |
2020/11/20(金) 12:58:39.69ID:???
>>460
他のライセンスのプロダクトキーを流用していいわけないだろ
0462NAME IS NULL
垢版 |
2020/11/20(金) 23:54:47.82ID:???
ダウングレード権でそのプロダクト使う権利あればプロダクトキーも使って良いはずだが
0464NAME 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自分で書くやり方は影響しないのかな?
0465NAME IS NULL
垢版 |
2020/12/01(火) 05:14:39.15ID:???
>>464
接続文字列書き換えるだけじゃないのか
新旧の名前教えてくれ
0466NAME 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に
変えるだけ済むけど
0467NAME IS NULL
垢版 |
2020/12/02(水) 09:50:03.46ID:???
それはADO.NETの初期からあるOLEDB汎用のドライバで、MSOLEDBSQL用ではないわけだが

System.Data.SqlClient から Microsoft.Data.SqlClient にしろってことらしいが
名前空間の変更ぐらいで基本的なクラス名なんかは変更されてないと思うが
細かい動作なんかは未検証だからしらん
0468NAME 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で関係なさそうな物までいろいろひっついてくる
0469NAME IS NULL
垢版 |
2020/12/02(水) 18:20:54.26ID:???
純粋なOLEDBのドライバと、ADO.NETのライブラリと混ぜて話してしまってるな
0470NAME IS NULL
垢版 |
2020/12/03(木) 08:33:29.87ID:???
>>469
ありがとうございます
そもそも違いを意識してませんでした
OLEDBの最新がMSOLEDBSQL
ADO.NETの最新がMicrosoft.Data.SqlClient

現状System.Data.SqlClientで使用しているなら
Microsoft.Data.SqlClientにするのが無難かな
0471NAME IS NULL
垢版 |
2020/12/04(金) 19:30:39.77ID:???
Microsoft.Data.SqlClientで使えるようになった新機能って何があるんだろ
それが必要でなければSystem.Data.SqlClientのままで良いんじゃないか
0472NAME IS NULL
垢版 |
2020/12/07(月) 10:02:07.90ID:???
>>471
そうですね
テストだけで終わりにしときます
0473NAME IS NULL
垢版 |
2020/12/14(月) 16:31:07.70ID:???
GUIでユーザやデータベースのプロパティーを変えるには、Windows + SSMSが必須なのですか?
(Azure Data Studio、SQL Server Data ToolsなどではT-SQLになるのでしょうか?)
公式のドキュメントを見ながら学習しているのですが、どのような項目があるかすら身についていない段階からCUIを使うのは辛いです・・・・
0474NAME IS NULL
垢版 |
2020/12/15(火) 08:09:01.23ID:???
>>473
必須ではないけど勉強するならSSMSであれこれいじってみるのがいいと思うけど
自分は本番環境でもSSMS使いますが
ちっこいテーブルいじる時はアクセス2000
0475NAME IS NULL
垢版 |
2020/12/16(水) 01:48:16.57ID:???
>>474
アクセス2000が使えるSQLServerて古い奴じゃない?
リンクテーブルなら今でも使えるのかな

ADPが使えた時は重宝した
0476NAME IS NULL
垢版 |
2020/12/16(水) 08:28:20.52ID:???
>>475
SQL Server2019とaccess2016だとadp使えないですね
SQL Server2019とaccess2000ならadpル使えますよ(Windows10)

SSMS、テーブルとかストアドを縦にずらっと出てくるだけじゃなくて
業務ごとにグループ分けできると便利なんだけどな
0477NAME IS NULL
垢版 |
2020/12/16(水) 20:31:08.36ID:???
>>476
SQLServer2008とAccess2010の組み合わせが編集できる最後の組み合わせだよね
Accessの方が新しいバージョンでないとスキーマの編集はできなかった
Access2013からadp未対応になったからね
2008R2はどうだったかなAccess2010で対応してたかもしれない
Access2000が対応してたのはSQLServer7までだったかな
0478NAME IS NULL
垢版 |
2021/01/31(日) 00:52:41.31ID:???
OLEDB接続では接続させない
ODBC接続なら接続できる

なんてを設定できますか?
0479NAME IS NULL
垢版 |
2021/02/02(火) 00:19:09.01ID:YPcBm8xr
Oracle Master取得に向けた書籍が結構出ているようですが、SQLServerの資格向けの似たような本はないのですか?
資格自体は興味がないのですが、ある程度網羅的に知識をつけたいんです
0480NAME IS NULL
垢版 |
2021/02/05(金) 21:42:33.86ID:???
そもそもSQL-Serverの資格ってもうないんじゃなかったっけ?
0481NAME IS NULL
垢版 |
2021/02/06(土) 15:47:46.05ID:???
1月末でSQL Serverに特化したMS資格はなくなったから
資格向けの本は本屋にはないだろうね

資格本じゃなく普通の入門書は大きめの本屋に行けばそれなりにあるはず
しっかり学びたければ「Microsoft SQL Server 2012 Internals」がおすすめ
0483NAME IS NULL
垢版 |
2021/02/06(土) 19:00:00.81ID:???
SQL Serverでやってみよう、はよく使った
0485NAME IS NULL
垢版 |
2021/02/16(火) 17:08:42.18ID:???
SSMS v15.0.18369.0で2つ目のクエリウィンドウを掴んで1つ目の下とかにドッキングさせると落ちるんだけど自分のとこだけ?
ここ2、3日で急に発生した
なおOSはWindows 10 20H2 19042.804
0486NAME IS NULL
垢版 |
2021/03/16(火) 15:18:58.11ID:Bn/p8j1N
SSMSで質問です。
KeyであるIDが1から順に降られているテーブルで
ID='201'であるレコードを編集したい場合はどうすればいいのでしょうか?

上位200行に入らないレコードの編集方法を教えてください
0487NAME IS NULL
垢版 |
2021/03/16(火) 16:56:41.51ID:???
あれは簡易的機能だろう
自分はupdate文作って更新してる
0488NAME IS NULL
垢版 |
2021/03/16(火) 19:09:50.37ID:???
>>486
URLが何故か貼れないけど、検索したらすぐ出てくる
0489NAME 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とかもとってみるしかないかな
0490NAME IS NULL
垢版 |
2021/03/18(木) 10:01:17.95ID:???
>>488
出来ました。
ありがとうございました。
0492489
垢版 |
2021/03/18(木) 14:20:31.16ID:???
>>491
ありがとうございます、page splitも見てみる
UPDATEしてるテーブルがインデックス14個もある...適正に作られてるんだろうか
それが原因とした場合、とりあえずはインデックスの断片化の解消、FILL Factorの値の見直しかな

splitは一時テーブルのINSERTも可能性あるのかな
#付きのテーブルで、プロシージャの最初にCreateしてるんだけど主キーもインデックスもなにもなくて
while内でループで一件ずつInsertしてるんだが、IF文で条件満たせばtruncateしてて、最高でも99件しか貯まらないようなテーブルなんだ
Updateの方でsplit多発してる場合、その影響を受けたりするものなのかな
0493NAME 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にしてみるとか
0494NAME IS NULL
垢版 |
2021/03/18(木) 17:57:27.50ID:???
通常のINSERTと遅いINSERTでどの程度の差があるのか?
レコード長は? 1ページに何件入る?
固定長か可変長か?
TRUNCATE直後のINSERTが遅い可能性は?
0495489
垢版 |
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直後が遅いとかそこまでは調査できてないです
0496NAME IS NULL
垢版 |
2021/03/18(木) 22:40:07.73ID:???
MSSQLのtruncateの挙動とマッチしていない…のかも

・truncateすると、レコードにtruncateのマークがされるだけで
 ブロック中で生きてるレコードが無くてもブロックは開放されない
・空きブロックが無く、新たにブロックが必要になったときに、
 その時にtruncateのマークがされたレコードを調査して、
 ブロックが未使用だと判明したらそのブロックを再利用する
0497NAME 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/

でもトランザクションログ周りの可能性とかもあるし
遅くなる時に一緒に発生してる何かをどうにかして掴まないと難しいね
0498NAME IS NULL
垢版 |
2021/03/18(木) 23:26:54.65ID:???
ディスクが死にかけてるとか、ネットワークが不安定とかの可能性は?
つか単にロックウェイトじゃないだろうな
トランザクションと分離レベルどうなってる?
0499NAME IS NULL
垢版 |
2021/03/19(金) 00:25:42.14ID:???
localのtemp tableみたいなのでロックウェイトはないんじゃないか?
0500489
垢版 |
2021/03/19(金) 00:25:58.90ID:???
>>496
プロシージャ内にはテーブル変数にINSERTしてる箇所もあって、ここはINSERT回数は半分くらいなんだけど特に遅くなってないんだ
テーブル変数のほうはTruncateしてないんだけどそこ...かなあ

>>497
今日OSとSQL Serverのパフォーマンスカウンタ取ろうって話になった
教えてくれたところも参考にしつつ調べてみる
遅くなるのが月1〜2回くらいだそうで、今月中にしかけて再発待ちかな

>>498
ハードは異常はないらしい
ロック周りは他になにも処理が動いてなくても遅いときがあるってんで調べてないがおさえてみる
0501NAME IS NULL
垢版 |
2021/03/19(金) 02:31:40.64ID:???
テスト環境では再現しない?

該当のストアドの単独実行か複数の並列実行で再現したら絞りやすい
再現しなければしないで本番環境特有の設定か他の処理の影響を受けてることが分かるので半歩前進
再現しない環境と本番環境で各種測定結果の比較もできる

月1~2回しか発生しないならそのタイミングで他に動いてた処理を把握できれば調査進みそう
0502489
垢版 |
2021/03/19(金) 13:11:32.42ID:???
>>501
テスト環境の再現テストは難しい
本番でも再発頻度が高くなくて、やるとするとその時の同じデータを持ってくる必要があるが、テストサーバにリソースがそんななく、テスト環境には持って来れない機密情報も含んでて、そこをどうにかするマンパワーも割けない
ストアドは構造上同時実行は不可

俺自身はそこの開発メンバでもなくて、物理的にというか地理的に本番どころかテスト環境にもアクセスできない立場なんで直接手動かすこともできないのです
0503NAME IS NULL
垢版 |
2021/03/20(土) 00:29:36.15ID:???
あとは早い時と遅い時の実行プランが同じか見るぐらいかなぁ
テータ大量更新した後で発生しやすいとかなら疑ってみてもいいかも
パラメタスニッフィングでググってみて
0504489
垢版 |
2021/03/21(日) 10:09:19.60ID:???
>>503
処理後にdm_exec_query_planも取ってて比較はしてみた
パターンが2つあって、最初のカーソル宣言のとこが違うんだが、InnerJoin(NestedLoop)してるテーブルの結合順番が違うのと、SQLに書かれてないカラムが出力項目にあるという違いがある(後者はなんでそうなるのかわからない)
ただ、早いときと遅いときでパターンが分かれてる感じでもないのでプランからは原因は分からなかった
0505NAME IS NULL
垢版 |
2021/03/21(日) 12:14:07.24ID:???
SQLは変わらないのにNested Loopの結合順が変わるなら
統計情報を元にした件数予測が逆転することがあるってことだよね

結合順は速度にほぼ影響ない場合もあれば大幅に影響する場合もあるので
それだけじゃなんとも言えないが実際どうなのか再現テストやる価値はありそう
0506NAME IS NULL
垢版 |
2021/04/22(木) 17:20:45.84ID:nSxF6+DB
sqlserver 2012 localdbなんですが、
SSMS等でデータを確認しても、明らかに存在しないのに
重複キーエラーでInsert出来ないデータがあります。

DBファイルを色々入れ替えて使用したため、
Indexファイルの整合性が崩れているのだと推測しますが、
どこを初期化すれば治るのでしょうか?

sp_updatestatsは試しましたがダメでした
0507NAME IS NULL
垢版 |
2021/04/22(木) 18:43:36.91ID:???
キーが重複してないのに重複キーエラーも聞いたことがなければ
indexの整合性が崩れるってのも聞いたこと無いなぁ
indexが不整合を起こしてる可能性を疑ってるならとりあえずdrop/createすればいいんじゃないの?

複数件insertしててエラーでトランザクションがロールバックしてるので
テーブルには該当データがないように見えるとか?
0508NAME IS NULL
垢版 |
2021/04/22(木) 21:42:23.00ID:???
Reporting Serviceって何処のスレで聞けば良いの?
初めてやるんだけど、帳票を出すためのツールって事くらいをようやくわかり書けてきたところ
0509NAME IS NULL
垢版 |
2021/04/23(金) 08:41:43.91ID:???
PowerBI使ってとけ。
今からssrsだと後悔するぞ
0510NAME IS NULL
垢版 |
2021/04/23(金) 13:36:29.46ID:???
>>506
とりあえず DBCC CHECKDB じゃね
localdbでできるのかどうか知らんけど
0512NAME IS NULL
垢版 |
2021/06/17(木) 12:50:08.04ID:bQpmAAKU
おまえら接続プロバイダは何使ってる?
おれは、MSDASQL
0513NAME IS NULL
垢版 |
2021/07/05(月) 12:25:38.17ID:???
With句使えますか?
使ってみたいので
0515NAME IS NULL
垢版 |
2021/07/10(土) 17:26:45.17ID:???
select into #tmpの方が使いやすいね
0516NAME IS NULL
垢版 |
2021/08/05(木) 22:36:51.55ID:btL3ovFW
ユーザーCALって、後からライセンス数増やすのは、追加分購入して認証するだけで増やせるの?
0517NAME IS NULL
垢版 |
2021/08/07(土) 01:05:53.66ID:???
>>516
製品版使うときはコアライセンスぐらいしか使ったことないよ
ユーザーCALってどのくらいの規模で使ってるの?
ファイルサーバのユーザーCALなら使ったことある
認証が無かった時期で自分で数字を入れるだけで、ごまかそうと思えば多めの数字を入れるだけだけだった
業務用でライセンス数をごまかすようなことはないから当時は厳格な管理はしてなかったね
0518NAME 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
0519NAME IS NULL
垢版 |
2021/08/31(火) 19:43:02.17ID:T0bkdi6G
テーブル名に半角スペースつけて作成したら
半角スペースなしでテーブル作ろうとしたわ重複してるって言われる。バグなの?
0521NAME IS NULL
垢版 |
2021/08/31(火) 23:34:39.11ID:???
末尾にスペースなんじゃね
0522NAME IS NULL
垢版 |
2021/09/01(水) 02:12:00.19ID:???
>>519
SSMSのGUIだと不具合があるとかないかな
SQL文なら問題無いことが多い
また、単純に、既にビューがあるとかという落ちもあったり
0524NAME IS NULL
垢版 |
2021/09/01(水) 23:43:12.04ID:N1bzhcTm
なんで半角スペースを使おうとしているのかがわからない。
0525NAME IS NULL
垢版 |
2021/09/02(木) 02:18:44.81ID:w7l5TODt
>>524
そこはそうしちゃっただけ
0526NAME IS NULL
垢版 |
2021/09/02(木) 08:09:01.61ID:???
間にスペースはまだわかるけど最後にスペースはさすがに理解できん
0527NAME IS NULL
垢版 |
2021/09/02(木) 08:35:15.22ID:???
規約でテーブル名の桁数決まってんだよ
0528NAME IS NULL
垢版 |
2021/09/02(木) 09:15:13.80ID:???
だとしても普通アンダースコアとかにしないか?
0529NAME IS NULL
垢版 |
2021/09/02(木) 09:37:12.56ID:???
すごい規約だな
COBOLっぽさがあるけど普通はDB側じゃなくプログラム側で対処するよな
0530NAME IS NULL
垢版 |
2021/09/02(木) 10:47:39.48ID:???
そんな規約があるような所はテーブル名もT0001234とかじゃねーの?
0531NAME IS NULL
垢版 |
2021/09/02(木) 18:14:09.97ID:???
日本語の処理オプションの設定
0532NAME IS NULL
垢版 |
2021/09/04(土) 04:20:49.33ID:sVLT48pB
クライアントソフトからsqlでビューの登録がタイムアウトしてしまう。何が原因かどうやりゃいいの?
0533NAME IS NULL
垢版 |
2021/09/04(土) 10:36:14.21ID:???
>>532
エラーメッセージで何がタイムアウトをしてるのかは確認できてる?
0534NAME IS NULL
垢版 |
2021/09/04(土) 12:52:19.62ID:sVLT48pB
>>533
以下で、何が原因かは特定できません。

「実行タイムアウトの期限が切れました。操作完了前にタイムアウト期間が過ぎたか、サーバーが応答していません。」
0535NAME 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なら秒単位の時間がかかったりしないから
何か待たされてるんだろうけどぱっと思いつく原因はないな
0536NAME IS NULL
垢版 |
2021/09/04(土) 18:09:08.99ID:sVLT48pB
sql Server側で、クエリパフォーマンス分析や構造分析って
プロファイラー以外になにつかってます?
0537NAME IS NULL
垢版 |
2021/09/04(土) 20:30:42.16ID:???
構造分析ってなんかわからんけど
クエリのパフォーマンス分析はEXPLANが基本 (SET SHOWPLAN_ALL ON)
実際実行した結果はSET STATISTICS IO ONとSET STATISTICS TIME ONで確認

トレースとるのは正常に実行されないクエリに悪影響を及ぼしてるものが
他の方法では簡単に特定できないような場合に使う
性能に影響でるから運用中の本番環境で使うのは最終手段
0538NAME IS NULL
垢版 |
2021/09/05(日) 14:11:40.60ID:???
とりあえず流したSQLとどうやって実行したか曝せよ
ビューの登録ってのが何のことかわからんが、Create Viewがそうそうタイムアウトするとは思えん
0539NAME IS NULL
垢版 |
2021/09/09(木) 20:27:34.53ID:???
alter view ではtime outはよくある
使ってるviewをalterするとデットロックする
0540NAME IS NULL
垢版 |
2021/09/10(金) 01:03:31.08ID:JMgjI8OA
sqlの中の括弧の対応関係を色付けしてくれる機能ってssmsであります?
0541NAME IS NULL
垢版 |
2021/09/12(日) 08:06:05.73ID:???
>>539
deadlockとtimeoutはエラーメッセージが違う
0542NAME IS NULL
垢版 |
2021/09/13(月) 00:55:02.75ID:???
単なるタイムアウトをデッドロックとか言う人多いよね

まあSQL Serverはalter viewもトランザクション内でできたはずだから
デッドロックすることもなくはないんだろうけど
0543NAME IS NULL
垢版 |
2021/09/13(月) 08:13:14.58ID:8fCPiXxw
排他ロックとデッドロックを間違えるレベルはひどいなw
0544NAME IS NULL
垢版 |
2021/09/22(水) 02:05:41.92ID:iue4uJKZ
csvファイルでテーブルをキーが一致したらレコード洗い替えたい。バッチファイルとか実行すると作動するようにしたい。
可能ですか?
0545NAME IS NULL
垢版 |
2021/09/22(水) 12:58:41.05ID:???
Accessはもう諦めたのか?
そんなんじゃ何一つ出来ないぞ
0546NAME IS NULL
垢版 |
2021/09/22(水) 13:34:54.24ID:xdPa75UG
>>545
ん?
0548NAME IS NULL
垢版 |
2021/09/23(木) 12:16:42.00ID:bPVhBfA6
>>547
やり方おしえてよ
0550NAME IS NULL
垢版 |
2021/09/23(木) 20:35:31.15ID:bPVhBfA6
sqlcmdをサーバはインストールしてるけど
クライアントはしてない場合にも
実行できる方法ない?
0552NAME IS NULL
垢版 |
2021/09/23(木) 21:00:49.66ID:???
>>550
何らかの方法でサーバーにログインして実行すればいいんじゃね?
0553NAME IS NULL
垢版 |
2021/09/23(木) 21:10:39.70ID:???
インストールしたらよくね?
0554NAME IS NULL
垢版 |
2021/09/26(日) 10:51:50.76ID:???
>>550
SQLServerのドライバはOS標準で組み込まれてるんだから、バッチ処理で良いんならJSやVBSを使えば良いんじゃないの
PSよりはVBSの方が情報が多いように思うし、OFFICEが使えるならVBAでも良いんじゃないの
というかOFFICEが入ってるならMSクエリとかが使えるか

>>553
クライアント環境にはできるだけツール類はいれたくないだろ
0555NAME IS NULL
垢版 |
2021/09/26(日) 12:12:38.40ID:???
>>554
>クライアント環境にはできるだけツール類はいれたくないだろ

DBを直接操作する人間のクライアントにsqlcmdとかSSMSが入ってないほうが意味がわからないんだけど?
まさかエンドユーザーにやらせようとしてんの?
0556NAME IS NULL
垢版 |
2021/09/26(日) 14:12:03.66ID:5SVUANCV
>>555
そう
一般利用ユーザーにテーブル更新させる
別にそういうとこあるでしょ
0557NAME IS NULL
垢版 |
2021/09/26(日) 15:46:53.78ID:???
>>556
そういうのは普通アプリケーション経由で処理するから
エンドユーザーのクライアント環境でバッチを流したりはしない
入力データが不正だったり更新が競合したりしても
エンドユーザーレベルのリテラシーで対応できるようなものを作る

各ユーザー専用のテーブルのみ更新するような場合で
データが壊れても再作成すればいいような重要度の低いものなら
そういうやり方もありえるのかもしれないが
問い合わせが増えるだけだからまずやらない
0558NAME IS NULL
垢版 |
2021/09/26(日) 16:43:12.12ID:5SVUANCV
>>557
クライアント側のアプリケーションだと
レコード削除はできない制約あるパッケージとか多くない?
スクラッチならやるけど
0559NAME IS NULL
垢版 |
2021/09/27(月) 11:31:27.95ID:BOre3vig
クライアントアプリが制限されているから
BATでやりたいと……

なるほど!理解した!
0560NAME IS NULL
垢版 |
2021/09/27(月) 14:50:56.29ID:???
データの洗い替えをユーザーにやらせるのは聞いたことないな
マスタメンテで複数件一括更新することを洗い替えと呼んでるのかもしれないが
0561NAME IS NULL
垢版 |
2021/09/27(月) 17:18:19.08ID:???
マスタメンテ機能そのものが用意されてなさそう
0562NAME IS NULL
垢版 |
2021/09/28(火) 00:20:14.32ID:moPRyYxu
マスタじゃないよ、トランザクション
0563NAME IS NULL
垢版 |
2021/09/28(火) 07:33:03.07ID:???
闇が深すぎて救いようがないな
0564NAME IS NULL
垢版 |
2021/09/28(火) 10:02:47.41ID:???
トランザクションなら本来の意味での「洗い替え」っぽいけど
だとしたらユーザー入力のcsvファイル使って
ユーザー環境でバッチ実行させる意味がますますわからん

わかる人いたら解説してくれ
0565NAME IS NULL
垢版 |
2021/09/29(水) 17:04:04.45ID:???
こういう当たり前のアプリケーション設計知識って実務経験以外で手に入れるのは難しいのかもね
0566NAME IS NULL
垢版 |
2021/10/03(日) 07:29:19.61ID:???
>>564
話を聞いてて、うちの会社でも同じような例があった
本社のシステム部門がDBを管理していて、事業部のシステム部門がマスタを更新したいって例があった。
本社部門は、テーブルを直接操作する権限は与えたくないんだけど、更新作業を自分たちでやりたくない、インターフェースのアプリを作りたくない
というような流れ、本社部門がしっかり作りこめば良いだけなのにね
0567NAME IS NULL
垢版 |
2021/10/03(日) 09:51:16.00ID:???
システム部門がユーザーの場合は全然話が違うでしょ

やり方はいろいろ有るけど単純なのはファイル連携で定期スケジューリングしたバッチジョブ流すだけ
エラー時は入力データを用意した関係者にエラー内容を通知するようジョブを組んでおけば十分なので
ユーザーインターフェースを用意しなきゃいけないような話ではない

自分たちが管理してないDBを直接SQLで更新したいってのも論外だし
事業部のシステム部門があるような大企業でマスタの更新バッチすら作らないような本社システム部門はかなりヤバい
0568NAME IS NULL
垢版 |
2021/10/03(日) 12:27:53.85ID:???
てか、事業部がどんな大きさなのかわからんけどシステム部門を抱えてるレベルなら事業部のDB持ってないの?
コンプライアンスとかで本社のシステム部門が統括管理してるのかな?
それであっても簡単なメンテツールを事業部システム部門が作ればいいだけだと思うけど…
0569NAME IS NULL
垢版 |
2021/10/13(水) 21:58:34.60ID:???
updateなのに重複するキーを挿入できませんと怒られる
そんなこと有り得るのかな
0571NAME IS NULL
垢版 |
2021/10/14(木) 00:17:12.64ID:???
キー値を書き換えた
トリガーでなんかした

まあ他にもあるかもしれんが、ありえる
0572NAME IS NULL
垢版 |
2021/10/14(木) 00:19:10.66ID:???
>>567>>568
おっしゃる通りです
日立とかIBMのホスト系しか扱ったことがない方が多くて、人員も世代交代に失敗していて古いシステム構成のまま改悪が続いてる
事業部側も人員がいなくてシニア契約社員が主戦力になってるような会社なんです
若い有能な人は見切りをつけて転職していく
個々の担当者はそれなりなんだと思うけど、経営がちょっと抜けてる感じでどうしようもない
0573NAME IS NULL
垢版 |
2021/10/14(木) 07:04:25.37ID:???
>>570
ありえました
と同時に絶望しました
もう作った人に修正させてと思いました
0574NAME IS NULL
垢版 |
2021/11/10(水) 05:15:39.36ID:???
付加列インデックスって関数の引数に使ってくれる?
where句、select句どっちも使う、使わない、どっちかしか使わないとかわかる資料ってどっかにあるかな?
0575NAME IS NULL
垢版 |
2021/11/10(水) 16:34:28.00ID:???
SQL Serverは関数インデックスをサポートしてないから
付加列インデックスかどうかやkeyかnon-keyかに関係なく
関数の引数に使った場合はindex seekにはならないよ

computed columnでkeyならwhere句で使える
non-keyはwhere句では使えない
0576NAME IS NULL
垢版 |
2021/11/11(木) 16:52:52.42ID:???
>>575
やっぱそうだよね。
なんか遅いクエリの実行プラン確認したときに出てきた足りないindexの中の付加列にisnull関数噛ませてるカラムが出てたんでもしやと思ったんだけど。
バージョンは2017です
ありがとうございました
0577NAME IS NULL
垢版 |
2021/11/11(木) 18:26:27.79ID:???
ん?
isnullってことはwhere句で使ってるんじゃないの?
であれば付加列インデックスの使い方間違ってる

あとちゃんとインデックス作っても
isnull自体にパフォーマンスの問題あるから違う方法に変えたほうがいいかもしれない
0578NAME IS NULL
垢版 |
2021/11/11(木) 20:29:26.94ID:???
>>577
そう。where句で使っていてselect句にはないカラムです。
付加列インデックスの使い方の件はわかってたんだけど、実行プランの足りないインデックスにisnull関数に噛ませてるカラムが付加列に入ったインデックスが出てきたんで、あれ思い違いしてたんかな?と思って質問させていただきました。

違う方法についてはよくある触りにくい、他の方法はコストがかかるってやつです。
まぁ、インデックスの追加も方法の一つとして、他の案も含めて考えます。
0579NAME IS NULL
垢版 |
2021/11/11(木) 20:51:37.87ID:???
この一連のやり取りが理解できないのは俺だけか?

とりあえず、その他の条件が満たされるなら
関数の引数でも、付加列の目的である余計なキー参照はしなくて済むぞ
0580NAME IS NULL
垢版 |
2021/11/11(木) 21:31:46.51ID:???
>>579
分かりづらかったのならすまんね。
今回の質問は問題解決ではなく仕様確認になるのかな

とある遅いクエリ流したら実行プランの確認でこれが足りないよって言われたインデックスにwhere句のisnull関数の引数に使ってるカラムが付加列として出てきました。
関数の引数にインデックスのカラムは使えないと思ってたんだけど、付加列ならいけるの?ってことで質問しました。

とある遅いクエリの改善についてはどうでもいいです
0581NAME IS NULL
垢版 |
2021/11/11(木) 21:43:45.41ID:6iIlck1C
なぜやってみないのか?
0582NAME IS NULL
垢版 |
2021/11/11(木) 23:20:50.43ID:???
使えないとはどういうことを言ってるんだ?
インデックスはってもそのカラムが使えなくなることなんてないぞ

実行時にそのインデックス使うかどうかはわからんがな
そのパターンでインデックス使って早くなるのは大体はキー参照しなくて済むパターン
だから通常のインデックス列ではなくて付加列で良いというお薦めだろう
0583NAME IS NULL
垢版 |
2021/11/11(木) 23:40:31.54ID:???
さすがにそれは文脈でわかってやれやw
0584NAME 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型 なのは許して。元のテーブルがそうなんで
0585NAME IS NULL
垢版 |
2021/11/12(金) 00:37:13.12ID:???
サジェストされてるインデックス追加すれば付加列としての効果はあるね

でもそもそもBETWEENの左側に固定値をもってくる書き方って有りなのかなぁ
isnull不要にしてfirst_data, last_dateをキーとしてインデックスはっても
Index Seekにはならないような気がするんだけど実際どうなんだろ
0586NAME IS NULL
垢版 |
2021/11/12(金) 01:46:20.70ID:???
>>585
付加列の効果あるんですか。

>でもそもそもBETWEENの左側に固定値をも>ってくる書き方って有りなのかなぁ
なるでしょっ、て思い込んでたんで改めて
isnull不要にしてfirst_data, last_dateをキーとしてインデックスはってfirst_data, last_dateのbetweenのみで実行してみたら、最適化の段階で大なり小なりに展開されてindex seekになってますね。実行プラン見る限りは
0587NAME 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のみで実行してみたら
0589NAME IS NULL
垢版 |
2021/11/12(金) 17:47:15.17ID:ud1MiESj
>>584
WHERE句の条件の書き方が異常
0590NAME IS NULL
垢版 |
2021/11/12(金) 17:48:55.65ID:ud1MiESj
>>585
もうあんたの書き込みはネタとしか思えないんだけど?
0591NAME IS NULL
垢版 |
2021/11/12(金) 18:25:15.51ID:wE0oiQg0
>>584
インデックスにこだわっている理由は?
0592NAME IS NULL
垢版 |
2021/11/12(金) 19:08:33.33ID:???
>>591
こだわっている理由というか、このクエリでなんでこの条件がパフォーマンス改善の候補として上がってきたのかの理由が知りたい。

自分の今持っている知識が間違っているのだろうけど、この付加列が入ってくる理由がわからないので


前にも書いたけど、元の処理のパフォーマンス改善自体はどうでもいい
0593NAME IS NULL
垢版 |
2021/11/12(金) 19:18:04.33ID:wE0oiQg0
isnull関数を使っているから、他人には何を知りたいのかわからない。
0594NAME IS NULL
垢版 |
2021/11/12(金) 19:42:04.72ID:???
インデックスに付加列しとけばインデックスの読み込みだけで済むからでしょう
付加列にないカラムを参照したらインデックス以外にテーブルも読み込みしないといけないから遅くなる
0595NAME IS NULL
垢版 |
2021/11/12(金) 19:54:35.42ID:wE0oiQg0
典型的なSQL Server脳だなw
0596NAME IS NULL
垢版 |
2021/11/12(金) 19:55:36.00ID:wE0oiQg0
インデックスそのものが大きければ意味がない。
0597NAME IS NULL
垢版 |
2021/11/12(金) 21:42:13.95ID:???
いつもの嫌なやつ召喚しちゃったね・・・
0598NAME IS NULL
垢版 |
2021/11/12(金) 22:17:40.73ID:wE0oiQg0
インデックススキャンにしなければいけない→テーブル全体のインデックスを作る→このインデックスはいらないのでは?
0600NAME 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クエリでまとめて実行し実際の実行プランを確認
0601NAME 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%
となりました。
0602NAME IS NULL
垢版 |
2021/11/13(土) 19:29:49.86ID:???
>>575の通りの理解だったので、なぜこのように動くのかがわかりません。
何か知っている方や理解に誤りなどありましたら教えていただけると助かります
0603NAME IS NULL
垢版 |
2021/11/13(土) 21:36:11.89ID:???
>>601
演算のパーセント表示だけで比較されてもわからんがな
0604NAME IS NULL
垢版 |
2021/11/14(日) 02:47:16.70ID:???
>>603
では、他にどのような情報がアレバ良いのですか?
0605NAME 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見て把握しておくといいと思う
0606NAME 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句で利用される」のはどのような場合か、明確な基準があるのかなどがわかれば教えていただければとおもいます。

一部表現が適切でなく伝わりにくい部分があるかと思いますが汲み取っていただけると助かります。
0607NAME IS NULL
垢版 |
2021/11/15(月) 01:23:19.68ID:???
利用されないのはオプティマイザが利用しても効果がないと判断したからで、効果があると思えば利用する
それだけのこと
べつに引数や計算だろうと直接の比較だろうと同じなんだが
0608NAME IS NULL
垢版 |
2021/11/15(月) 02:06:34.07ID:???
>>606
column02だけでindex seekしてるのか
column02に加えてfirst_dateやlast_date含めてindex seekしてるのかseek predicatesで確認した?
0609NAME 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が効いている」と表現していたのですが、これは一般的に間違っていますか?
質問の中で色々表現がおかしく、理解しづらい部分もあったと思いますので少しでも修正できればと思っております。
0610NAME IS NULL
垢版 |
2021/11/15(月) 23:40:19.19ID:???
>>607
今迄はあなたと同じように「オプティマイザの気分」で済ませてたのですが、今回は少し突き詰めたかったのです
0611NAME IS NULL
垢版 |
2021/11/16(火) 00:00:34.73ID:???
SQLserverのハードを買い替えようと検討してもるんだけどストレージをSSDしても大丈夫か聞きたい。
SSDは書き込みの回数制限があり、頻繁な書き込みのあるSQLserverには向かないと昔聞いた事あったんだけど今は大丈夫か教えて下さい。
0612NAME IS NULL
垢版 |
2021/11/17(水) 00:13:51.33ID:???
>>611
SQLserverに向かないってよりもアクセス頻度の問題のような気がするけど。
ssdって言ってもqlc,tlc,mlcのような種類もあるし。
ただ、前にベンダーに見積もりとった時に聞いたのは利用用途が中規模のwebサービスなら、5年位であればそんなに気にしなくて良いって言われた。(ここでのSSDの種類が何か、中規模がどの程度かは忘れた。参考にならずすまん)
ちなみにどんな利用用途なの?
社内用か、インターネットに公開してるサービスなのか(1日のアクセスはどの程度か)、それとも個人用か

個人用でもなければどこかのベンダーに話聞いちゃった方がいいかも
0613NAME IS NULL
垢版 |
2021/11/17(水) 18:17:30.15ID:???
>>612
アドバイスありがとう
用途は会社でデータウエアハウス的利用です。日次で基幹システムからデータ取得して蓄積するようなデータサーバです。
DELLの直販で買う予定でサーバ向けSAS接続のSSDだから大丈夫だと思う。
一応DELLに問い合わせしときました。
0614NAME IS NULL
垢版 |
2022/01/22(土) 16:40:07.61ID:ANkLRIq9
レプリケーションというのを初めて設定しているのですが
「スナップショットエージェントが起動していません」のMSGが
出てスナップショットが取れません。
これってSQL Server エージェントとは別物ですか?
SQL Server エージェントは起動しているのに…。
すみませんが、わかる方がいたら教えて下さい。
0615NAME IS NULL
垢版 |
2022/01/26(水) 17:15:02.37ID:IRw1UwiV
オブジェクト名'sysservers'が無効です。エラー208
これどういった調査をすれば良いのでしょうか?
0616NAME IS NULL
垢版 |
2022/01/26(水) 19:31:05.33ID:???
sys.servers じゃね?
0617NAME IS NULL
垢版 |
2022/01/27(木) 01:31:47.35ID:???
将来のバージョンで廃止予定とかになってるけど、バージョンいくつ使ってるんだろうな
0619NAME IS NULL
垢版 |
2022/01/27(木) 17:53:32.89ID:???
何をどうしたらそのエラーが出たのかと、エラーメッセージを正確にかけ
0620NAME IS NULL
垢版 |
2022/01/27(木) 18:24:31.13ID:???
サブスクリプションの新規ウィザードで
パブリケーションを選択して次へをクリックすると
先のメッセージと一緒に「パブリケーションの
情報が取得できません」のMSGが出て先に進めません。
SQL SERVER2008R2です。
2019の評価版で試すと問題なく設定できます。
0621NAME IS NULL
垢版 |
2022/01/27(木) 21:44:41.14ID:???
パブリケーション側のバージョンは?
0622NAME IS NULL
垢版 |
2022/01/27(木) 22:05:05.99ID:???
パブリケーション側のバージョンが2008なのかな?
SSMSのバージョンを2008をサポートしてる古いやつで試すといいんでない?
0623NAME IS NULL
垢版 |
2022/01/28(金) 05:39:07.73ID:???
>>622
パブリケーション側が2008です。
SSMSのバージョンについては
全く頭にありませんでした
試してみます
ありがとうございました
0624NAME IS NULL
垢版 |
2022/01/28(金) 08:10:53.42ID:98qoK9/E
>>622
サブスクリプション側のSSMSをver10に変えたら出来ました。
本当にありがとうございました。
0625NAME IS NULL
垢版 |
2022/03/16(水) 06:19:16.79ID:???
大したデータ量でもないのに「クエリの実行中にMemoryGrantを25秒間待機する必要がありました」との警告が出て処理が遅くなるんですが対処法はないでしょうか。
また値が1, (2 or 3), (4 or 5)でそれぞれ集計したいのですがどのようなSQLにすればいいのでしょうか
0626NAME IS NULL
垢版 |
2022/03/16(水) 16:26:28.69ID:???
>>625
>大したデータ量でもないのに「クエリの実行中にMemoryGrantを25秒間待機する必要がありました」との警告が出て処理が遅くなるんですが対処法はないでしょうか。
テーブルとインデックスの構成、クエリ内容、実行プランを確認して原因を突き止めてください
原因が分かったらテーブルやインデックスを変更したりクエリを変更して対処してください

>また値が1, (2 or 3), (4 or 5)でそれぞれ集計したいのですがどのようなSQLにすればいいのでしょうか
現在のテーブル構造と欲しい結果のイメージを提示してください
0627NAME 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
0628NAME IS NULL
垢版 |
2022/03/19(土) 18:54:37.22ID:???
開発サーバにいれるSQLServerのエディションをDeveloperにするの問題ないでしょうか
利用目的はシステム改修の開発単体テストから総合テスト、受入テスト
あとは本番サーバで不具合でたときの検証目的で使用するのは数名〜Max20人くらい
バージョンアップの準備してて、経緯不明なんですが開発サーバが今Enterprise入ってて変えて問題ないなら変えたい
本番はEnterpriseです
0629NAME IS NULL
垢版 |
2022/03/20(日) 13:06:14.65ID:???
>>625
MemoryGrantで待機ってメモリが足りてない
・SQLServer以外のプロセスがメモリ食ってSQLServerのメモリが小さくなってる可能性
→SQLServerの最大メモリ最小メモリの設定、SQLServerのサービスアカウントにメモリのページロックの特権がついてるか
・メモリめっちゃ使うクエリが同タイミングで動いてる可能性
→パフォーマンスモニタのBufferManagerカウンターで急激な変動がないか確認、動的管理ビューでその時間帯に動いてたクエリででかいのを調べる
・そのクエリがめっちゃメモリ食う
→これは626

昔使うメモリの計算に不具合あった覚えあるけど、あれは2008か2012くらいのSPで解消されてたような
0630NAME IS NULL
垢版 |
2022/03/25(金) 16:26:14.25ID:???
Express版は10GBまでは使用できるようですが、
10GBを超えそうだという警告などは設定できるのでしょうか?
定期的に使用領域を確認していないと、ある日突然なにもできなくなってしまうのでしょうか?
0631NAME IS NULL
垢版 |
2022/03/26(土) 05:22:50.26ID:???
>>630
このページにあるクエリを実行するスクリプトを作成し、タスクスケジューラで定期実行してみてはどうでしょうか
クエリの結果をもとに、自分で決めたしきいち値超えたら警告メールを送るような処理も加えると監視をほぼ自動化できそうですね
0632NAME IS NULL
垢版 |
2022/03/26(土) 05:24:39.02ID:???
>>630
ページの情報が抜けてた。。。
「データベースのデータとログの領域情報を表示する」でググってみてください
0633NAME IS NULL
垢版 |
2022/03/27(日) 04:43:57.62ID:g/u0dazF
ディスク容量を常に気にしていない運用という点が突っ込みどころなんだろうな
0634NAME IS NULL
垢版 |
2022/03/27(日) 09:21:36.36ID:???
今どき10GBの容量を気にする運用って…
0635NAME IS NULL
垢版 |
2022/03/27(日) 12:27:12.36ID:???
>>631-632
ありがとうございます
クエリで問い合わせられるのなら、いろいろできそうです
0636NAME IS NULL
垢版 |
2022/03/27(日) 14:58:09.23ID:???
>>633
ディスク容量を常に気にしたところで役に立たないという点が突っ込みどころなんだろうなww
0637NAME IS NULL
垢版 |
2022/03/27(日) 21:51:16.43ID:g/u0dazF
>>636
どこにファイルが作られているのかを気にしてない時点でおかしんだけどな。
0638NAME IS NULL
垢版 |
2022/03/27(日) 22:22:31.32ID:???
> どこにファイルが作られているのかを気にしてない
どこからそんな妄想が?w
0639NAME IS NULL
垢版 |
2022/03/27(日) 22:26:31.76ID:???
>>637
知らんのなら大人しくしとけよw
お前のオツムのほうがよっぽどおかしいぞ
0640NAME IS NULL
垢版 |
2022/03/28(月) 20:26:23.25ID:???
今、自分1人で使ってるスタンドアロンのACCESS DBがクソ重くて激不安定なので
同じ事をSQL serverでやろうとしてるんだけど
1人でスタンドアロン使用の場合、Developer版を
「永遠に開発中」という設定にしとけばライセンス違反にならない?
0641NAME IS NULL
垢版 |
2022/03/28(月) 23:45:33.37ID:YrCsxNrI
>>640
Expressを使わずにDeveloperを使わないといけない理由は?
0642NAME IS NULL
垢版 |
2022/03/29(火) 01:49:02.52ID:???
ちんちんシュッ!シュッ!シュッ!
0644NAME IS NULL
垢版 |
2022/03/29(火) 08:14:33.09ID:???
>>641
別にexpressでもいいんだけど
単にdevelopは制限が全くないのでこっち使おっかな、程度の事です
0645NAME IS NULL
垢版 |
2022/03/29(火) 08:20:42.50ID:???
そんなやつがライセンス気にしてるのかw
0647NAME IS NULL
垢版 |
2022/03/29(火) 13:26:38.05ID:???
>>640
止めとけ
素直にMySQLかPostgreSQL使え
0648NAME IS NULL
垢版 |
2022/03/29(火) 23:39:12.46ID:BT3fAchA
>>647
そんな理由で別製品にするなんて素人が言うことだろw
0649NAME IS NULL
垢版 |
2022/03/30(水) 00:51:56.50ID:???
SSMSでストアドのテストドライバ生成機能ってありますか?
※Sqldeveloperみたいな感じの、っていう表現で伝わりますかね

あるいは皆さんの、ストアドの単体テストの楽な方法とかも何かtipsがあれば
0650NAME IS NULL
垢版 |
2022/03/30(水) 01:29:25.29ID:???
Visual StudioのSQL Server Data Tools(SSDT)
0651NAME IS NULL
垢版 |
2022/03/30(水) 02:36:50.14ID:Q0Wnmomb
>>649
そもそもTransact-SQLをわかってますか?
0652NAME IS NULL
垢版 |
2022/03/30(水) 09:01:40.57ID:???
いつものことながらID付きはとことん的外れだな
0653NAME IS NULL
垢版 |
2022/04/02(土) 00:32:00.52ID:???
接続文字列のData SourceとServerに違いはあるの?
どちらもサーバーのインスタンス名かIPアドレスとポートの指定だと思ってるけど
0654NAME IS NULL
垢版 |
2022/04/02(土) 03:40:35.60ID:???
SQLServerでServerといったら基本的にはSQLServerがインストールされているサーバーかサーバーとそのインスタンス名まで
DataSourceとなるとSQLServer以外のDBMSやフラットファイルも含まれる
0657NAME IS NULL
垢版 |
2022/04/05(火) 18:16:10.44ID:???
>>656
ごめん自己解決
間違ってF5押してたわ
0658NAME IS NULL
垢版 |
2022/04/06(水) 22:53:45.80ID:2Dm57SjU
F5キーでコミットとはおそろしい発想だな
0660NAME 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変えれば治りそうな感じではあるのですが・・

なにか情報をお持ちの方のお知恵を拝借したく・・・
何卒よろしくお願いいたします。
0661NAME IS NULL
垢版 |
2022/05/19(木) 17:06:40.47ID:???
bigintだけじゃなくて、bit型で値がNULLだったりしたらそんな感じになった気がする

まあ、クライアントがまったく同じバージョンでまったく同じデータを表示して起こるなら
ネットワーク系の問題の可能性が高そうだけど
それかODBC定義が違ってるとか
ウィルスチェック系のソフトが悪さしてるんじゃね
0663NAME IS NULL
垢版 |
2022/05/25(水) 01:02:51.71ID:q0WabceL
sql serverにアプリから接続しているクライアントPCって
利用状況モニターで確認できますが、過去の履歴ってどこから見れますか?
0664NAME IS NULL
垢版 |
2022/05/25(水) 11:21:36.57ID:???
>>663
利用状況モニターってたぶん動的管理ビューから情報とってるから、それの過去データ見たいならそれをとるように設定しないと
データコレクションがそれなんだろうが自作でクエリ組んでSQLAgentで動かすほうがカスタマイズしやすいと思う
あとは、どういう風にデータを見たいかだけど拡張イベントでログインログアウトとるとかも有りかな
0665NAME IS NULL
垢版 |
2022/05/25(水) 16:42:31.89ID:???
どういうログがいるのかわからんが、監査ログで良いんじゃないか
0666NAME IS NULL
垢版 |
2022/05/25(水) 23:54:39.54ID:???
監査ログって拡張イベントを監査用にまとめただけでしょ
簡単にやれるぶん融通がきかない
項目とフィルタの設定の自由度ほしいなら拡張イベント一択
0667NAME IS NULL
垢版 |
2022/11/15(火) 22:39:41.69ID:54ouQ1K1
sql sever 2019で、ファンクションを作成しています。
その処理の中で、番号を管理する列から最大値を取得して1を加えたものを新しい番号として同じテーブルにインサートしようとしています。
その処理の間に、他からこのファンクションを呼び出されて割り込まれることを防止するため、ファンクションが完了するまでテーブルロック(排他ロック)をかけたいのですが、どのような記述が必要でしょうか。

begin transaction
commit のような感じで関係するステートメントをかこえたらよいのですが。
0668NAME IS NULL
垢版 |
2022/11/15(火) 22:53:59.24ID:???
>>667
自作せずにSEQUENCEをNO CACHEで使えばいいよ
0669NAME IS NULL
垢版 |
2022/11/15(火) 23:38:08.24ID:uZbfP42z
>>668
早速のレスありがとうございます。

連番はSQL SEVERに自動で振ってもらおうと思います。
そして、INSERTとOUTPUT inserted.*を使って、
その新しい番号を得たいと思います。
0670NAME IS NULL
垢版 |
2022/11/15(火) 23:42:08.86ID:uZbfP42z
>>669
訂正します
INSERTにOUTPUT inserted.*を組み合わせて
0672NAME IS NULL
垢版 |
2022/11/17(木) 19:21:02.25ID:???
>>667
まず分離レベルってのを理解しような
0673NAME IS NULL
垢版 |
2022/11/17(木) 23:47:32.26ID:???
>>671
エクスプレス版を取りあえずダウンロードだけしといたw
SSMSが同じだからなあ…どうなんだろ
0674NAME 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に設定すれば良いですが、こういう場合はどんなふうに列名を設定するのが良いのでしょうか。
0675NAME IS NULL
垢版 |
2022/11/24(木) 12:21:15.60ID:???
>>674
foreignkeyof ってググっても出ないから、そんな作法は一般的じゃないよね
普通に名詞だけの単語でテーブルA,B共通の名前にして、エイリアス名で分ければ?
0676NAME IS NULL
垢版 |
2022/11/24(木) 12:25:57.91ID:???
悩むくらいなら、
/* コメントxxxxx */
みたいにメモを残すほうが、あとでみてもわかる
0677NAME IS NULL
垢版 |
2022/11/24(木) 12:30:02.95ID:???
>>674
列名?
外部キー制約名じゃなくて?

列名ならそのカラムがテーブルAで持つ意味でつければいい

外部キー制約名はFK_テーブルA_テーブルBが一般的
2つ同じテーブル同士で外部キー制約を貼るなら
テーブルA側の列名も使って外部キー制約名を付ける
0678NAME IS NULL
垢版 |
2022/11/24(木) 12:34:41.41ID:???
>列名ならそのカラムがテーブルAで持つ意味でつければいい

buyerとsellerとか
primary_contact/secondary_contactとか
0679675
垢版 |
2022/11/24(木) 12:43:41.42ID:???
スレが盛り上がったところで、質問させていただきます
SQLCLRなんですが、複数のアセンブリがあって、その中の、一部のメソッドを仕様変更したとき、アセンブリとストアドの依存関係なしに、全部createやり直すのは普通ですか?邪道ですか?
0680675
垢版 |
2022/11/24(木) 12:46:57.35ID:???
再作成必要ないものまでcreate assembly、create procedureしてしまうんですよね
0681NAME IS NULL
垢版 |
2022/11/24(木) 15:15:06.11ID:???
>>679
普通ではないように思うが署名やテストも含め自動化できてるなら好きにすればいいんじゃない?
0682674
垢版 |
2022/11/26(土) 00:22:21.03ID:sFVTXftJ
皆様、レスありがとうございます。
参考になりました。
結局、次のようにしました。


table_A.列名あいう(table_Aの主キー)

table_B.列名あいう(table_A外部キー)
table_B.列名あいう_用途(table_A外部キー)

このように、用途がわかるように列名を設定しました。

ありがとうございます。
0683NAME IS NULL
垢版 |
2022/11/26(土) 16:16:33.61ID:D63qN8dA
同じ列名で格納かれているデータ異なるけど、関連があるなんてわかりにくいにもほどがあるだろw
0684NAME IS NULL
垢版 |
2022/11/26(土) 16:17:09.46ID:D63qN8dA
>>682
相互に参照し合う外部キー?
0685NAME IS NULL
垢版 |
2022/11/26(土) 16:18:35.53ID:D63qN8dA
1対Nを、1対「無限大」と表記する表記法なんて初めて見たわ。
0686NAME IS NULL
垢版 |
2022/11/26(土) 16:45:50.88ID:???
>>682
わるい
「列名ならそのカラムがテーブルAで持つ意味でつければいい」と書いたけど
「列名ならそのカラムがテーブルBで持つ意味でつければいい」の間違いだったわ

message.sender -> account.id
message.receiver -> account.id
0687NAME IS NULL
垢版 |
2022/11/26(土) 16:51:31.81ID:D63qN8dA
外部キー列と参照される列を混同するのは初心者あるあるだが、
純粋に間を取り持つテーブルを作った方がいい。

説明がいるデータモデルにしておくと、自分でもわからなくなる。
0688NAME IS NULL
垢版 |
2022/11/26(土) 18:53:09.89ID:o+PA739f
トランザクションデータの親子関係と、マスタデータの関係がごっちゃになっているのかな?
0689682
垢版 |
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外部キー)
は、たとえば
0690NAME 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の行とは違う行とリンクします。
0691NAME IS NULL
垢版 |
2022/11/28(月) 07:20:23.19ID:Y7UCoM6L
>>686
ありがとうございます。
そのように考えました。
0692NAME IS NULL
垢版 |
2022/11/28(月) 07:21:29.60ID:Y7UCoM6L
>>685
アクセスのGUIってそうなってなかった?
0693NAME IS NULL
垢版 |
2022/11/28(月) 07:28:43.92ID:Y7UCoM6L
>>690
table_B.列名あいう(table_A外部キー)
table_B.列名あいう_用途(table_A外部キー)

つまり、table_Bは、table_Aのサブテーブルでありながら、処理のターゲットにもされるテーブルということになります。
0694NAME IS NULL
垢版 |
2022/11/28(月) 14:59:50.69ID:iXYDTEGM
テーブルAの別のレコードの列を参照する列を同じレコードに持つテーブルB

これCOBOLの発想か?
0695NAME 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
0696NAME IS NULL
垢版 |
2022/12/02(金) 14:57:13.95ID:???
他サーバーのテーブルを参照するビューがクソ重くて辛い
データ転送バッチ作るしかないのか?
0697NAME IS NULL
垢版 |
2022/12/02(金) 17:56:05.96ID:???
レプリとかLog Shippingとかあるよ
0698NAME IS NULL
垢版 |
2022/12/05(月) 11:50:30.30ID:???
>>697
ありがとう
他サーバーは他の人が管理してるものだからいけるか謎だけどちょっと相談してみるわ
0699NAME IS NULL
垢版 |
2022/12/05(月) 21:06:27.64ID:JoOlcgho
>>698
SQL Serverはマテリアライズドビューがない

これはかなりの欠点
0701NAME IS NULL
垢版 |
2022/12/06(火) 01:23:03.08ID:mYqHptcX
>>700
それは標準SQLのマテリアライズドビューではなく、データベースそのものの物理的なレプリケーションでしかない。

こんなの乱暴すぎてアプリケーションからは危険すぎて使えない。

マテリアライズドビューがわからないのなら、マテリアライズドビューを知ってから反論した方がいい。
0702NAME IS NULL
垢版 |
2022/12/06(火) 15:29:27.72ID:???
>>701
何いってんのww
レプリとマテリアライズドビューの区別もできない上に
マテリアライズドビューが標準SQLになった妄想見てんのかww
恥ずかしいやつだなwww

オラクルしか知らんとマテリアライズドビューの本来の意味もわからんようになるのか
こうはなりたくないな
0703NAME IS NULL
垢版 |
2022/12/06(火) 17:18:32.85ID:???
オラクルだと昔はスナップショットと呼んでたから
マテリアライズドビューをスナップショットレプリケーションだと思い込んでるんだろ
0704NAME IS NULL
垢版 |
2022/12/06(火) 19:56:32.02ID:mYqHptcX
おまえらSQL Serverしか知らねえのまるわかりじゃねえかw
0705NAME IS NULL
垢版 |
2022/12/06(火) 20:00:28.19ID:mYqHptcX
>>702
あのさ、他のRDBMSではレプリケーションという言葉は広い意味の言葉で、製品ごとに定義が異なる。

さらにマテリアライズドビューはデータベースオブジェクトですよ?

SQL Serverで似たようなことをするには、全レコードをSELECTして他のテーブルに登録するくらいしかない。

他のRDBMSはSQLでマテリアライズドビューの操作ができる。
0706NAME IS NULL
垢版 |
2022/12/06(火) 20:02:10.27ID:mYqHptcX
>>703
「スナップショットレプリケーション」なんて言葉が出てくるのはSQL Serverくらい
0707NAME IS NULL
垢版 |
2022/12/06(火) 20:05:56.31ID:mYqHptcX
日本マイクロソフトのサポートや、日本マイクロソフトが作らせたOracleDBとの比較資料も大間違いだらけなんだぜ?

そのくらいマイクロソフトは自社製品がわからない。

日本マイクロソフトの品川本社のSQL Serverサポートもひどいレベル。

普通のデスクトップPCで試してみているだけ。
さも知ってましたみたいに答えるが、Bing検索で検索して答えるレベル
0708NAME IS NULL
垢版 |
2022/12/06(火) 20:34:37.28ID:mYqHptcX
マイクロソフトはSQL Serverの欠点を指摘されて、マテリアライズドビューはあるみたいなことを世界に発信している。

マテリアライズドビューは、ビューにインデックスを作成すれば解決みたいなことを言い出して、そのインデックスが実態がもはやただのテーブルにすぎない。

同じようにロックエスカレーションも悪く言われて、これも正反対のロックエスカレーションはすばらしいと言って回っているので、ますますSQL Serverが売れなくなった。
0709NAME IS NULL
垢版 |
2022/12/06(火) 20:37:02.65ID:???
>>705
> SQL Serverで似たようなことをするには、全レコードをSELECTして他のテーブルに登録するくらいしかない。
よくそんなレベルでレスできるもんだな...
0710NAME IS NULL
垢版 |
2022/12/06(火) 21:16:22.43ID:mYqHptcX
>>709
データがそんな大きくなければそうやるよ?

あなたは何と戦っているの?

そうじゃない、そうじゃないと言っていても、ただのイタいおじさんを通りすぎて、追放されるレベルだよ。
0711NAME IS NULL
垢版 |
2022/12/06(火) 21:32:40.36ID:???
> こんなの乱暴すぎてアプリケーションからは危険すぎて使えない。
とか言ってた奴が
> SQL Serverで似たようなことをするには、全レコードをSELECTして他のテーブルに登録するくらいしかない。
とかw
とりあえず何が危険なのか書いてみ
それでお前のレベルがわかる
0712NAME IS NULL
垢版 |
2022/12/06(火) 21:44:53.86ID:???
まいどまいど斜め上のレスを上から目線で書いちゃってwww
いつも笑わせてもらってる

こいつは特別アホだとしても
オラクル信奉者ってなぜか低レベルなやつ多いよなぁ
0713NAME IS NULL
垢版 |
2022/12/06(火) 21:51:47.80ID:BmDSm/mR
よろしくお願いします。

Date型で、日部分のみ指定した値に変更したいのですが、そういう関数はあるでしょうか。

元となる年月日から足し引きするような関数はあったのですが、直接指定するというものが見つかりません。

年、月、日に分解したあとに、日のみ変えてまたDATE型を組み立てるしかないのでしょうか。
0714NAME IS NULL
垢版 |
2022/12/06(火) 22:04:17.98ID:???
>>712
他のDBMSに精通したらオラクルを信奉したりしないからね
0715NAME IS NULL
垢版 |
2022/12/06(火) 22:38:13.91ID:???
>>713
SQL-Server 2022 なら
dateadd(day, n - 1, datetrunc(month, 日付))
でできると思うけどどう見ても素直に
datefromparts(year(日付), month(日付), n)
の方がわかりやすいと思う
0716NAME IS NULL
垢版 |
2022/12/06(火) 22:55:01.97ID:rSr0+yYs
>>715
早速レスをいただき、ありがとうございます。
専用関数がないのは残念ですが、確かにわかりやすいので、組み立て方式でいきたいとおもいます。

参考になりました!
0718NAME IS NULL
垢版 |
2022/12/07(水) 02:44:35.29ID:+zJ/wx/Y
>>717
こういうのがあるからアップデートしたくない

最初にテストしたら、そのまま何の変更も加えてほしくない
0719NAME 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で再接続さえすれば認識されたと思います。
0720NAME IS NULL
垢版 |
2023/01/09(月) 01:53:59.58ID:get9qHwd
>>719
データベースの情報を完璧に取得し直して表示するという仕様は、完璧である必要があると思っているんですか?

データベースオブジェクトを検索して表示するのも負荷のかかることです。

SSMSで一時的に見えなかったことを問題視してますが、そんなに重大な問題ですか?

SSMSではなく、クエリで存在を確認する習慣をつけた方がいいですよ。
0721NAME IS NULL
垢版 |
2023/01/09(月) 05:36:49.23ID:22YCMRiX
ストアドプロシジャ内で、
サブクエリによるテーブルの導出を
テーブル値ファンクションで行うとパフォーマンスは落ちるのでしょうか。

各ストアドプロシジャ内で、同じ導出を行うのも非効率だなと思って、流用しやすい形でfrom 句にファンクションを使おうと思っています。
0722NAME IS NULL
垢版 |
2023/01/09(月) 17:03:36.75ID:???
>>719
SSMSってDB情報とかキャッシュしてるから、まあよくあることなんじゃね

>>721
テーブル値ファンクションって、おそらく実行時に展開されないので
サブクエリより実行計画の幅が狭いはず
なのでサブクエリより実行効率が上がるとは思えん
0723NAME IS NULL
垢版 |
2023/01/09(月) 17:23:40.09ID:???
>>719
手動でRefreshしなよ
わからなかったら「SSMS Refresh」でググって
インテリセンスのキャッシュも同じ
DBに不必要な負荷をかけないために昔からそういう仕様だったはず
0724NAME IS NULL
垢版 |
2023/01/09(月) 22:12:05.07ID:???
>>721
Inline Table Valued Functionなら
SELECT文を直接書くのと同じように展開されてから
オプティマイザが実行プランを生成するのでパフォーマンスは変わらない
0725NAME IS NULL
垢版 |
2023/01/10(火) 05:05:40.83ID:M8ITj7+H
>>722
>>724

レスありがとうございます。
テーブル値ファンクションを、From句や、
OUTER APPLYで使うと、パフォーマンスおちないか心配でした。

ストアドプロシジャにベタ書きするように最適化されると聞いて安心しました。

しかし、再利用性を高めるとはいえ、
SQLにサブルーチン的な発想をもちこむのは心が痛みます。
0726NAME IS NULL
垢版 |
2023/01/10(火) 05:48:19.71ID:j9AMOfqi
>>725
整合性の取れた最新のデータを取得しないといけない理由があるんですか?

理由がないのならそんなやり方は捨てるべきです。

しかもデータ量について言及がないので、データ量が少なければ、どういう方法でやっても速度性能なんてほとんど変わりません。

パフォーマンスは低下するが、1.00秒かかるクエリが1.01秒になるような性能悪化なら気にしても意味はありません。
0727NAME IS NULL
垢版 |
2023/01/10(火) 16:42:39.89ID:MfwzOWLo
>>726
>整合性の取れた最新のデータを取得しないといけない理由があるんですか?理由がないのならそんなやり方は捨てるべきです。

どういうこと?
静的テーブルに、予めデータを用意しておいて、
これを使うということ??
0728NAME IS NULL
垢版 |
2023/01/10(火) 18:38:33.71ID:???
>>725
通常のビューや、CTEでダメな理由がなにかあるのか?
0729NAME IS NULL
垢版 |
2023/01/10(火) 19:15:25.24ID:1urMig+5
>>728
再利用できない
0730NAME IS NULL
垢版 |
2023/01/10(火) 19:26:28.71ID:???
>>729
そこで言う再利用って何?
CTEはともかく、ビューが再利用できないわけないんだが
0731NAME IS NULL
垢版 |
2023/01/10(火) 20:33:42.25ID:aTVN3pRn
>>730
テーブル値ファンクションで、定義しとけば、
他でテーブルのように何度でも使える。
修正も一箇所ですむので簡単。
0732NAME IS NULL
垢版 |
2023/01/10(火) 22:02:19.98ID:???
>>727
そいつはDB板の有名荒らしなので相手にするのは時間の無駄だよ
0733NAME IS NULL
垢版 |
2023/01/10(火) 22:03:23.61ID:aTVN3pRn
>>732
ありがとうございます。
0734NAME IS NULL
垢版 |
2023/01/10(火) 22:08:48.47ID:???
条件となる値が固定ならビュー
条件となる値が可変ならinline TVF
0735NAME IS NULL
垢版 |
2023/01/11(水) 05:06:06.88ID:icJsem5h
>>734
引数なしのテーブル値ファンクションは駄目?
0736NAME IS NULL
垢版 |
2023/01/11(水) 14:22:52.23ID:???
>>731
だからそれだと、ビューがダメな理由にならないんだが?
0737NAME IS NULL
垢版 |
2023/01/11(水) 16:50:03.30ID:iyfLfCdS
>>736
ビューはかつて使ったことないけど、
from句や、OUTER APPLYできるのかな。

ファンクションで作っておくと、引数追加したくなっても変更しやすそう
0738NAME IS NULL
垢版 |
2023/01/11(水) 18:33:20.02ID:???
>>737
>from句や、OUTER APPLYできるのかな。
当然使えるよ
SELECTするだけならTableが使えるところならどこでも使えると思うよ
更新系はいろいろ制約があってそれを満たしてなければ使えない
0739NAME IS NULL
垢版 |
2023/01/13(金) 04:01:42.26ID:gJb3onoK
>>738
ありがとうございます。
0740NAME IS NULL
垢版 |
2023/01/13(金) 12:39:45.86ID:???
SQL ServerのPKやインデックスは作成後にメモリに常駐し続けるものなんでしょうか?
0741NAME IS NULL
垢版 |
2023/01/13(金) 13:47:19.40ID:???
>>740
キャッシュにブロック単位で読み込まれて残ってることはあるけど常駐はしない
0742NAME IS NULL
垢版 |
2023/01/13(金) 16:02:17.39ID:ULxEl8AG
SQL Server for LinuxでActive×Activeの遠隔地マルチマスター構成作れるの?
0744NAME IS NULL
垢版 |
2023/01/13(金) 21:27:19.96ID:???
>>742
WindowsかLinuxかに関係なくSQL Serverが持ってる機能だけじゃできないと思うぞ
Oracleと同じでGoldenGateみたいな3rdパーティの製品依存
0746NAME IS NULL
垢版 |
2023/01/14(土) 05:02:21.29ID:wGD1MOCC
大規模システムはOracleDB、

中小システムはSQL Serverという棲み分けは

結局、変わらなかった。

今後も変わることはない。

なぜならマイクロソフトが諦めているから。
0747NAME IS NULL
垢版 |
2023/01/14(土) 15:34:58.44ID:???
十数年前ならともかく
本当に大規模なシステムでは
もうオラクルやSQL Serverを検討するような時代じゃないからな
0748NAME IS NULL
垢版 |
2023/01/15(日) 06:58:05.77ID:2joXWGOy
>>747
なに使うの
0749NAME IS NULL
垢版 |
2023/01/15(日) 14:10:17.70ID:7Mz5p9+i
>>747
勘違いしすぎだぞ
クラウドでも大企業はオラクルクラウド、AWSやAzure上で同じ製品を使っている
0751NAME IS NULL
垢版 |
2023/01/15(日) 15:07:57.87ID:???
>>749
大規模なシステムと大企業のシステムの違いもわからないのかww
脳みそバグってるね
0752NAME IS NULL
垢版 |
2023/01/15(日) 15:24:23.29ID:7Mz5p9+i
子供みたいな反論だな
0753NAME IS NULL
垢版 |
2023/01/15(日) 15:24:53.65ID:7Mz5p9+i
単にお金がない企業は安いものを選択するしかないだけの話
0754NAME IS NULL
垢版 |
2023/01/15(日) 16:07:23.25ID:???
そうなんだよ
お金がないからAmazonもOracle全部やめようとしてるんだよなぁ
0755NAME IS NULL
垢版 |
2023/01/15(日) 16:12:59.82ID:???
Googleもお金がないからオラクルなんてボッ・・・高価なものは使えない
Facebookも右肩下がりだから節約してMySQL
0756NAME IS NULL
垢版 |
2023/01/15(日) 19:18:52.45ID:7Mz5p9+i
AWSなんてすげーお金がかかるのに騙されて契約するのが日本人
0757NAME IS NULL
垢版 |
2023/01/15(日) 19:20:18.35ID:7Mz5p9+i
本番環境しか見積もらずにAWSに完全移行して、運用保守環境がなくて積む企業が多発しているのが現状。
0758NAME IS NULL
垢版 |
2023/01/26(木) 02:55:42.92ID:0ZdAuIEw
あげ太郎
0761NAME IS NULL
垢版 |
2023/02/12(日) 07:52:50.32ID:???
SSE2017相手なんだけど
SSMS19は18から設定を引き継ぐと繋がるけど
設定をクリアして新規で接続しようとすると
証明書がどうたらって出て接続エラーになる
でアンインストールしてSSMS18を入れ直すと
新規設定からでも接続できた

SSE2019以降の組み合わせだとどうなるか…
検証が非常に面倒だw
0762NAME IS NULL
垢版 |
2023/02/13(月) 15:44:50.45ID:???
SSMS19の接続問題は接続の暗号化オプションが原因だった
SSMS18は暗号化が既定でオフだった
0763NAME IS NULL
垢版 |
2023/02/14(火) 03:21:26.51ID:???
>>762
SSMSだけの問題じゃなくて、ほかのクライアントでも問題出てるから
サーバーかクライアントドライバでのデフォルト設定が変わってるっぽい

とりあえず接続文字列修正してるけど、デフォルト設定変える方法探さんとなぁ
0764NAME IS NULL
垢版 |
2023/02/14(火) 20:18:55.91ID:???
SSMS19は設定ファイル自体を削除しちゃうと
接続暗号化オプションにもチェックが入るけど
詳細メニューで一度リセットボタン押しとくと
その後は既定で暗号化オプションがオフになる
0765NAME IS NULL
垢版 |
2023/02/14(火) 20:21:19.25ID:???
Azureの方も更新来てたけど
引継でも新規接続でも問題無いな
0766NAME IS NULL
垢版 |
2023/06/02(金) 23:00:42.49ID:wLn6qWZ8
SQL Serverは他のRDBMSと実装の方向性が違いすぎて、もはや作りが崩壊している。
0767NAME IS NULL
垢版 |
2023/06/08(木) 18:27:59.82ID:???
具体的な事例を挙げてくれ
0768NAME IS NULL
垢版 |
2023/06/11(日) 12:32:26.82ID:0iWIq9DX
>>767
特定のインデックスがあるとテーブルが不要になるあたり
0769NAME IS NULL
垢版 |
2023/06/11(日) 13:31:49.72ID:???
もっと具体的に。
0770NAME IS NULL
垢版 |
2023/06/11(日) 13:34:41.55ID:0iWIq9DX
>>769
列ストアインデックス

根本的に実装がおかしいと言っているようなもの
0771NAME IS NULL
垢版 |
2023/06/11(日) 14:31:03.94ID:???
いや、個別の機能とかそういうのはいいから。
それをどう使うとどういう風になにが崩壊するのか実際的に語ってみて。
0772NAME IS NULL
垢版 |
2023/06/11(日) 15:46:57.75ID:???
ボラクル君いじりは非生産的なのでやめようね
0773NAME IS NULL
垢版 |
2023/06/11(日) 20:50:10.54ID:0iWIq9DX
>>771
テーブルで実装できなかったことをごまかしている
0774NAME IS NULL
垢版 |
2023/06/11(日) 20:55:17.39ID:???
崩壊してないじゃん。w
0775NAME IS NULL
垢版 |
2023/06/11(日) 22:37:56.63ID:0iWIq9DX
データの読み取りだけで高負担という欠点をさらしているわけだが、読み取り一貫性の実装が何度、作り直しても同じという諦めはマイクロソフト自身が諦めていること。

マイクロソフトドキュメントでわかるとおり、技術的にわかる人間を投入していないからこうなる。
0776NAME IS NULL
垢版 |
2023/06/11(日) 22:53:30.42ID:???
崩壊してないじゃん。w
0777NAME IS NULL
垢版 |
2023/06/12(月) 17:56:19.91ID:???
>>770
データウェアハウス向けの機能追加したら、他のRDBMSと実装の方向性が違いすぎるってか

>>データの読み取りだけで高負担という欠点
エビデンスは?

>読み取り一貫性の実装が何度、作り直しても同じという諦めはマイクロソフト自身が諦めている
エビデンスは?

>マイクロソフトドキュメントでわかるとおり、技術的にわかる人間を投入していない
たとえばどのドキュメント?

せめて、具体的なURLの一つでもあげてから言えよ
0778NAME IS NULL
垢版 |
2023/06/14(水) 16:03:13.72ID:14/Kwe66
SQL Serverの営業職なのか?

SQL Serverは同時実行性を切り捨てている。

2005から2008でコードを書き直したが、結局、仕様がたいして変わらないものが納品されたことぐらい歴史を勉強しろよ。
0779NAME IS NULL
垢版 |
2023/06/14(水) 16:08:00.63ID:14/Kwe66
>>777
他のトランザクションを邪魔する形で、読み取り一貫性を実装している。

データそのものを排他ロックするSybaseの流れから方針転換できなかった。

だから、列ストアインデックスのようにテーブルのコピーを作って、読み取りの並列化をするしかなくなった。

批判をしているんじゃなくて、事実を書かれて頭に来ているのは、ちょっとおかしい。
0780NAME IS NULL
垢版 |
2023/06/14(水) 20:11:54.11ID:???
だから、どこが崩壊してるんだよ。
0781NAME IS NULL
垢版 |
2023/06/14(水) 20:43:15.61ID:???
だからエビデンスを出せと
せめてURLの一つでも張らないと何の説得力もないよ

>>778
>仕様がたいして変わらない
中身のコードはどうでもいいが、バージョン上がって仕様が変わってたら大変なんだが?

>>779
ロックで一貫性を保つのは普通の方針だと思うが、それが実装の方向性が違うって?

で、列ストア以前にスナップショット実装されてるはずだが、それについては?
まあ、どうせ何の根拠もなく使い物にならないっていうんだろけど
0782NAME IS NULL
垢版 |
2023/06/15(木) 05:40:55.29ID:Q/3PXPD+
何が気に入らないのか?
0783NAME IS NULL
垢版 |
2023/06/15(木) 05:47:09.29ID:Q/3PXPD+
>>781
他のRDBMSは仕様を変えながら進化している。
後方互換性をマイクロソフトがアピールしていることもないし、そもそも後方互換性を気にしないのがSQL Server。

これを批難されているように受け取るんだろうけど、SQL Serverは日本マイクロソフトが作っているんじゃねえんだぞ?
0784NAME IS NULL
垢版 |
2023/06/15(木) 05:57:11.40ID:Q/3PXPD+
SQL ServerはSQL ServerのDBAはなかなかいなくて、マイクロソフトは売りっぱなしの商売下手。

すでに終わったSQL Serverの資格も普及させる気があるとは思えなかった。いまはAzureのおかげでセット販売ができているからいいけど。
0785NAME IS NULL
垢版 |
2023/06/15(木) 20:47:54.90ID:???
だから、どこが崩壊してるんだよ。

結構真面目に聞いてたつもりだったけど、何の根拠を挙げることもできないのね。
ただのアンチさんの戯言だったわけだ。
0786NAME IS NULL
垢版 |
2023/06/17(土) 08:32:00.55ID:5Ljw3AHe
SELECTだけで必要以上にレコードを排他ロックすることがいまだにあり、これによる同時実行性の低下対策として、レコードのコピーを使う仕組みが作られて、それを使わされている。

要するにマイクロソフトが指示した仕様を手抜きで前のバージョンのコピープログラムで再構築してしまったのが不幸の始まり。

マイクロソフトはいまだに「ロックエスカレーションは必ずしも悪いことではない」と説明せざるをえない。
0787NAME IS NULL
垢版 |
2023/06/17(土) 08:40:49.47ID:5Ljw3AHe
>>785
テーブルをSELECTしながら処理するのと、テーブルをSELECTし、同じSELECT結果を登録した一時テーブルや同じデータを持つ列ストアインデックスを参照して処理するのを比べると、後者の方が短時間で終わる。

さらにやばいのがSQL Serverはいまでも単にSELECTしただけで、理由のわからない大幅な性能劣化が起きることがある。

マイクロソフトそのものが諦めているのに、SQL Serverに期待しすぎの人間がこのスレにいるのは、日本マイクロソフトの周知不足なんだろうな。
0788NAME IS NULL
垢版 |
2023/06/17(土) 08:44:00.04ID:5Ljw3AHe
SQL Serverは同じテーブルに複数のセッションから同時にSELECT文を発行すると、極端に遅くなることがある。

さすがにこう説明すれば、作りに問題があることがわかるだろ?
0789NAME IS NULL
垢版 |
2023/06/17(土) 11:04:09.78ID:???
だから、どこが崩壊してるんだよ。
自分の台詞だろ。まずそこを説明しろよ。
0790NAME IS NULL
垢版 |
2023/06/17(土) 11:04:34.79ID:???
あ、失礼。
x 説明
o 証明
0791NAME IS NULL
垢版 |
2023/06/18(日) 23:16:22.92ID:???
何の根拠もなくここまで文句言えるとは
SQL Serverに親でも殺されたのか

>>786
聞いたことないけど、根拠は?
まあ、いまだに自分で明示的にロックかけないとまともに動かないDBを使ってる人は
排他ロックと共有ロックの区別がつかないんだな

>>787
どんな処理をしたらそうなるって?
で、その理由をお前が理解できないから、なぜかそうなるですましてるんだろ

期待してるどうこうではなくて、正しく理解して使いたいだけで
正しいかどうかもよくわからん情報を垂れ流されても困るんだがな
0792NAME IS NULL
垢版 |
2023/06/19(月) 19:27:17.18ID:4/v87WeP
共有ロックの意味が違うぞ
0793NAME IS NULL
垢版 |
2023/06/24(土) 16:50:28.70ID:kF0ecW7R
3行めから6行目までのデータを抽出するときってどうやって書いたらいいですか?
0794NAME IS NULL
垢版 |
2023/06/24(土) 16:53:00.13ID:kF0ecW7R
>>793
SELECT *
FROM テーブル名
LIMIT 4
OFFSET
0795NAME IS NULL
垢版 |
2023/06/24(土) 16:53:55.90ID:kF0ecW7R
>>794
OFFSET 6;
とするとエラーが出ました
0796NAME IS NULL
垢版 |
2023/06/24(土) 19:51:58.99ID:???
この辺りのこと?
ttps://sql-oracle.com/sqlserver/?p=857
0797NAME IS NULL
垢版 |
2023/06/24(土) 22:11:08.28ID:kF0ecW7R
>>796
すいません。
これです
調べきれてなかったです。
ありがとうございます。
0798NAME IS NULL
垢版 |
2023/06/25(日) 09:25:22.34ID:ABQ2v09G
2行目の5列目のみを抽出したいときってどうすればできますか?
SELECT 5列目の列名
FROM テーブル名
まではわかったのですが。。。
0799NAME IS NULL
垢版 |
2023/06/25(日) 11:29:58.29ID:???
796 の応用でできるでしょうに。
0800NAME IS NULL
垢版 |
2023/06/25(日) 11:47:11.55ID:ABQ2v09G
>>799
同じように入力してみます。
すいません。
0801NAME IS NULL
垢版 |
2023/06/27(火) 17:05:56.20ID:???
select s from テーブル名 s where s.email = $1;

この s って何でしょうか?
AS句を省略してる的な感じなのでしょうか?
0802NAME IS NULL
垢版 |
2023/06/27(火) 17:33:51.50ID:???
そうだよ
テーブル名のエイリアス
0803NAME IS NULL
垢版 |
2023/06/27(火) 18:30:54.86ID:???
>>802
合ってたんですね。
ありがとうございます。
ググるにも何て調べたら良いかわからず困っていました。
0804NAME IS NULL
垢版 |
2023/06/27(火) 19:16:12.82ID:XSnmrLrK
同じテーブル同士をjoinする意味ってなに?
0805NAME IS NULL
垢版 |
2023/06/27(火) 19:16:57.47ID:XSnmrLrK
ですか?
同じテーブルを隣同士に繋げても意味ない気がして。。
0806NAME IS NULL
垢版 |
2023/06/27(火) 19:27:51.68ID:???
同じテーブルでも行ごとに中身がちがうんだから
違う行をつなげる意味はあるだろう
0807NAME IS NULL
垢版 |
2023/06/27(火) 19:55:39.96ID:XSnmrLrK
行を消せたりするってこと?
0808NAME IS NULL
垢版 |
2023/06/27(火) 21:58:44.24ID:XSnmrLrK
LEFT OUTERJOINの説明で、結合した時に余計なデータを取ってくるとノイズになるって説明見たんですけど、(ノイズ)ってなんの意味ですか?
NULLばっかりになるってことですか?
0809NAME IS NULL
垢版 |
2023/07/14(金) 20:40:09.51ID:???
>>808
行数もそうだがむしろ
select *fromなんて指示したらどえらい列になるってことでは
0810NAME IS NULL
垢版 |
2023/07/15(土) 12:24:05.87ID:ZDu5V+2v
0811NAME IS NULL
垢版 |
2023/07/15(土) 13:28:07.72ID:???
不要な列のデータ=ノイズって解釈なのだろうとエスパー。
0812NAME IS NULL
垢版 |
2023/07/15(土) 16:37:15.54ID:???
たぶんそういう意味だろうね
(特に右テーブルの)不要な列を取ってくるなってことを言いたかったんだろう
0813NAME IS NULL
垢版 |
2023/07/15(土) 22:00:38.83ID:aJ3C4xJo
>>812
左右が逆
0814NAME IS NULL
垢版 |
2023/07/15(土) 22:04:46.99ID:aJ3C4xJo
>>812
難解な表現だな。
0815NAME IS NULL
垢版 |
2023/07/15(土) 22:05:30.45ID:aJ3C4xJo
>>809
列指定にアスタリスクを使うことはあまりない
0816NAME IS NULL
垢版 |
2023/08/07(月) 00:03:36.76ID:KYaloyhj
Developer Editionのライセンス規約数年前に変わったはずなのに、未だに開発者しか使えないと
大手ベンダですら勘違いしているのはマイクロソフトの宣伝周知足りないよな
こっちは損しないからどうでもいいけど、無駄な金払う顧客が可哀想・・・
0817NAME IS NULL
垢版 |
2023/08/08(火) 01:33:23.95ID:???
昔もいまも開発用途にしか使えないと思うんだが

昔はどうで今はどうなのか詳しく
0818NAME IS NULL
垢版 |
2023/09/19(火) 00:15:00.16ID:???
それってどうしてそうなの?
0819NAME 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 の無料エディションです。
0820NAME IS NULL
垢版 |
2023/10/04(水) 00:26:39.56ID:???
クエリストア、めちゃくちゃ便利ですね
Oracleから移ってきたけどsql serverの便利さ
0821NAME IS NULL
垢版 |
2023/10/04(水) 00:28:48.45ID:???
に驚いています。
ssmsやc#との連携のしやすさなどエコシステム全体がユーザーフレンドリーな感じ
逆にOracleが不便なだけなのかもだけど
0822NAME IS NULL
垢版 |
2023/10/08(日) 08:12:40.58ID:1K2SEOD7
公式ドキュメントに問題があるせいで伸びないSQL Server
0823NAME IS NULL
垢版 |
2023/10/18(水) 08:53:43.60ID:???
ねぇ…試してみる?
0824NAME IS NULL
垢版 |
2023/10/19(木) 00:03:00.82ID:???
エラーの有無にかかわらずログテーブルへの出力をしたいんですが、オラクルのような自律型トランザクションってないんですよね…
皆さんどうやってます?
0825NAME IS NULL
垢版 |
2023/10/19(木) 15:21:35.75ID:???
それってメインの処理は成功してログテーブルへの出力が失敗した場合はどう対処してるの?
0826NAME IS NULL
垢版 |
2023/10/19(木) 20:34:46.35ID:???
テキストファイルに吐いといて定期的にログテーブルに乗せるとか
原始的すぎるかな
0827NAME IS NULL
垢版 |
2023/10/19(木) 20:35:14.26ID:???
テキストファイルに吐いといて定期的にログテーブルに乗せるとか
原始的すぎるかな
0828NAME IS NULL
垢版 |
2023/10/19(木) 20:35:48.55ID:???
テキストファイルに吐いといて定期的にログテーブルに乗せるとか
原始的すぎるかな
0830NAME IS NULL
垢版 |
2023/10/20(金) 19:12:09.41ID:???
本当にロールバックさせたいとこだけ子トランザクションにして全体はコミットする
0831NAME IS NULL
垢版 |
2023/10/20(金) 19:12:18.60ID:???
本当にロールバックさせたいとこだけ子トランザクションにして全体はコミットする
0832NAME IS NULL
垢版 |
2023/10/21(土) 09:43:57.33ID:???
トランザクションをハンドリングするレイヤーとログ出力するレイヤーが揃ってないんだろう
テーブル変数やリンクテーブル使った回避策もあるけど揃ってないのがアンチパターンなので設計を見直したほうがいい
0833NAME IS NULL
垢版 |
2023/10/21(土) 13:56:10.51ID:???
設計がおかしいって言っとけばなんかわかってる感が出るから便利よね
どうおかしいかは言ってる本人もわからない
0834NAME IS NULL
垢版 |
2023/11/18(土) 00:15:40.15ID:t4HCeZxT
Accessマスターしたんだが次何やればいい?
0836NAME IS NULL
垢版 |
2023/12/07(木) 00:03:22.93ID:???
ssmsとazure data studioそれぞれで実行計画出したときの不足インデックス提案が微妙に違うことに気づいたけどなんで?
0837NAME IS NULL
垢版 |
2023/12/14(木) 14:28:23.30ID:???
ごめん、ポスグレに移行します
0838NAME IS NULL
垢版 |
2023/12/14(木) 14:37:57.09ID:LkoJvXxu
いいね👍
0839NAME IS NULL
垢版 |
2023/12/14(木) 23:52:39.82ID:???
azureの料金上がるし、azureからawsに乗り換えるってなるとDBもついでにsql serverからauroraに移行、みたいな話は増えそう
0840NAME IS NULL
垢版 |
2023/12/16(土) 23:22:24.72ID:dHU1nQbd
>>839
オラクルクラウドだろ?
0841NAME IS NULL
垢版 |
2023/12/16(土) 23:48:47.64ID:???
オラクルクラウドとか罰ゲーム
VMがタダなのでたまに使うくらい
0842NAME IS NULL
垢版 |
2023/12/17(日) 01:42:37.95ID:rc5EPYnZ
オラクルクラウドはAzureと提携しているんだが?
0843NAME IS NULL
垢版 |
2023/12/17(日) 02:28:25.20ID:???
「提携してるんだが」wwwwww
0844NAME IS NULL
垢版 |
2023/12/17(日) 21:30:43.12ID:rc5EPYnZ
知らねえだけか
Azureの意味も製品の単位だとまちがって思い込んでいるな
0845NAME IS NULL
垢版 |
2023/12/18(月) 08:18:13.62ID:???
awsのマネージドsql serverって実際移行先としてどうなんだろう
0846NAME IS NULL
垢版 |
2023/12/20(水) 15:34:03.74ID:6ZdiLoKb
>>845
クソ高いだけ
0847NAME IS NULL
垢版 |
2024/01/03(水) 17:51:37.12ID:???
クラウドはDBが一番コストかかるので頭が痛い
案件ごとにチューニングしてvCore2つなんとか減らせるかどうか…を突き詰めるのしんどいわ
0848NAME IS NULL
垢版 |
2024/01/04(木) 19:09:30.45ID:9A15oU4c
みんなの後悔するんだよな
0849NAME IS NULL
垢版 |
2024/01/04(木) 21:01:53.61ID:???
インフラメンテコストを丸投げできるなら安い
DBサーバのメンテ不足で痛い目見た経験ある人はこのスレ多いでしょ
0850NAME IS NULL
垢版 |
2024/01/05(金) 22:59:11.61ID:E7vKZkjZ
オラクルクラウドはいいぞ
なんせただでサーバー立てられるからな
ある時よくわからん理由で消されるけどwww
0851NAME IS NULL
垢版 |
2024/01/06(土) 00:13:48.60ID:???
数年前に勝手にインスタンス消されたってツイッターで騒ぎあったね
信用してないからタダでも使わないかなw
0852NAME IS NULL
垢版 |
2024/01/06(土) 22:08:12.83ID:+8fz8nB8
数年前と現在の区別がないのか
0853NAME IS NULL
垢版 |
2024/03/18(月) 00:34:07.58ID:???
サブスクがコスト高でオンプレ回帰の流れ
クラウドの役割なんてバックアップ程度が相応しい
0854NAME IS NULL
垢版 |
2024/03/18(月) 00:50:59.03ID:???
お前の中ではそうなんだろうな
0855NAME IS NULL
垢版 |
2024/03/18(月) 01:01:28.53ID:???
定期的にボラクル君が出現するねw
それも決まってなぜかSQL Serverスレww
0856NAME IS NULL
垢版 |
2024/03/18(月) 04:06:55.63ID:???
従量課金のことをサブスクと呼ぶやつとは希少種だな
レスを投稿する


ニューススポーツなんでも実況