X

Microsoft SQL Server 総合スレ 12

2018/08/19(日) 20:52:17.03ID:???
Microsoft SQL Server (Transact-SQL) の総合スレッドです。

・Microsoft 公式サイト
http://www.microsoft.com/japan/sql/
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/
2018/08/19(日) 22:04:19.10ID:???
前スレの993だけど、ここにラージオブジェクト データ型はでてくる
https://msdn.microsoft.com/ja-jp/library/ms187752(v=sql.120).aspx

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

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


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

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

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

Oracle長かったから
SQL ServerはBEGIN TRANしておけばDROP TABLEもTRUNCATEも取り戻せてびびった
2018/09/17(月) 15:17:22.23ID:???
DB破損させる可能性はOracleの方が高い
バックアップ取得失敗してると死ぬ
2018/10/06(土) 11:10:31.90ID:???
文字列の検索や突合がにがて
2018/10/13(土) 19:45:05.74ID:???
https://imgur.com/FAF05na.jpg
2018/10/17(水) 11:08:01.26ID:???
Accessはインデックスが壊れてしまった場合、[データベースの最適化/修復]を行うと治りますが
SQL Serverにもそういうコマンドがありますか?
31NAME IS NULL
垢版 |
2018/10/17(水) 14:00:05.95ID:UxDg84T+
>>30
一旦DROPして再作成すれば?
32NAME IS NULL
垢版 |
2018/10/17(水) 14:01:02.34ID:UxDg84T+
>>30
REBUILDもあったわ
http://www.sql55.com/query/reorganize-rebuild-index.php
2018/10/23(火) 08:59:01.17ID:???
indexの断片化とか気にしたことなかった
やばいかな?
2018/10/23(火) 13:09:21.29ID:???
目に見えて速度変わるぞ断片化酷いと
35NAME IS NULL
垢版 |
2018/10/23(火) 23:25:58.35ID:hntOGwbv
はいはい
36NAME 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/ →リンクが不良なら、検索窓に入れる!
37NAME IS NULL
垢版 |
2018/11/03(土) 16:19:44.77ID:JBJEgXB4
断片化もそうだけど統計情報はちゃんとやらんと泣く
インデックスヒント入れてればまあごまかせるけど、フルスキャンしいのNestedLoopしいので時間かかるわCPUぶんまわるわとひどい目に遭う
2018/11/12(月) 07:22:56.36ID:???
SSL通してインターネット経由で使うのはありですか?
2018/11/12(月) 07:24:45.79ID:???
VPNではなく、SQL ServerのSSL使ってポート固定でFW に穴開けて、という想定です
40NAME IS NULL
垢版 |
2018/11/12(月) 09:29:18.82ID:B9ac6m2S
SQL Slammerなんてのが流行ったことあったらから
FWで接続元絞れるんならまあ
2018/11/12(月) 13:41:10.82ID:???
セキュリティがSQLServer自身の認証頼りになるからおススメしない
特定IPのみ接続可とかやるくらいなら素直にVPNにしとけ
42NAME IS NULL
垢版 |
2018/11/12(月) 13:51:07.65ID:HPkNogVe
>>41
なぜかあなたのようなことを言ってしまう方が大勢いますが、明確な理由を説明できないでしょう?
2018/11/12(月) 13:59:37.37ID:???
明確な理由も何もフロントの認証より危険なのはちょっと考えればわかるだろ
Webアプリの認証突破されてもまだDBまで到達されない方法はあるが
直でログインされたらもう終わりだ
44NAME IS NULL
垢版 |
2018/11/12(月) 18:19:04.61ID:HPkNogVe
>>43
それ単にWebアプリケーションサーバが挟まる構成を取る意味がわかっていないひとの理屈だよ。
2018/11/13(火) 13:03:06.08ID:???
>セキュリティがSQLServer自身の認証頼りになるからおススメしない
個人的にはこの意見に同意するんだが
実際それでどれほどの危険があるかだろ

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

SQL Azureのセキュリティってこれしかないんじゃね
2018/11/13(火) 16:11:45.56ID:???
Azureはサブネットで隔離すりゃ行けるんじゃないの知らんけど
47NAME IS NULL
垢版 |
2018/11/13(火) 16:44:01.34ID:flNaI3Li
だいたい管理者ユーザーを使わせるわけでもないのに騒ぎすぎなんだよな。
2018/11/13(火) 16:52:05.86ID:???
つってもぶっこ抜きだけなら管理者権限要らんべ
2018/11/13(火) 21:31:12.65ID:???
AzureってNGFWみたいなのないの
2018/11/16(金) 15:58:30.59ID:???
SQLの認証にセキュリティホールがあるかどうか、って話だよな
2018/11/16(金) 16:21:06.93ID:???
そういや3回失敗したら垢ロックみたいなのはないのかね
あっても解除どうすんのとは思うが
2018/11/16(金) 19:54:52.97ID:???
普通のSQL Serverなら、パスワードポリシーでロックアウト出来んじゃね
Azureはどうだかしらんが
53NAME IS NULL
垢版 |
2018/11/17(土) 09:13:38.55ID:QE+FFbm+
結局のところ守りたいとこまでの壁を1つにしますか2つ以上にしますか、ってとこじゃないの?
詳しくないから見当違いかもだけど
2018/11/17(土) 18:03:20.53ID:???
IPアドレス制限もできないのかよAzure
2018/11/19(月) 12:58:59.92ID:???
全世界から凸られまくるの嫌だよなぁ
2018/11/19(月) 13:18:58.81ID:???
AWSだとサブネットで制限できると思った
Azureは知らん
57NAME IS NULL
垢版 |
2018/11/20(火) 02:05:44.88ID:0nVlCieC
AzureだとNSGだな
58NAME 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秒あたりの平均待ち時間が倍増←たぶんここの原因が問題

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

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

>>63
OS再起動です。再起動した部隊に聞いたらOSのパッチ当てたとのこと(OSはWin2012)
そっちの確認が先だった、なに当てたか確認します。
65NAME IS NULL
垢版 |
2018/11/21(水) 13:35:51.35ID:3oLtE4+Y
年明けののIntelCPU脆弱性のやつだったらめちゃ遅くなるぞ
66NAME 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の使用形態は各パソコン個別で、
他のパソコンのデータベースを参照するような
ことはありません。

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

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

IIS経由のデータベースとかは知らん
2018/12/15(土) 17:51:57.77ID:???
考えてみたら、mdbファイルとかSQLiteとかをIIS経由で使うのはOKてことになるのかな
なんだかな
78NAME IS NULL
垢版 |
2018/12/17(月) 22:34:55.51ID:Y2xIxlHH
でも小規模な会社でもなけりゃだいたいのところは買ってるんじゃないの
ファイルサーバにしたってCAL不要のWindowsStorageServerじゃスペックきついし
サーバ毎に必要なわけじゃないしユーザ分なりデバイス分なり買うもんじゃないのかな
2018/12/18(火) 13:51:13.69ID:???
>>78
お前は何の話をしてる?
80NAME IS NULL
垢版 |
2018/12/18(火) 16:27:53.59ID:w5gk3kps
>>79
すまん
Windows Server CALの話に乗っかったつもりだったがクライアントOSの話だったね
81NAME 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 問 題 浮 上 !
2018/12/24(月) 00:32:48.07ID:???
DECLARE @TABLE TABLE = TABLE01;
SELECT * FROM @TABLE;

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

sp_executesql を使って SQL を文字列で合成する方法は知っていますが、正直めんどくさい。。
2018/12/28(金) 17:16:15.43ID:???
ままwww


http://twicas.x.fc2.com/
84NAME 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 ググれ
85NAME 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
86NAME IS NULL
垢版 |
2019/01/28(月) 05:18:49.81ID:nK0TPIBj
LDHから新発売の「EXSUPPLI BLOCK」「EXSUPPLI PARTY」ゼビオ・ヴィクトリアの全店舗で11月29日(木)発売開始!
2019/01/29(火) 11:22:21.77ID:???
select *
from テープ゛ル
where 日時>getdate()

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

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

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

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

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

しかもそれ日次バッチ処理w
102NAME IS NULL
垢版 |
2019/02/04(月) 18:59:45.28ID:???
そりゃベテランにもアホはいるだろ
たいてい淘汰されるんだけどお前ん所が生き残れる環境だっただけ
103NAME IS NULL
垢版 |
2019/02/07(木) 22:07:20.34ID:m3XO0Yy+
カラムストアインデックスの検証したけど、単一の表にアクセスするだけのSQLだと劇的な効果出たけど、複数の表を結合した複雑なクエリには無力だった。これって常識?
104NAME IS NULL
垢版 |
2019/02/07(木) 22:42:59.22ID:27zRlaWR
列から表に戻す操作が入るからまあ当たり前だな
105NAME IS NULL
垢版 |
2019/02/08(金) 23:12:13.40ID:ozRfEPKl
>>103
全部ひとつのテーブルにまとめてしまえばよいw
106NAME IS NULL
垢版 |
2019/02/09(土) 01:21:00.30ID:Wx+/pMSK
>>105
リレーショナルデータベース完全否定やん
107NAME IS NULL
垢版 |
2019/02/09(土) 01:49:59.75ID:IrWvKIY/
>>106
皮肉だから
108NAME IS NULL
垢版 |
2019/02/09(土) 07:59:02.61ID:???
リレーショナルデータベース
109NAME IS NULL
垢版 |
2019/02/09(土) 13:53:06.86ID:zMONpaiF
実際縦集計速くするための仕組みだから
そういうテーブル設計が正解でしょ
必要な項目が全て存在する集計用データマート
110NAME 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に接続するには、サーバー名にはどのような記入をすれば良いのでしょうか?
111NAME IS NULL
垢版 |
2019/02/10(日) 17:11:56.88ID:3nFQ3NJJ
>>110
デフォルトインスタンス(MSSQLSERVER)なら
VPSの外向けグローバルIPだけでOK
VPS側のファイヤーウォールで自宅側ルータのIPに絞っとかないと
アタック受けるから注意しろ
112NAME IS NULL
垢版 |
2019/02/10(日) 17:48:12.24ID:???
>>111
無事、接続出来ました。セキュリティの件もアドバイスありがとうございます。
113NAME IS NULL
垢版 |
2019/02/10(日) 18:34:29.82ID:???
>>103
ビュー作っても同じだよねきっと
114NAME IS NULL
垢版 |
2019/02/11(月) 04:33:48.44ID:XERbxblT
>>113
ただのインデックス付きビューではたいして変わらないだろう。

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

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

または目的のSQLを更新がかからない時間に実行して結果を取得しておく。
115NAME IS NULL
垢版 |
2019/02/20(水) 11:53:44.29ID:???
いったん対象範囲を#テーブルに切り出して、それにインデックス張って・・・ってのは時々やる
116NAME IS NULL
垢版 |
2019/03/04(月) 09:33:25.74ID:???
>>84
ありがとう
117NAME 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)
118NAME IS NULL
垢版 |
2019/03/21(木) 10:20:07.65ID:???
not exists句とexcept演算子ってほぼ同じものでしょうか?
どちらかがあればもう片方は無くても特に困らないですかね?
119NAME IS NULL
垢版 |
2019/03/21(木) 12:31:44.60ID:zHKJlC0U
>>118
求める結果が同じあればまだいいが、2つはまったくの別物。
120NAME 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] という定義名を得たいのです。
121NAME IS NULL
垢版 |
2019/04/05(金) 09:42:17.48ID:???
同じバージョン間でバックアップ、復元を行っていますが
何故かバックアップを作成した時点ではなく少し前の状態で復元されてしまいます
フルバックアップしたものと聞いているので最新の状態で復元されるものと考えていますが
バックアップの取り方に問題があるのでしょうか?
ちなみに復元する側はDBを一旦削除してから復元しています
122NAME IS NULL
垢版 |
2019/04/05(金) 17:53:14.62ID:???
自己解決しました

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

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

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

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


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

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

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

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

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

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

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

例えば商品を扱う時に
◆登録時
 商品(+カテゴリ)のレコードを追加、
 もしくは既存レコードの数量を更新
◆検索
 SELECT 〜 WHERE で商品検索。
 表示されたものを並べ替える時に、上記SELECT分に ORDER BY 〜 を追加。
142NAME 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」で動かす方が望ましいのでしょうか?

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

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

それとも、2016でなければ、2008でも2014でもさほど変わりませんか?
146NAME IS NULL
垢版 |
2019/05/01(水) 23:57:26.78ID:Z1eUgulk
>>145
本当に互換性に問題のある使い方をしているのかどうかを調べるのが基本だよ。
147NAME IS NULL
垢版 |
2019/05/02(木) 04:23:23.11ID:rL4gUhau
>>145
便所の落書きに判断を求めるなよ
正攻法なら最新に合わせて改修するだけだし
コストがかけられないなら確実に動作する状態でリプレースを待つだけだろ
148NAME IS NULL
垢版 |
2019/05/02(木) 20:31:31.39ID:???
そもそもそれホントに互換性レベルの問題なのか?
2016出てだいぶ立つから、メジャーな問題ならもっと話題になってると思うが
149NAME IS NULL
垢版 |
2019/05/02(木) 22:09:13.65ID:???
実行プランに影響するから>>142の環境だけで発生するとかもあり得る
150NAME 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以降において
急に引っかかるようになった感じですね
151NAME IS NULL
垢版 |
2019/05/03(金) 08:53:54.23ID:lS9VfNzG
>>150
だから製品の何が変わったのかマイクロソフトの情報を見ているのか?
152NAME IS NULL
垢版 |
2019/05/03(金) 09:11:40.19ID:???
切り分けもしないような奴はスルーしてくださいな
153NAME IS NULL
垢版 |
2019/05/03(金) 10:15:30.90ID:FseZSqD/
切り分け???
154NAME IS NULL
垢版 |
2019/05/03(金) 12:04:10.91ID:???
どこのSQLで遅くなってるかとかの確認もしてないんだろ?
155NAME IS NULL
垢版 |
2019/05/03(金) 23:55:03.93ID:???
例えばどんなSQLがどのくらい遅くなったのか、そのときの実行計画は同じなのかぐらいは調べてさらせよ
156NAME IS NULL
垢版 |
2019/05/04(土) 12:14:50.42ID:???
GW中に仕事のことは考えたくないなw
157NAME IS NULL
垢版 |
2019/05/04(土) 16:41:00.90ID:???
確か遅いSQL一発で出せるやり方あったよな
事前にフラグ立てなきゃいけなかった気もするが
158NAME IS NULL
垢版 |
2019/05/05(日) 01:15:20.04ID:EcFZ4uZL
言っておくが彼はSQLが遅くなったとは一度も書いていない。
159NAME IS NULL
垢版 |
2019/05/05(日) 07:50:24.90ID:???
そもそも何も書いてないから切り分けろって言われてるんだが…
160NAME IS NULL
垢版 |
2019/05/05(日) 13:27:25.13ID:???
DBでSQL実行が遅くなる以外に何が遅くなるって言うんだ…?
161NAME IS NULL
垢版 |
2019/05/05(日) 13:49:54.90ID:???
バックアップとか?
162NAME IS NULL
垢版 |
2019/05/05(日) 14:09:42.14ID:???
>>160
可能性は低いだろうけど接続に時間がかかるようになったとかメモリー足りなくてスラッシング起きてるとか
163NAME IS NULL
垢版 |
2019/05/05(日) 16:11:54.87ID:???
まあまずはなにがどう遅いか調べんと話にならん

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

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

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

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

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

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

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

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

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

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

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

なんとかなりませんか、、、
202NAME IS NULL
垢版 |
2019/11/22(金) 19:52:08.93ID:???
>>201
「お前はバカか」と言ってやれ。
無償版が信用ならんのなら、オープンソースは全部だめ。
アンドロイド携帯もルータもNASもオープンソースだらけだぞってね。
203NAME IS NULL
垢版 |
2019/11/22(金) 19:54:18.94ID:???
>>201
言ってくるってお前の立場は何なんだよ
値段の文句は見積もり出したベンダーに言えよ
204NAME IS NULL
垢版 |
2019/11/22(金) 20:00:28.57ID:???
>>203
おそらくベンダーのソフトの見積もりは妥当なもんだと思うよ。
作業料金とかの方でぼった食ってる場合が多い。
205NAME IS NULL
垢版 |
2019/11/22(金) 20:21:45.03ID:???
>>201
なぜSQL-Server Expressを入れようとしてる奴がベンダーから見積もり取ってるんだ?
普通にMSから直接買えばいいだろ
5席ぐらいならCAL入れても20万もかからん
https://www.microsoft.com/ja-jp/sql-server/sql-server-2017-pricing
206NAME IS NULL
垢版 |
2019/11/22(金) 22:02:46.18ID:???
>>205
20万でも高いとか言われそうな案件の悪寒
207NAME IS NULL
垢版 |
2019/11/23(土) 12:42:35.28ID:bO9R3pau
>>201
だが皆レスありがとう。
こんだけ来るとは思ってなかったw

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

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

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

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

だけどサポートや問い合わせは受けられないので会社のルール的に保守契約できないものは採用できないって事はあるよね
215NAME 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 とかを見て判断すればいい
216NAME IS NULL
垢版 |
2019/11/24(日) 13:09:57.98ID:???
そもそもそのテーブルの値をとってどうしたいんだ?

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

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

ストアド内から別トランザクションはちょっと難しいし、出来てもやるべきではない
ロールバックされないテーブルとかもない(シーケンスとかはロールバックされないけどな)
217NAME IS NULL
垢版 |
2019/11/27(水) 19:51:15.78ID:???
いつのまにか、SSMSでストアドのデバッグできなくなってるんだが
みんなどうしてるんだ?
218NAME IS NULL
垢版 |
2019/11/28(木) 00:54:11.94ID:???
>>217
https://docs.microsoft.com/ja-jp/sql/ssdt/how-to-debug-stored-procedures?view=sql-server-ver15
219NAME IS NULL
垢版 |
2019/11/28(木) 12:53:59.04ID:DUf6UIqk
Visual Studio必須になったような
220NAME IS NULL
垢版 |
2019/11/29(金) 01:29:28.21ID:???
やっぱりVSか
それはそれで問題あるんだよなぁ
221NAME IS NULL
垢版 |
2019/12/16(月) 09:31:32.90ID:???
Standard版だと40万円以上するのがExpress版だと無料って
一体どうなってんの、この会社?
222NAME IS NULL
垢版 |
2019/12/16(月) 11:42:07.37ID:OtwdW/Bu
>>221
素人?
223NAME IS NULL
垢版 |
2019/12/19(木) 06:21:18.37ID:???
sa
224NAME IS NULL
垢版 |
2019/12/19(木) 07:33:15.87ID:WCIv84d0
SQLOLEDB、MSDASQL、SQLNCLI11
接続プロバイダどれ使ってる
225NAME IS NULL
垢版 |
2019/12/19(木) 12:55:23.13ID:???
MSOLEDBSQL
226NAME IS NULL
垢版 |
2019/12/22(日) 20:16:53.58ID:???
SQLOLEDB

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

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

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

そもそも特定のディレクトリが開けないってはなしで、本質的にはSQLServerの話じゃないし
開こうとしたフォルダに対する開こうとしたユーザのアクセス権確認するしか確認方法なんてないよ
なぜそのアクセス権になったかはその次の話だ
245NAME IS NULL
垢版 |
2020/01/01(水) 14:11:51.79ID:mYS4vz8I
Windowsは権限が複雑だからな。
246NAME IS NULL
垢版 |
2020/01/02(木) 23:03:53.68ID:???
実機に触れねえトコロで質問するヤツにはクズが多い
247NAME IS NULL
垢版 |
2020/01/07(火) 20:03:21.46ID:???
Windows10でSQLServer2017ExpressのDATAフォルダがエクスプローラで開けなったと言った者です。
休み中に確認するつもりでしたが、手が回らず、休み明けになってしまい申し訳ありません。
結論から言うと何も問題無しにフォルダは開くことができました。
Windows10の設定には特に問題なかったようです。
他でも類似の不具合が確認されました。
明確にADの管理者から回答を得ていませんが、ADに何か不具合があるような感じです。
アドバイスを頂いた方ありがとうございました。
その他の方、スレ違いで失礼しました。
248NAME 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の許可なく公表できないことになってるから、あんまり情報無いんでしょうかね
249NAME IS NULL
垢版 |
2020/01/07(火) 21:32:42.96ID:???
>>248
それのどこが不具合事例なの?
250NAME IS NULL
垢版 |
2020/01/08(水) 01:49:58.86ID:???
>>249
単純なバージョンアップだけだと著しく動作速度が遅くなるって話
バージョンアップで遅くなる話はよくあるけど普通は数パーセントレベルだと思うけど何百パーセントて感じで遅くなりました
Hyper-V使い慣れている方には当然なのかもしれなけど今回初めてだったもので上げてみました
2008にする前はVirtalServerだったんでHyper-Vに乗り換えた時は問題になりませんでした
251NAME IS NULL
垢版 |
2020/01/08(水) 02:12:23.04ID:fMxLGwbt
一般的にそれは「単純なバージョンアップ」とは言わないと思うぞ
252NAME IS NULL
垢版 |
2020/01/08(水) 12:07:01.61ID:???
仮想化されてるけど物理構成変更だからな
253NAME 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でした
このくらい変われば物理構成変更と思うんですけどね
254NAME IS NULL
垢版 |
2020/02/03(月) 21:27:38.24ID:???
Sqlserverのバイナリ型は例えば本当にバイナリだけをdbに入れるのでしょうか?
アクセスのOLE型みたいにOLE型ヘッダーを付け加えたりしないのでしょうか?
ファイルのバイナリだけを保存してくれればいいのですが。
255NAME IS NULL
垢版 |
2020/02/03(月) 22:02:09.04ID:01WTNDQb
>>254
そんなの製品の仕様で、データファイルを直にいじろうとするのがおかしい。
256NAME IS NULL
垢版 |
2020/02/03(月) 22:56:54.27ID:???
バイナリデータを格納したいってだけで、データファイルを直で弄りたいとか言ってないけど?

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

クライアントからアクセスできる場所に置かないといけないと思うけど
アクセス権どうすんの?
266NAME IS NULL
垢版 |
2020/02/07(金) 19:01:39.18ID:???
必要ならアクセス権設定できるファイルサーバーに置くだけだろ
21世紀にもなって何をいってんだか
267NAME IS NULL
垢版 |
2020/02/07(金) 20:46:15.05ID:???
ファイルサーバは読取専用権限にしないと変更されてしまうので
権限設定がめんどくさいのでWebサーバがいいかな
見たかったらパス情報からリンク先url作ってダウンロードさせるようにすればいいと思う
268NAME IS NULL
垢版 |
2020/02/07(金) 21:58:26.25ID:???
静的ファイルのような扱いではなさそうだからそれもどうなのかね?
269NAME IS NULL
垢版 |
2020/02/08(土) 09:26:42.96ID:???
>>265
> クライアントからアクセスできる場所に置かないといけないと思うけど
サーバー経由で取得すればいいだけ
って言うかそういうシステム普通にあるでしょ
270NAME IS NULL
垢版 |
2020/02/12(水) 18:18:00.03ID:???
システム運用で考えたらデータベースバックアップとっときゃそれで済むってのは楽なんだよな
ファイルサーバー用意するならファイルサーバーの運用を別に考えなきゃならん(言っても大したことはないが手間にはなる)
271NAME IS NULL
垢版 |
2020/02/14(金) 12:55:14.02ID:???
外だしのメリットは例えば画像ファイルをデータベースに保存したりすると画像ファイルの解像度を下げて空き容量を増やす事が出来なくなる。最近の画像ファイルは解像度高くサイズが大きいので増えてくると空き容量がすぐ足りなくなるよ
272NAME IS NULL
垢版 |
2020/02/14(金) 13:41:35.81ID:???
>>271
解像度を落としたれば、落としてUPDATEしたらいいだけじゃないか
そもそも容量不足って、ファイルサーバーでも一緒じゃん。
足りなくなったらディスク増やすまでだろ。
273NAME IS NULL
垢版 |
2020/02/14(金) 15:07:10.14ID:???
SQL Server 2019 Developer が起動できなくなり、
データベースのmdfファイルもディレクトリ毎消えています。
イベントログには「SQL Server の評価期間が終了しました。」とあるのですが、
これは仕様ですか?
274NAME IS NULL
垢版 |
2020/02/14(金) 18:16:41.57ID:???
>>273
> データベースのmdfファイルもディレクトリ毎消えています。
MSがそんな鬼畜な事するとは思えないが…
275NAME IS NULL
垢版 |
2020/02/14(金) 18:33:02.19ID:???
そもそもdeveloperと評価版は別のはずだが
今のデベロッパーは登録しないと評価版とかになってるのか?
276NAME IS NULL
垢版 |
2020/02/14(金) 18:46:45.17ID:???
すみません、mdfファイルは前のバージョンのディレクトリにありました。
Developer版を入れ直してアタッチしたら復元できました。
確かではありませんが、無料トライアルからダウンロードしたファイルを使用して
Developerをインストールしたから期限切れになったのかもしれません。
ありがとうございました。
277NAME IS NULL
垢版 |
2020/02/14(金) 20:03:34.27ID:???
>>276
VisualStudioとかだと登録しないと30日とかで期限切れになるのと同じじゃないの
278NAME 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拠点の関連部門に勤務する社員/協働者の在宅勤務指示
279NAME IS NULL
垢版 |
2020/02/15(土) 02:28:11.73ID:???
まろちゃん><
280NAME IS NULL
垢版 |
2020/03/01(日) 11:24:02.92ID:???
>>278
「自分ひとりが感染したために周囲に大迷惑をかける」

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

集団感染って言えばいいところを
その語感から来る悪い印象を遠ざけたいがために
一般人に馴染みのない言葉を使う大本営体質はうんざりする
285NAME IS NULL
垢版 |
2020/03/13(金) 15:46:11.08ID:???
主任「ようやくA社へのクラスター導入を完了しました」
課長「おお、最後のX拠点もクラスターに入ったのか」
勘違い君「課長! 来週のA社への出張は遠慮します!」
286NAME 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句で指定したものの中で存在しなかったものを表示したいのです
287NAME IS NULL
垢版 |
2020/03/29(日) 18:27:26.89ID:???
NOT IN ( 'A', 'B' )じゃダメなの?
288NAME 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使ってもいい
289NAME IS NULL
垢版 |
2020/03/29(日) 20:05:41.26ID:???
>>287
それだと何も出ない
'C','D','E'を出力したいならデータとして持たないと駄目だから>>288みたいにvaluesでやるのが簡単
290NAME IS NULL
垢版 |
2020/03/29(日) 23:15:23.94ID:???
valuesってfrom文で使えるんだな、知らんかった
291NAME IS NULL
垢版 |
2020/03/30(月) 11:13:44.08ID:???
MeToo
292NAME IS NULL
垢版 |
2020/03/30(月) 20:53:55.86ID:???
SQLは存在しないデータを生み出すためのもんじゃないからな

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

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

ありがとうございました〜!
295NAME IS NULL
垢版 |
2020/03/31(火) 19:04:00.80ID:Kc++IpJB
いつもの自作自演
296NAME IS NULL
垢版 |
2020/03/31(火) 21:22:30.84ID:???
いつもの病人
297NAME IS NULL
垢版 |
2020/04/05(日) 03:12:44.11ID:???
カーソルについて質問させてください
カーソルを宣言するときのSELECT結果は1件のはずなのですがループが二回走ります
ループ内ではINSERを行っていて、デバッグするとその新規レコードがフェッチされて二回目のループが走っているように見えます
カーソルをループした処理の中で作成したレコードって、カーソルに反映されますか?
298NAME IS NULL
垢版 |
2020/04/05(日) 08:50:32.09ID:???
>>297
要コード提出
299NAME 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になってもう一度ループに入ってきます

説明が下手ですみません
何かご存じでしたらお願いします
300NAME IS NULL
垢版 |
2020/04/05(日) 13:32:27.79ID:???
testから抽出してtestに挿入していて、SELECTの条件が合うならそうなるんじゃないの
もしかするとSQLServerの設定で防げる場合もあるだろうけど、挙動が分からない時は試してみるけどね
'太郎 様'を'次郎 様'とかにして試してみれば、すぐわかるんじゃない
素人の俺が意見するのもなんだけど、確認するのが確実じゃないかな
301NAME IS NULL
垢版 |
2020/04/05(日) 14:33:25.10ID:???
>>300
確かにbegin tranつけないでinsertしてるし読めちゃってるかもね
既定値はauto commitだし
302NAME 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で対応できるケースだったりしない?
303NAME IS NULL
垢版 |
2020/04/05(日) 15:22:49.00ID:???
>>300,301,302
教えてくださってありがとうございます
300さんに教えていただいたように試してみたところループは一回で終わりました

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

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

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

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

生成されているのが、静的コピーかキー情報のみなのか、実体はフェッチ時に生成してるのかの違いだろ
310NAME IS NULL
垢版 |
2020/04/08(水) 04:43:20.74ID:4vUSdipG
Androidのデータベースアプリについて
https://mevius.5ch.net/test/read.cgi/db/1586288558/
311NAME IS NULL
垢版 |
2020/04/08(水) 07:42:52.21ID:ph1i5B2f
>>309
確かに表現がよくなかった。カーソルオープンはレコードの特定で、レコードの値をコピーするのがフェッチ。

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

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

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

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

あとミスオペを防ぐにはコネクション別に色を変えるのは結構有効
324NAME IS NULL
垢版 |
2020/07/28(火) 21:52:52.79ID:???
>>323
それしらんかった
ありがとう、勉強になった
325NAME IS NULL
垢版 |
2020/07/28(火) 22:42:58.45ID:???
リファレンスにはあまり詳しく書いてないから↓この辺読むといいと思う
https://www.sqlshack.com/prevent-sql-server-login-authentication-scope-using-logon-trigger/
326NAME IS NULL
垢版 |
2020/07/29(水) 12:51:54.54ID:???
>>323
コネクション別に色を変える方法は?
327NAME IS NULL
垢版 |
2020/07/29(水) 14:27:37.65ID:???
>>326
コネクションのプロパティで出来るでしょ
ステータスバーの色が変わる

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

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

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

アドオン作れば色々出来るんだろうけど、アドオン作るための資料ってみたことないんだよなぁ
329NAME IS NULL
垢版 |
2020/07/29(水) 21:50:38.33ID:???
色変えるのは>>325と同じサイトの↓ここがわかりやすかった。探せば日本語でもあるかも
https://www.sqlshack.com/how-to-set-custom-colors-in-the-ssms-status-bar/

アドオン(アドイン?)開発はこの3回シリーズと最後の参考資料のサイトを見ればできそう
https://solutioncenter.apexsql.com/the-art-and-science-of-creating-ssms-2012-add-ins-part-1-laying-the-foundation/
330NAME IS NULL
垢版 |
2020/07/29(水) 22:54:50.25ID:???
なるほど
基本Visual Studiのエディタ部分だから、アドオンそのものはVSのアドオンなのか
あとは各種SSMSのオブジェクトのリファレンスさえあればなんとなる、かも

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

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

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

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

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

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

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

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

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

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

※書き込めない原因はこの行だったかーw
350NAME IS NULL
垢版 |
2020/08/11(火) 21:55:48.05ID:txpGgpOg
char(5)か(hh:nn)のせいかな?
DB板でこれを半角で書けない意味はw
351NAME IS NULL
垢版 |
2020/08/11(火) 22:00:00.04ID:txpGgpOg
https://docs.microsoft.com/ja-jp/sql/integration-services/import-export-data/connect-to-a-sql-server-data-source-sql-server-import-and-export-wizard?view=sql-server-ver15
>重要
>Microsoft OLE DB Provider for SQL Server と SQL Server Native Client は、
>SQL Server 2012 より後のバージョンではサポートされません。
>代わりに、ODBC ドライバーを使用します。

ほんと?
OLEDBもまだあったけど、一応最新の{ODBC Driver 17 for SQL Server}にしといた
名前がナンバリングってことは、次回買い替え時にまたメンテが必要…
352NAME IS NULL
垢版 |
2020/08/11(火) 22:59:13.01ID:KQ3PRvmN
>>346
> SSMSでどこにつないでるだよ

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

この設定は、
「こういう文字列を設定するとできたことがある」
と先輩が教えてくれたものです。
353NAME IS NULL
垢版 |
2020/08/12(水) 09:29:12.25ID:???
>>352
Visual studio とか ASP.NET とかを入れてるんじゃね?
その他にもSQL-Server LocalDB使うアプリを入れるとインストールされたりする
354NAME IS NULL
垢版 |
2020/08/12(水) 09:55:56.64ID:???
なんか使えない先輩と言う感じだなあ
355NAME IS NULL
垢版 |
2020/08/12(水) 11:45:53.04ID:???
>>351
https://docs.microsoft.com/ja-jp/sql/connect/oledb/oledb-driver-for-sql-server?view=sql-serv
OLE DBそのものが非推奨になったのでその二つも非推奨になったんだが
OLE DBの非推奨が取り消された
だがそのドライバは非推奨のままで、新しいOLE DBドライバ使えってスタンス

まあ迷走してる感はあるが、新しめの使っとけば数年で使えなくなることはなさそう
356NAME IS NULL
垢版 |
2020/08/12(水) 11:52:14.71ID:???
>>354
使えない先輩というか、この程度の知識でSSMSでクエリ発行する業務そのものが理解できん
357NAME IS NULL
垢版 |
2020/08/12(水) 14:07:32.44ID:???
>>356
システムの事なんか全然知らず、サーバを構築したりすることもなく、
SQLでクエリーを作る作業者って想像できないわけじゃないよ。
でもトラブルがあった場合とかパフォーマンスが出ない時とかどうするんだろうなあとは思うな。
358NAME IS NULL
垢版 |
2020/08/12(水) 14:37:15.58ID:???
SSMSはVer18からストアドプロシージャのデバッグができなくなってたんだね
2008が残ってたからVer17を使い続けてたんだけど、現行は、VSDTを使えってことなのかな
359NAME IS NULL
垢版 |
2020/08/12(水) 16:45:51.11ID:???
>>357
相手によってはとりあえず使えるように必要な設定を呪文として提供することならままあると思う。
その呪文をきちんと理解できるように自分で調べる、問題があるなら質問を返す、などの器量は受け取る側の問題じゃないかと。
360NAME IS NULL
垢版 |
2020/08/12(水) 16:52:44.57ID:4QU2lpeJ
>>355
おお、さんくす

2020/05/06 2018 年に OLE DB の非推奨が取り消しとなり、リリースされました。
2020/06/29 2012 より後のバージョンではサポートされません。 代わりに、ODBC ドライバーを使用します。
日付は逆だけど…

でも直観的に、「非推奨が取り消し」の方が強いイメージ
なのでMSOLEDBSQLに戻した

俺が1人で作ったシステムを社内政治都合で廃止しようとした連中が5000万かけてIBMに発注したことがあった
半年後、元のシステムを使い続けることに決定しましたと、会議で役員が宣言
IBMのが機能不足の上に遅くてどうしようもなかったらしい
廃止の取り消しは、強い技術的な壁を感じる

ODBC駄目だな、と思ったのは20年近く前だったかな
SQLの解釈が違うような、変な癖があった
あとちょっと遅かったかな

今回も、EOF見るだけで特定の列が起因のエラーが出るっておかしい気もする
OLEもバグってるけど、エラーの出方が素直(ただしメッセージは分かりにくい)
361NAME IS NULL
垢版 |
2020/08/12(水) 17:00:46.71ID:4QU2lpeJ
下請けのプロに凄いもん作らせて、社内の素人に「保守」させるという
よくあるよ
「誰でもできる」は買い叩きのためなの神話なのに、多数が心から信じてる様子
それがブラック社会

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

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

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

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

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

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

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

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

SQL ServerやSSMSのバージョンも書かない上に
ライブラリの名前も正確に書けないようじゃまともに相手されなくて当然
必要なVC++の再頒布パッケージが入ってないならインストールに失敗してるんだよねそれ
374NAME IS NULL
垢版 |
2020/08/21(金) 22:01:11.18ID:???
sqlserverのパッチは出たら積極的に当てた方がよい?
問題がなければほっとくべき?
375NAME IS NULL
垢版 |
2020/08/21(金) 22:06:37.24ID:???
当てろよ
376NAME IS NULL
垢版 |
2020/08/21(金) 22:15:58.88ID:???
パススルークエリヤバすぎワロタ
377NAME IS NULL
垢版 |
2020/08/21(金) 22:41:50.30ID:???
>>374
どういう種類のサービスに使ってるかとパッチの内容次第
セキュリティ系なら基本的に当てる
378NAME IS NULL
垢版 |
2020/08/22(土) 05:05:36.41ID:???
最近のは統合パッチ?になって選択出来ない
と思っていたが
379NAME IS NULL
垢版 |
2020/08/22(土) 11:35:29.43ID:???
うちはcuもあてとるぞ
380NAME IS NULL
垢版 |
2020/08/22(土) 13:42:18.18ID:LMQ+Z71+
OS:Windows server 2016
DB:SQL server 2016 Standard Edition
SSMS:SQL server ManagementStudio17

上記環境でSQL server Management Studioに
設定したメンテナンスプランがスケジュール実行で
動きません。

・認証:SQL server認証
・メンテナンスプラン内容:データベースバックアップ
 (メンテナンスプランウィザードで作成)
・ MSSQL13.MSSQLSERVER\MSSQL\Logにログの作成なし
・該当メンテナンスプランを右クリックして、履歴の表示を
 選択しても、履歴の記録なし
・SQL server エージェント−ジョブ−該当メンテナンスプランを
 右クリックして、履歴の表示を選択しても、履歴の記録なし
・該当メンテナンスプランを右クリックして実行を選択すると
 正常に実行され、実行後履歴も表示され、ログも作成された

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

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

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

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

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

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

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

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

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

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

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

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

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

アホか
460NAME IS NULL
垢版 |
2020/11/20(金) 10:24:55.66ID:???
メディアとプロダクトキーを流用していいか聞くんだが?
ライセンスは2019買う前提だ
バンドル版じゃなければそれで行けるはずだが、バンドル版はいろんな条件が追加されてる可能性があるからな
461NAME IS NULL
垢版 |
2020/11/20(金) 12:58:39.69ID:???
>>460
他のライセンスのプロダクトキーを流用していいわけないだろ
462NAME IS NULL
垢版 |
2020/11/20(金) 23:54:47.82ID:???
ダウングレード権でそのプロダクト使う権利あればプロダクトキーも使って良いはずだが
463NAME IS NULL
垢版 |
2020/11/21(土) 10:27:18.32ID:???
>>462
これマジ?って思って確認したら
今は知らんけど少なくとも昔は違うライセンスのプロダクトキーを流用しても良かったみたい
https://social.technet.microsoft.com/Forums/en-US/4212d73b-626d-46fd-80b8-01d48d7b777d/
464NAME IS NULL
垢版 |
2020/11/30(月) 14:27:49.98ID:???
今さらなんだけどSQL Server Native Clientが推奨されていない事に気がつきました
MSOLEDBSQLへのプログラム書き換え結構面倒ですね(VB.NET)
(コネクション、コマンド、アダプター、データリーダーの名前が変わる)
SQL Server 2005から開発してて現状2017です

SQL Server Native Clientでは新機能サポートしないと書いてましたが
2017からのFORMATMESSAGE 関数は使えてます
CommandTextにT-SQL自分で書くやり方は影響しないのかな?
465NAME IS NULL
垢版 |
2020/12/01(火) 05:14:39.15ID:???
>>464
接続文字列書き換えるだけじゃないのか
新旧の名前教えてくれ
466NAME IS NULL
垢版 |
2020/12/01(火) 08:37:58.29ID:???
SQL Native Clientの場合
System.Data.SqlClient 名前空間
"Data Source=192.0.1.1;User ID=user;Password=pwd;Initial Catalog=db1" 接続文字列
Using a1 As New SqlConnection(ConnectionString)
,a2 As SqlCommand = a1.CreateCommand
,a3 As New SqlDataAdapter(a2)

MSOLEDBSQLの場合
System.Data.OleDb 名前空間
"Provider=MSOLEDBSQL;Data Source=192.0.1.1;User ID=user;Password=pwd;Initial Catalog=db1"
Using a1 As New OleDbConnection(ConnectionString)
,a2 As OleDbCommand = a1.CreateCommand
,a3 As New OleDbDataAdapter(a2)

SQLCLIENTとOLEDBではコネクション、コマンド、アダプター、データリーダーの名前が変わっています
置換すればいいだけなんだけど引数や戻り値にこれらがなってると少し面倒かも

OLEDBで接続文字列にSQLNCLIで使ってた人?ならMSOLEDBSQLに
変えるだけ済むけど
467NAME IS NULL
垢版 |
2020/12/02(水) 09:50:03.46ID:???
それはADO.NETの初期からあるOLEDB汎用のドライバで、MSOLEDBSQL用ではないわけだが

System.Data.SqlClient から Microsoft.Data.SqlClient にしろってことらしいが
名前空間の変更ぐらいで基本的なクラス名なんかは変更されてないと思うが
細かい動作なんかは未検証だからしらん
468NAME IS NULL
垢版 |
2020/12/02(水) 11:40:42.41ID:???
MSOLEDBSQL
ttps://docs.microsoft.com/ja-jp/sql/connect/oledb/download-oledb-driver-for-sql-server?view=sql-server-ver15
専用のドライバがあります

ttps://docs.microsoft.com/ja-jp/sql/connect/oledb/oledb-driver-for-sql-server?view=sql-server-ver15
ここではOLEDBでMSOLEDBSQLを推奨
Microsoft.Data.SqlClientには言及なし

Microsoft.Data.SqlClient
使ってみましたがクラスは変更なしでそのまま動きますね
Nugetで関係なさそうな物までいろいろひっついてくる
469NAME IS NULL
垢版 |
2020/12/02(水) 18:20:54.26ID:???
純粋なOLEDBのドライバと、ADO.NETのライブラリと混ぜて話してしまってるな
470NAME IS NULL
垢版 |
2020/12/03(木) 08:33:29.87ID:???
>>469
ありがとうございます
そもそも違いを意識してませんでした
OLEDBの最新がMSOLEDBSQL
ADO.NETの最新がMicrosoft.Data.SqlClient

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

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

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

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

資格本じゃなく普通の入門書は大きめの本屋に行けばそれなりにあるはず
しっかり学びたければ「Microsoft SQL Server 2012 Internals」がおすすめ
482NAME IS NULL
垢版 |
2021/02/06(土) 18:50:20.85ID:???
>>481
自習書じゃだめなのかな
483NAME IS NULL
垢版 |
2021/02/06(土) 19:00:00.81ID:???
SQL Serverでやってみよう、はよく使った
484NAME IS NULL
垢版 |
2021/02/07(日) 01:17:38.31ID:???
>>482
自習書いいと思うよ
昔お世話になった

でも今は404が返されるね
https://www.microsoft.com/ja-jp/cloud-platform/products-SQL-Server-2014-Evaluate.aspx

2017の3種類はダウンロードできたけど基礎的なことは書いてない
485NAME IS NULL
垢版 |
2021/02/16(火) 17:08:42.18ID:???
SSMS v15.0.18369.0で2つ目のクエリウィンドウを掴んで1つ目の下とかにドッキングさせると落ちるんだけど自分のとこだけ?
ここ2、3日で急に発生した
なおOSはWindows 10 20H2 19042.804
486NAME IS NULL
垢版 |
2021/03/16(火) 15:18:58.11ID:Bn/p8j1N
SSMSで質問です。
KeyであるIDが1から順に降られているテーブルで
ID='201'であるレコードを編集したい場合はどうすればいいのでしょうか?

上位200行に入らないレコードの編集方法を教えてください
487NAME IS NULL
垢版 |
2021/03/16(火) 16:56:41.51ID:???
あれは簡易的機能だろう
自分はupdate文作って更新してる
488NAME IS NULL
垢版 |
2021/03/16(火) 19:09:50.37ID:???
>>486
URLが何故か貼れないけど、検索したらすぐ出てくる
489NAME IS NULL
垢版 |
2021/03/18(木) 03:59:09.61ID:???
主キーでの1件UPDATEやなんのキーもない一時テーブルへの1件INSERTがおそくなるのって何が考えられるかな
プロシージャがたまに遅いときがあるってんで動的管理ビューのdm_exec_query_statsとprocedure_statsとるようにしたんだけど、
遅いときは決まってINSERTやUPDATEが遅くなってる
logical_writesやlogical_reads、physical_readsの値は特に変わらない
プロシージャ内のSELECTは速度安定してる
waitsとかもとってみるしかないかな
490NAME IS NULL
垢版 |
2021/03/18(木) 10:01:17.95ID:???
>>488
出来ました。
ありがとうございました。
491NAME IS NULL
垢版 |
2021/03/18(木) 12:21:20.99ID:???
>>489
page splitが発生すれば遅くなる
492489
垢版 |
2021/03/18(木) 14:20:31.16ID:???
>>491
ありがとうございます、page splitも見てみる
UPDATEしてるテーブルがインデックス14個もある...適正に作られてるんだろうか
それが原因とした場合、とりあえずはインデックスの断片化の解消、FILL Factorの値の見直しかな

splitは一時テーブルのINSERTも可能性あるのかな
#付きのテーブルで、プロシージャの最初にCreateしてるんだけど主キーもインデックスもなにもなくて
while内でループで一件ずつInsertしてるんだが、IF文で条件満たせばtruncateしてて、最高でも99件しか貯まらないようなテーブルなんだ
Updateの方でsplit多発してる場合、その影響を受けたりするものなのかな
493NAME IS NULL
垢版 |
2021/03/18(木) 15:29:09.05ID:???
>>492
一時テーブルでもpage splitの可能性はあるが
キーのないHeapならpage splitは発生しない

複数ユーザーがそのストアドを実行してる環境で
page splitが頻発してるならinsertのパフォーマンスもその影響を受ける可能性はある
でも一時テーブルとUPDATEで使ってるテーブルのストレージが違えば影響ないんじゃないかな
少なくとも1ユーザーがそのストアドを実行してるだけなら影響は受けない

INSERTのほうは一時テーブルで使ってるtemp dbへのI/Oが遅くなる原因が
何かないかを考えたほうがいいかも
あとはmemory optimizedにしてみるとか
494NAME IS NULL
垢版 |
2021/03/18(木) 17:57:27.50ID:???
通常のINSERTと遅いINSERTでどの程度の差があるのか?
レコード長は? 1ページに何件入る?
固定長か可変長か?
TRUNCATE直後のINSERTが遅い可能性は?
495489
垢版 |
2021/03/18(木) 21:38:23.03ID:???
>>493
なるほど
自分が関わってないシステムなんでその辺の情報も入手しつつ調べてみる

>>494
レコード長は長くない
全17カラムでBIGINTが1個、INTが12こ、TINYINTが3個、固定長文字列のCHAR3が1個

INSERTどれくらい遅いかだけど、問題ないとされてる日は平均70〜90マイクロ秒
遅いとされてるときは平均200マイクロ秒〜で、悪いと700、2000超えのときも
この値はプロシージャ実行前後でdm_exec_query_stats抜いて
execution_countとtotal_worker_timeの差を取って平均だした(erapse_timeも似たようなもの)
プロシージャ1回実行で10万〜30万件くらい処理してて、一番ひどい平均2000マイクロ秒越えのときは約10万回で212秒になってた
TRUNCATE直後が遅いとかそこまでは調査できてないです
496NAME IS NULL
垢版 |
2021/03/18(木) 22:40:07.73ID:???
MSSQLのtruncateの挙動とマッチしていない…のかも

・truncateすると、レコードにtruncateのマークがされるだけで
 ブロック中で生きてるレコードが無くてもブロックは開放されない
・空きブロックが無く、新たにブロックが必要になったときに、
 その時にtruncateのマークがされたレコードを調査して、
 ブロックが未使用だと判明したらそのブロックを再利用する
497NAME IS NULL
垢版 |
2021/03/18(木) 22:57:09.33ID:???
んーそれだとtempdb周りをまず疑うかな

この辺に該当しないか調べてみては?
https://www.sqlskills.com/blogs/paul/the-accidental-dba-day-27-of-30-troubleshooting-tempdb-contention/
https://www.red-gate.com/simple-talk/sql/sql-development/heaps-in-sql-server-part-4-pfs-contention/

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

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

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

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

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

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

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

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

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

複数件insertしててエラーでトランザクションがロールバックしてるので
テーブルには該当データがないように見えるとか?
508NAME IS NULL
垢版 |
2021/04/22(木) 21:42:23.00ID:???
Reporting Serviceって何処のスレで聞けば良いの?
初めてやるんだけど、帳票を出すためのツールって事くらいをようやくわかり書けてきたところ
509NAME IS NULL
垢版 |
2021/04/23(金) 08:41:43.91ID:???
PowerBI使ってとけ。
今からssrsだと後悔するぞ
510NAME IS NULL
垢版 |
2021/04/23(金) 13:36:29.46ID:???
>>506
とりあえず DBCC CHECKDB じゃね
localdbでできるのかどうか知らんけど
511NAME IS NULL
垢版 |
2021/05/13(木) 14:23:22.61ID:???
防衛省が中国のハッカーとやり合える人材を募集中 年収最高2000万円
https://leia.5ch.net/test/read.cgi/poverty/1620874048/
512NAME IS NULL
垢版 |
2021/06/17(木) 12:50:08.04ID:bQpmAAKU
おまえら接続プロバイダは何使ってる?
おれは、MSDASQL
513NAME IS NULL
垢版 |
2021/07/05(月) 12:25:38.17ID:???
With句使えますか?
使ってみたいので
514NAME IS NULL
垢版 |
2021/07/05(月) 20:21:44.47ID:???
>>513
まず使ってから書き込もう
515NAME IS NULL
垢版 |
2021/07/10(土) 17:26:45.17ID:???
select into #tmpの方が使いやすいね
516NAME IS NULL
垢版 |
2021/08/05(木) 22:36:51.55ID:btL3ovFW
ユーザーCALって、後からライセンス数増やすのは、追加分購入して認証するだけで増やせるの?
517NAME IS NULL
垢版 |
2021/08/07(土) 01:05:53.66ID:???
>>516
製品版使うときはコアライセンスぐらいしか使ったことないよ
ユーザーCALってどのくらいの規模で使ってるの?
ファイルサーバのユーザーCALなら使ったことある
認証が無かった時期で自分で数字を入れるだけで、ごまかそうと思えば多めの数字を入れるだけだけだった
業務用でライセンス数をごまかすようなことはないから当時は厳格な管理はしてなかったね
518NAME IS NULL
垢版 |
2021/08/22(日) 11:38:43.63ID:+WxTgcLC
https://kurashigoto.hokkaido.jp/flexibleSearch/search.php?offset=0&;limit=20&search=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://magazine.jp.square-enix.com/top/comics/?search=q&;x=0&y=0&sword=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://miyagi.doctor-search.tv/search/hospital?dis=3000&;Keyword=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://mtke-job.jp/list/keyword=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
https://news.dwango.jp/search/?s=%E3%83%98%E3%83%AB%E3%82%B9%E5%AC%A2%E3%83%BB%E5%A3%B2%E6%98%A5%E5%A9%A6%E3%81%AE%E9%87%91%E5%9F%8E%E8%8B%B1%E9%87%8C%E3%81%95%E3%82%93%EF%BC%881984%EF%BC%8F3%EF%BC%8F21%E7%94%9F%EF%BC%89%E3%81%AE%E8%87%AA%E6%92%AE%E3%82%8A%E3%83%8C%E3%83%BC%E3%83%89%E5%85%AC%E9%96%8B%E4%B8%ADavgle
519NAME IS NULL
垢版 |
2021/08/31(火) 19:43:02.17ID:T0bkdi6G
テーブル名に半角スペースつけて作成したら
半角スペースなしでテーブル作ろうとしたわ重複してるって言われる。バグなの?
520NAME IS NULL
垢版 |
2021/08/31(火) 21:15:04.51ID:???
>>519
問題なさそうだけどな
http://sqlfiddle.com/#!18/744d8/1

再現できるCREATE文とSQL Serverのバージョン情報を
521NAME IS NULL
垢版 |
2021/08/31(火) 23:34:39.11ID:???
末尾にスペースなんじゃね
522NAME IS NULL
垢版 |
2021/09/01(水) 02:12:00.19ID:???
>>519
SSMSのGUIだと不具合があるとかないかな
SQL文なら問題無いことが多い
また、単純に、既にビューがあるとかという落ちもあったり
523NAME IS NULL
垢版 |
2021/09/01(水) 16:51:37.87ID:???
新しいバージョンのドキュメントには書いてないけど末尾スペースはtrimされるのが仕様みたいよ
https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2008-r2/ms176027(v=sql.105)
524NAME IS NULL
垢版 |
2021/09/01(水) 23:43:12.04ID:N1bzhcTm
なんで半角スペースを使おうとしているのかがわからない。
525NAME IS NULL
垢版 |
2021/09/02(木) 02:18:44.81ID:w7l5TODt
>>524
そこはそうしちゃっただけ
526NAME IS NULL
垢版 |
2021/09/02(木) 08:09:01.61ID:???
間にスペースはまだわかるけど最後にスペースはさすがに理解できん
527NAME IS NULL
垢版 |
2021/09/02(木) 08:35:15.22ID:???
規約でテーブル名の桁数決まってんだよ
528NAME IS NULL
垢版 |
2021/09/02(木) 09:15:13.80ID:???
だとしても普通アンダースコアとかにしないか?
529NAME IS NULL
垢版 |
2021/09/02(木) 09:37:12.56ID:???
すごい規約だな
COBOLっぽさがあるけど普通はDB側じゃなくプログラム側で対処するよな
530NAME IS NULL
垢版 |
2021/09/02(木) 10:47:39.48ID:???
そんな規約があるような所はテーブル名もT0001234とかじゃねーの?
531NAME IS NULL
垢版 |
2021/09/02(木) 18:14:09.97ID:???
日本語の処理オプションの設定
532NAME IS NULL
垢版 |
2021/09/04(土) 04:20:49.33ID:sVLT48pB
クライアントソフトからsqlでビューの登録がタイムアウトしてしまう。何が原因かどうやりゃいいの?
533NAME IS NULL
垢版 |
2021/09/04(土) 10:36:14.21ID:???
>>532
エラーメッセージで何がタイムアウトをしてるのかは確認できてる?
534NAME IS NULL
垢版 |
2021/09/04(土) 12:52:19.62ID:sVLT48pB
>>533
以下で、何が原因かは特定できません。

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

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

まあSQL Serverはalter viewもトランザクション内でできたはずだから
デッドロックすることもなくはないんだろうけど
543NAME IS NULL
垢版 |
2021/09/13(月) 08:13:14.58ID:8fCPiXxw
排他ロックとデッドロックを間違えるレベルはひどいなw
544NAME IS NULL
垢版 |
2021/09/22(水) 02:05:41.92ID:iue4uJKZ
csvファイルでテーブルをキーが一致したらレコード洗い替えたい。バッチファイルとか実行すると作動するようにしたい。
可能ですか?
545NAME IS NULL
垢版 |
2021/09/22(水) 12:58:41.05ID:???
Accessはもう諦めたのか?
そんなんじゃ何一つ出来ないぞ
546NAME IS NULL
垢版 |
2021/09/22(水) 13:34:54.24ID:xdPa75UG
>>545
ん?
547NAME IS NULL
垢版 |
2021/09/23(木) 06:49:48.75ID:???
>>544
できる
548NAME IS NULL
垢版 |
2021/09/23(木) 12:16:42.00ID:bPVhBfA6
>>547
やり方おしえてよ
549NAME IS NULL
垢版 |
2021/09/23(木) 14:03:04.89ID:???
https://sqlserver.work/2020/06/27/%E3%83%90%E3%83%83%E3%83%81%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%8B%E3%82%89sqlcmd%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%80%81sql%E3%82%92%E5%AE%9F/
550NAME IS NULL
垢版 |
2021/09/23(木) 20:35:31.15ID:bPVhBfA6
sqlcmdをサーバはインストールしてるけど
クライアントはしてない場合にも
実行できる方法ない?
551NAME IS NULL
垢版 |
2021/09/23(木) 20:48:33.15ID:???
https://qiita.com/ReplyToCC/items/7ba0efa11bab44fe5af1
552NAME IS NULL
垢版 |
2021/09/23(木) 21:00:49.66ID:???
>>550
何らかの方法でサーバーにログインして実行すればいいんじゃね?
553NAME IS NULL
垢版 |
2021/09/23(木) 21:10:39.70ID:???
インストールしたらよくね?
554NAME IS NULL
垢版 |
2021/09/26(日) 10:51:50.76ID:???
>>550
SQLServerのドライバはOS標準で組み込まれてるんだから、バッチ処理で良いんならJSやVBSを使えば良いんじゃないの
PSよりはVBSの方が情報が多いように思うし、OFFICEが使えるならVBAでも良いんじゃないの
というかOFFICEが入ってるならMSクエリとかが使えるか

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

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

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

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

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

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

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

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

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

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

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

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

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

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

実行時にそのインデックス使うかどうかはわからんがな
そのパターンでインデックス使って早くなるのは大体はキー参照しなくて済むパターン
だから通常のインデックス列ではなくて付加列で良いというお薦めだろう
583NAME IS NULL
垢版 |
2021/11/11(木) 23:40:31.54ID:???
さすがにそれは文脈でわかってやれやw
584NAME IS NULL
垢版 |
2021/11/12(金) 00:03:37.35ID:???
>>582
日本語下手でごめんね。

例えば、
create table AAAA
(
colmun01 char(4) not null
,colmun02 char(4) not null
,seq int not null
,first_date varchar(8) null
,last_date varchar(8) null
,primary key
(
colmun01
,colmun02
,seq
)
)

ってテーブルがあって

select colmun01
from AAAA
where colmun02 = 'BBBB'
and '20210401' between isnull(first_date, '00000000') and isnull(last_date, '99999999')

ってクエリを実行して実際の実行プランを確認したら

CREATE INDEX CCCC
ON DDDD( colmun02)
include(first_date,last_date )

が足りないんじゃない?
って出ました。

付加列の中のカラムはisnull関数の引数なんだけどなんで?

ってなったんで最初の質問になりました。
(WEBだけだけど)調べても出てこなかったんで

first_date、last_date が date型じゃなくてvarchar型 なのは許して。元のテーブルがそうなんで
585NAME IS NULL
垢版 |
2021/11/12(金) 00:37:13.12ID:???
サジェストされてるインデックス追加すれば付加列としての効果はあるね

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

>でもそもそもBETWEENの左側に固定値をも>ってくる書き方って有りなのかなぁ
なるでしょっ、て思い込んでたんで改めて
isnull不要にしてfirst_data, last_dateをキーとしてインデックスはってfirst_data, last_dateのbetweenのみで実行してみたら、最適化の段階で大なり小なりに展開されてindex seekになってますね。実行プラン見る限りは
587NAME IS NULL
垢版 |
2021/11/12(金) 01:48:02.27ID:???
☓ isnull不要にしてfirst_data, last_dateをキーとしてインデックスはってfirst_data, last_dateのbetweenのみで実行してみたら

○ first_data, last_dateをキーとしてインデックスはってisnull不要にしたfirst_data, last_dateのbetweenのみで実行してみたら
588NAME IS NULL
垢版 |
2021/11/12(金) 01:50:12.13ID:???
☓ → ×
589NAME IS NULL
垢版 |
2021/11/12(金) 17:47:15.17ID:ud1MiESj
>>584
WHERE句の条件の書き方が異常
590NAME IS NULL
垢版 |
2021/11/12(金) 17:48:55.65ID:ud1MiESj
>>585
もうあんたの書き込みはネタとしか思えないんだけど?
591NAME IS NULL
垢版 |
2021/11/12(金) 18:25:15.51ID:wE0oiQg0
>>584
インデックスにこだわっている理由は?
592NAME IS NULL
垢版 |
2021/11/12(金) 19:08:33.33ID:???
>>591
こだわっている理由というか、このクエリでなんでこの条件がパフォーマンス改善の候補として上がってきたのかの理由が知りたい。

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


前にも書いたけど、元の処理のパフォーマンス改善自体はどうでもいい
593NAME IS NULL
垢版 |
2021/11/12(金) 19:18:04.33ID:wE0oiQg0
isnull関数を使っているから、他人には何を知りたいのかわからない。
594NAME IS NULL
垢版 |
2021/11/12(金) 19:42:04.72ID:???
インデックスに付加列しとけばインデックスの読み込みだけで済むからでしょう
付加列にないカラムを参照したらインデックス以外にテーブルも読み込みしないといけないから遅くなる
595NAME IS NULL
垢版 |
2021/11/12(金) 19:54:35.42ID:wE0oiQg0
典型的なSQL Server脳だなw
596NAME IS NULL
垢版 |
2021/11/12(金) 19:55:36.00ID:wE0oiQg0
インデックスそのものが大きければ意味がない。
597NAME IS NULL
垢版 |
2021/11/12(金) 21:42:13.95ID:???
いつもの嫌なやつ召喚しちゃったね・・・
598NAME IS NULL
垢版 |
2021/11/12(金) 22:17:40.73ID:wE0oiQg0
インデックススキャンにしなければいけない→テーブル全体のインデックスを作る→このインデックスはいらないのでは?
599NAME IS NULL
垢版 |
2021/11/12(金) 22:20:21.09ID:wE0oiQg0
こんな感じじゃない?
https://youtube.com/shorts/h5Y9yjxPTJo?feature=share
600NAME 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クエリでまとめて実行し実際の実行プランを確認
601NAME IS NULL
垢版 |
2021/11/13(土) 19:10:10.28ID:???
結果:
AAAA Clustered Index Scan となりクエリコスト30%
BBBB Clustered Index Scan となりクエリコスト31% ※作成したindexは効かず
CCCC IX_XXXX がindex Seek となりクエリコスト6%
DDDD IX_XXXX がindex Seek となりクエリコスト6%
DDDD IX_XXXX がindex Scan となりクエリコスト28%

となりました。
この結果からIndexのキー列、または付加列が関数の引数として使用されている場合もindexが効く場合があるようです

ちなみにBBBBテーブルの実行の際にヒント句でindexを強制した場合は
AAAA クエリコスト8%
BBBB クエリコスト81%
CCCC クエリコスト2%
DDDD クエリコスト2%
DDDD クエリコスト8%
となりました。
602NAME IS NULL
垢版 |
2021/11/13(土) 19:29:49.86ID:???
>>575の通りの理解だったので、なぜこのように動くのかがわかりません。
何か知っている方や理解に誤りなどありましたら教えていただけると助かります
603NAME IS NULL
垢版 |
2021/11/13(土) 21:36:11.89ID:???
>>601
演算のパーセント表示だけで比較されてもわからんがな
604NAME IS NULL
垢版 |
2021/11/14(日) 02:47:16.70ID:???
>>603
では、他にどのような情報がアレバ良いのですか?
605NAME IS NULL
垢版 |
2021/11/14(日) 21:36:16.11ID:???
クエリコストの大小を比較したいなら各クエリ全体のコスト
コスト1000の6%と、コスト10の30%なら後者のほうが効率がいいからね

SET SHOWPLAN_ALL ON;
SET STATISTICS PROFILE ON;
SET STATICTICS IO ON;

↑この3つでそれぞれ表示される値の意味をdocs見て把握しておくといいと思う
606NAME IS NULL
垢版 |
2021/11/15(月) 00:21:06.02ID:???
>>605
ありがとうございます。
ただ今回自分が知りたいことはコストはあまり関係ないんですよね。

違う結果になったことを明示するための情報としてコストを出したつもりでしたが下記の知りたいことからすると不要な情報でした。
すみません。

知りたいことは実行したクエリ

select colmun01
from <テーブル名>
where colmun02 = 'BBBB'
and '20210401' between isnull(first_date, '00000000') and isnull(last_date, '99999999')

のfirst_date,last_dateはisnull関数の引数なのになぜ付加列、またはindexのキー列が利用されて、index seekのみで解決されているのか?
になります。※1

元々indexのキー列、付加列は関数の引数や計算が含まれるとwhere句で利用されない(と思っていた)ため、CCCCテーブル、DDDDテーブルの実行はindex seek後にクラスター化indexのキー参照が起こると思っていました。
これはヒント句でindexの利用を矯正したBBBBの実行と同じ動きです。

一応テストした結果として、※1については解決できる場合があり、そもそもの自分の知識が誤っていることがわかりました。

ので「indexのキー列、付加列が関数の引数や計算が含まれてもwhere句で利用される」のはどのような場合か、明確な基準があるのかなどがわかれば教えていただければとおもいます。

一部表現が適切でなく伝わりにくい部分があるかと思いますが汲み取っていただけると助かります。
607NAME IS NULL
垢版 |
2021/11/15(月) 01:23:19.68ID:???
利用されないのはオプティマイザが利用しても効果がないと判断したからで、効果があると思えば利用する
それだけのこと
べつに引数や計算だろうと直接の比較だろうと同じなんだが
608NAME IS NULL
垢版 |
2021/11/15(月) 02:06:34.07ID:???
>>606
column02だけでindex seekしてるのか
column02に加えてfirst_dateやlast_date含めてindex seekしてるのかseek predicatesで確認した?
609NAME IS NULL
垢版 |
2021/11/15(月) 23:18:02.81ID:???
>>608
これでした。ありがとうございます。
index seekの中を確認したところ、column02のみがseekでisnull関数の引数になっているfirst_dateとlast_dateはwhereでの参照でした。

CCCCとDDDDのクエリからisnull関数を外したものの実行結果と比較していろいろ合点がいきました。

GUI上のindex seekの表示しか見ていない浅い確認でそれ以降の知識がなかったため、自力でここにたどり着くのは難しかったと思います。
あらためてありがとうございました。

ついでにで申し訳ないのですが、今まで実行プラン上でindex seek、またはindex scanになっていることを「indexが効いている」と表現していたのですが、これは一般的に間違っていますか?
質問の中で色々表現がおかしく、理解しづらい部分もあったと思いますので少しでも修正できればと思っております。
610NAME IS NULL
垢版 |
2021/11/15(月) 23:40:19.19ID:???
>>607
今迄はあなたと同じように「オプティマイザの気分」で済ませてたのですが、今回は少し突き詰めたかったのです
611NAME IS NULL
垢版 |
2021/11/16(火) 00:00:34.73ID:???
SQLserverのハードを買い替えようと検討してもるんだけどストレージをSSDしても大丈夫か聞きたい。
SSDは書き込みの回数制限があり、頻繁な書き込みのあるSQLserverには向かないと昔聞いた事あったんだけど今は大丈夫か教えて下さい。
612NAME IS NULL
垢版 |
2021/11/17(水) 00:13:51.33ID:???
>>611
SQLserverに向かないってよりもアクセス頻度の問題のような気がするけど。
ssdって言ってもqlc,tlc,mlcのような種類もあるし。
ただ、前にベンダーに見積もりとった時に聞いたのは利用用途が中規模のwebサービスなら、5年位であればそんなに気にしなくて良いって言われた。(ここでのSSDの種類が何か、中規模がどの程度かは忘れた。参考にならずすまん)
ちなみにどんな利用用途なの?
社内用か、インターネットに公開してるサービスなのか(1日のアクセスはどの程度か)、それとも個人用か

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

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

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

あるいは皆さんの、ストアドの単体テストの楽な方法とかも何かtipsがあれば
650NAME IS NULL
垢版 |
2022/03/30(水) 01:29:25.29ID:???
Visual StudioのSQL Server Data Tools(SSDT)
651NAME IS NULL
垢版 |
2022/03/30(水) 02:36:50.14ID:Q0Wnmomb
>>649
そもそもTransact-SQLをわかってますか?
652NAME IS NULL
垢版 |
2022/03/30(水) 09:01:40.57ID:???
いつものことながらID付きはとことん的外れだな
653NAME IS NULL
垢版 |
2022/04/02(土) 00:32:00.52ID:???
接続文字列のData SourceとServerに違いはあるの?
どちらもサーバーのインスタンス名かIPアドレスとポートの指定だと思ってるけど
654NAME IS NULL
垢版 |
2022/04/02(土) 03:40:35.60ID:???
SQLServerでServerといったら基本的にはSQLServerがインストールされているサーバーかサーバーとそのインスタンス名まで
DataSourceとなるとSQLServer以外のDBMSやフラットファイルも含まれる
655NAME IS NULL
垢版 |
2022/04/02(土) 13:18:09.84ID:???
>>654
ありがとうございます
656NAME IS NULL
垢版 |
2022/04/05(火) 17:10:51.74ID:???
久々にSSMS2008を触ってて
クエリショートカットのカスタマイズした機能が動かなくなってるんだけど
同じようなことしてる人いる?(COMMITとROLLBACK)
https://dotup.org/uploda/dotup.org2767912.png
657NAME IS NULL
垢版 |
2022/04/05(火) 18:16:10.44ID:???
>>656
ごめん自己解決
間違ってF5押してたわ
658NAME IS NULL
垢版 |
2022/04/06(水) 22:53:45.80ID:2Dm57SjU
F5キーでコミットとはおそろしい発想だな
659NAME IS NULL
垢版 |
2022/05/17(火) 09:25:02.74ID:???
tes
660NAME IS NULL
垢版 |
2022/05/19(木) 16:16:58.24ID:QTEsI/3c
教えて下さい。
ACCESS2019、SQL Server2012利用しています。

ACCESSからSQL ServerのテーブルへODBCでリンクテーブルを貼っている環境があるんですが、
特定の端末だけ、リンクテーブルを開くと、内容が突然すべて#DELETEになってしまう に現象に見舞われました。

https://pctips.jp/pc-soft/access-sqlserver-deleted
このサイトを始めとして、同様の現象を解説しているサイトには、SQL Server側でbigint型を使ってるせいとありましたが、
bigint型は使っていませんし、特定の端末のみこの現象が発生しています。
再起動やODBC設定の作り直し、リンクテーブルの貼り直しなどしても治りません。


更に不思議なことに、次の日になると治ってしまいます。
で、しばらくたつとまた同じ現象に見舞われます。
(ここ一週間で3回です)

私も長年SE・PGやっていますが、このような現象は初めてで、
途方にくれています。
最悪PC変えれば治りそうな感じではあるのですが・・

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

まあ、クライアントがまったく同じバージョンでまったく同じデータを表示して起こるなら
ネットワーク系の問題の可能性が高そうだけど
それかODBC定義が違ってるとか
ウィルスチェック系のソフトが悪さしてるんじゃね
662NAME IS NULL
垢版 |
2022/05/19(木) 22:08:33.89ID:???
ググるとよくある症状みたいよ
https://stackoverflow.com/questions/54226858/
https://stackoverflow.com/questions/58454256/

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

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

連番はSQL SEVERに自動で振ってもらおうと思います。
そして、INSERTとOUTPUT inserted.*を使って、
その新しい番号を得たいと思います。
670NAME IS NULL
垢版 |
2022/11/15(火) 23:42:08.86ID:uZbfP42z
>>669
訂正します
INSERTにOUTPUT inserted.*を組み合わせて
671NAME IS NULL
垢版 |
2022/11/17(木) 12:06:05.40ID:???
SQL Server 2022 is now generally available
https://cloudblogs.microsoft.com/sqlserver/2022/11/16/sql-server-2022-is-now-generally-available/
672NAME IS NULL
垢版 |
2022/11/17(木) 19:21:02.25ID:???
>>667
まず分離レベルってのを理解しような
673NAME IS NULL
垢版 |
2022/11/17(木) 23:47:32.26ID:???
>>671
エクスプレス版を取りあえずダウンロードだけしといたw
SSMSが同じだからなあ…どうなんだろ
674NAME IS NULL
垢版 |
2022/11/24(木) 11:28:43.27ID:DKlnX/+1
質問です。

テーブルA(1)---(∞)テーブルB(∞)---(1)テーブルA

こういう関係になるテーブルBを考えています。
即ち、テーブルAの外部キーをテーブルBの2列で持つことになります。
同じテーブルAについて外部キーを持っても、テーブルBの2列の意味はそれぞれで異なります。

こういうテーブルBの2列は、テーブルAの外部キーを持つので、列名の設定に困ります。
一列だけならforeignkeyofA_CDという列をテーブルBに設定すれば良いですが、こういう場合はどんなふうに列名を設定するのが良いのでしょうか。
675NAME IS NULL
垢版 |
2022/11/24(木) 12:21:15.60ID:???
>>674
foreignkeyof ってググっても出ないから、そんな作法は一般的じゃないよね
普通に名詞だけの単語でテーブルA,B共通の名前にして、エイリアス名で分ければ?
676NAME IS NULL
垢版 |
2022/11/24(木) 12:25:57.91ID:???
悩むくらいなら、
/* コメントxxxxx */
みたいにメモを残すほうが、あとでみてもわかる
677NAME IS NULL
垢版 |
2022/11/24(木) 12:30:02.95ID:???
>>674
列名?
外部キー制約名じゃなくて?

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

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

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


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

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

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

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

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

説明がいるデータモデルにしておくと、自分でもわからなくなる。
688NAME IS NULL
垢版 |
2022/11/26(土) 18:53:09.89ID:o+PA739f
トランザクションデータの親子関係と、マスタデータの関係がごっちゃになっているのかな?
689682
垢版 |
2022/11/28(月) 07:15:24.18ID:Y7UCoM6L
table_A.列名あいう(table_Aの主キー)

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

table_Aの外部キーが保存されるこの2列ですが、table_Aの同じ行とリンクするものではありません。

table_B.列名あいう_用途(table_A外部キー)
は、たとえば
690NAME IS NULL
垢版 |
2022/11/28(月) 07:19:51.81ID:Y7UCoM6L
>>689
table_B.列名あいう_用途(table_A外部キー)
は、たとえば、

table_B.列名あいう_処理ターゲット(table_A外部キー)
とでもして、処理と処理済みであることを銘記するためのものです。

table_B.列名あいう(table_A外部キー)がリンクするtable_Aの行とは違う行とリンクします。
691NAME IS NULL
垢版 |
2022/11/28(月) 07:20:23.19ID:Y7UCoM6L
>>686
ありがとうございます。
そのように考えました。
692NAME IS NULL
垢版 |
2022/11/28(月) 07:21:29.60ID:Y7UCoM6L
>>685
アクセスのGUIってそうなってなかった?
693NAME IS NULL
垢版 |
2022/11/28(月) 07:28:43.92ID:Y7UCoM6L
>>690
table_B.列名あいう(table_A外部キー)
table_B.列名あいう_用途(table_A外部キー)

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

これCOBOLの発想か?
695NAME IS NULL
垢版 |
2022/11/28(月) 15:04:08.76ID:???
>>693
親子関係なのか
それならそういう命名もある程度納得できる

taskテーブルとtask_dependencyテーブルがあって
task_dependencyテーブルではtask Aが終わったら
task B, C, Dを実行するみたいな依存関係を管理する時に
↓こういうイメージの構成にして(A, B), (A, C), (A, D)の3レコードを登録する形だよね

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

参考になりました!
717NAME IS NULL
垢版 |
2022/12/07(水) 01:11:49.50ID:???
なにかやらかしたらしい…
幸いODBCドライバー使ってないけど

https://forest.watch.impress.co.jp/docs/news/1461295.html
718NAME IS NULL
垢版 |
2022/12/07(水) 02:44:35.29ID:+zJ/wx/Y
>>717
こういうのがあるからアップデートしたくない

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

結局、変わらなかった。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

昔はどうで今はどうなのか詳しく
818NAME IS NULL
垢版 |
2023/09/19(火) 00:15:00.16ID:???
それってどうしてそうなの?
819NAME IS NULL
垢版 |
2023/09/19(火) 00:29:15.64ID:???
https://www.microsoft.com/ja-jp/sql-server/sql-server-downloads

SQL Server 2022 Developer は、非運用環境におけるデータベースの開発およびテスト向けの、全機能を備えた無料エディションです。

SQL Server 2022 Express は、デスクトップ、Web、小規模サーバー向けのアプリケーションの開発と運用に最適な、SQL Server の無料エディションです。
820NAME IS NULL
垢版 |
2023/10/04(水) 00:26:39.56ID:???
クエリストア、めちゃくちゃ便利ですね
Oracleから移ってきたけどsql serverの便利さ
821NAME IS NULL
垢版 |
2023/10/04(水) 00:28:48.45ID:???
に驚いています。
ssmsやc#との連携のしやすさなどエコシステム全体がユーザーフレンドリーな感じ
逆にOracleが不便なだけなのかもだけど
822NAME IS NULL
垢版 |
2023/10/08(日) 08:12:40.58ID:1K2SEOD7
公式ドキュメントに問題があるせいで伸びないSQL Server
823NAME IS NULL
垢版 |
2023/10/18(水) 08:53:43.60ID:???
ねぇ…試してみる?
824NAME IS NULL
垢版 |
2023/10/19(木) 00:03:00.82ID:???
エラーの有無にかかわらずログテーブルへの出力をしたいんですが、オラクルのような自律型トランザクションってないんですよね…
皆さんどうやってます?
825NAME IS NULL
垢版 |
2023/10/19(木) 15:21:35.75ID:???
それってメインの処理は成功してログテーブルへの出力が失敗した場合はどう対処してるの?
826NAME IS NULL
垢版 |
2023/10/19(木) 20:34:46.35ID:???
テキストファイルに吐いといて定期的にログテーブルに乗せるとか
原始的すぎるかな
827NAME IS NULL
垢版 |
2023/10/19(木) 20:35:14.26ID:???
テキストファイルに吐いといて定期的にログテーブルに乗せるとか
原始的すぎるかな
828NAME IS NULL
垢版 |
2023/10/19(木) 20:35:48.55ID:???
テキストファイルに吐いといて定期的にログテーブルに乗せるとか
原始的すぎるかな
829NAME IS NULL
垢版 |
2023/10/19(木) 20:38:16.15ID:???
ごめん!
830NAME IS NULL
垢版 |
2023/10/20(金) 19:12:09.41ID:???
本当にロールバックさせたいとこだけ子トランザクションにして全体はコミットする
831NAME IS NULL
垢版 |
2023/10/20(金) 19:12:18.60ID:???
本当にロールバックさせたいとこだけ子トランザクションにして全体はコミットする
832NAME IS NULL
垢版 |
2023/10/21(土) 09:43:57.33ID:???
トランザクションをハンドリングするレイヤーとログ出力するレイヤーが揃ってないんだろう
テーブル変数やリンクテーブル使った回避策もあるけど揃ってないのがアンチパターンなので設計を見直したほうがいい
833NAME IS NULL
垢版 |
2023/10/21(土) 13:56:10.51ID:???
設計がおかしいって言っとけばなんかわかってる感が出るから便利よね
どうおかしいかは言ってる本人もわからない
834NAME IS NULL
垢版 |
2023/11/18(土) 00:15:40.15ID:t4HCeZxT
Accessマスターしたんだが次何やればいい?
835NAME IS NULL
垢版 |
2023/12/03(日) 23:54:43.93ID:???
test
836NAME IS NULL
垢版 |
2023/12/07(木) 00:03:22.93ID:???
ssmsとazure data studioそれぞれで実行計画出したときの不足インデックス提案が微妙に違うことに気づいたけどなんで?
837NAME IS NULL
垢版 |
2023/12/14(木) 14:28:23.30ID:???
ごめん、ポスグレに移行します
838NAME IS NULL
垢版 |
2023/12/14(木) 14:37:57.09ID:LkoJvXxu
いいね👍
839NAME IS NULL
垢版 |
2023/12/14(木) 23:52:39.82ID:???
azureの料金上がるし、azureからawsに乗り換えるってなるとDBもついでにsql serverからauroraに移行、みたいな話は増えそう
840NAME IS NULL
垢版 |
2023/12/16(土) 23:22:24.72ID:dHU1nQbd
>>839
オラクルクラウドだろ?
841NAME IS NULL
垢版 |
2023/12/16(土) 23:48:47.64ID:???
オラクルクラウドとか罰ゲーム
VMがタダなのでたまに使うくらい
842NAME IS NULL
垢版 |
2023/12/17(日) 01:42:37.95ID:rc5EPYnZ
オラクルクラウドはAzureと提携しているんだが?
843NAME IS NULL
垢版 |
2023/12/17(日) 02:28:25.20ID:???
「提携してるんだが」wwwwww
844NAME IS NULL
垢版 |
2023/12/17(日) 21:30:43.12ID:rc5EPYnZ
知らねえだけか
Azureの意味も製品の単位だとまちがって思い込んでいるな
845NAME IS NULL
垢版 |
2023/12/18(月) 08:18:13.62ID:???
awsのマネージドsql serverって実際移行先としてどうなんだろう
846NAME IS NULL
垢版 |
2023/12/20(水) 15:34:03.74ID:6ZdiLoKb
>>845
クソ高いだけ
847NAME IS NULL
垢版 |
2024/01/03(水) 17:51:37.12ID:???
クラウドはDBが一番コストかかるので頭が痛い
案件ごとにチューニングしてvCore2つなんとか減らせるかどうか…を突き詰めるのしんどいわ
848NAME IS NULL
垢版 |
2024/01/04(木) 19:09:30.45ID:9A15oU4c
みんなの後悔するんだよな
849NAME IS NULL
垢版 |
2024/01/04(木) 21:01:53.61ID:???
インフラメンテコストを丸投げできるなら安い
DBサーバのメンテ不足で痛い目見た経験ある人はこのスレ多いでしょ
850NAME IS NULL
垢版 |
2024/01/05(金) 22:59:11.61ID:E7vKZkjZ
オラクルクラウドはいいぞ
なんせただでサーバー立てられるからな
ある時よくわからん理由で消されるけどwww
851NAME IS NULL
垢版 |
2024/01/06(土) 00:13:48.60ID:???
数年前に勝手にインスタンス消されたってツイッターで騒ぎあったね
信用してないからタダでも使わないかなw
852NAME IS NULL
垢版 |
2024/01/06(土) 22:08:12.83ID:+8fz8nB8
数年前と現在の区別がないのか
853NAME IS NULL
垢版 |
2024/03/18(月) 00:34:07.58ID:???
サブスクがコスト高でオンプレ回帰の流れ
クラウドの役割なんてバックアップ程度が相応しい
854NAME IS NULL
垢版 |
2024/03/18(月) 00:50:59.03ID:???
お前の中ではそうなんだろうな
855NAME IS NULL
垢版 |
2024/03/18(月) 01:01:28.53ID:???
定期的にボラクル君が出現するねw
それも決まってなぜかSQL Serverスレww
856NAME IS NULL
垢版 |
2024/03/18(月) 04:06:55.63ID:???
従量課金のことをサブスクと呼ぶやつとは希少種だな
857!
垢版 |
2024/04/29(月) 04:26:52.27ID:???
azureで無料版サーバレスがプレビュー
858NAME IS NULL
垢版 |
2024/07/03(水) 16:05:42.02ID:???
select * except(abc) from hoge
で abc 列以外を選択できるRDBがありますが、SQLServerでこういう事できますか?
859NAME IS NULL
垢版 |
2024/08/15(木) 19:47:06.08ID:QzVtyKRD
sybase系はやはり嫌われていて、脱SQL Serverの流れが止まらない。
860NAME IS NULL
垢版 |
2024/08/17(土) 10:17:19.66ID:uiuzMKuw
最新の醜い奇形OSが普及しない間抜け愚鈍なMicrosoft爆
861NAME IS NULL
垢版 |
2024/08/17(土) 18:36:50.78ID:9qQH55uU
MySQLにすら選定で負けてしまっている
862NAME IS NULL
垢版 |
2024/08/22(木) 21:36:58.36ID:isHcuDV8
リンクサーバーのソースにmdbを使うと上手く行くのに、csvを使うといさむが居ないって言われるの何だぜ?
ファイルの場所とACE.OLEDBは同じ
863NAME IS NULL
垢版 |
2024/08/23(金) 20:47:43.97ID:es0ruq1O
>>862
「いさむ」さん?
864NAME IS NULL
垢版 |
2024/08/23(金) 21:06:55.52ID:yAtp65Kw
そう、いさむ運転手がいねえよって言われるやつ
どちらにしても自決しました
mdbとxlsxがファイル指定でcsvだけフォルダ指定だなんて分かるか~い!
865NAME IS NULL
垢版 |
2024/08/23(金) 21:49:27.53ID:YuqGesnN
>>864
ファイル形式がわからないという理由
866NAME IS NULL
垢版 |
2024/10/01(火) 02:01:55.91ID:???
CosmosDBとSQL DatabaseでCQRS作るのが最強
867NAME IS NULL
垢版 |
2024/10/20(日) 06:02:18.08ID:???
複合indexとカバリングindexの違いがわかりません…
複合indexの考え方の一つとして、キー以外でも必要なカラムは全部indexに含めてしまえ!がカバリングindexだと思ってたのですが、そう言い切ってる情報とかがあまり見当たらずもやもやします
付加列indexはわかるんですけど
868NAME IS NULL
垢版 |
2024/10/20(日) 12:27:30.00ID:???
複合インデックスは複数カラムを含むインデックス
カバリングインデックスは特定のクエリに必要なカラムをすべて含むインデックスのこと

カバリングインデックスは基本的に複合インデックスだけど
複合インデックスがカバリングインデックスとなっているかどうかはクエリ次第

ノンクラスタードインデックスでインデックスだけじゃなくリーフノードへのアクセスが必要な場合でも
クエリに必要なカラムがすべて含まれてれば一般的にはカバリングインデックスと呼ばれる
869NAME IS NULL
垢版 |
2024/10/21(月) 00:36:57.58ID:???
ですよね。ありがとうございます。
実際の機能と呼び方がごっちゃになってる情報が多い気がして。
870NAME IS NULL
垢版 |
2024/10/27(日) 01:02:10.16ID:bj42m4ZV
英語がわからないという話か
871NAME IS NULL
垢版 |
2024/11/16(土) 06:38:11.75ID:Vf71iLar
アクセスから移行してて、Leftよし、Rightよし、Midダメ、なんでじゃ~!ってなってる
サブストリング?
長げぇよ
872NAME IS NULL
垢版 |
2025/03/24(月) 12:06:44.34ID:???
sqlserverの資格、復活してほしい
ワイの業務目標に丁度ええんよ
873NAME IS NULL
垢版 |
2025/03/29(土) 19:51:31.74ID:T2omeBr6
シェアポにアドでオープンローセット出来ないの何でだぜ?
874NAME IS NULL
垢版 |
2025/04/10(木) 00:22:40.26ID:???
実行計画固定してもプラン変わってることがあるんだけど俺だけ?
プランが悪化したわけじゃないけど怖いんだよね
875NAME IS NULL
垢版 |
2025/04/10(木) 01:02:32.51ID:???
実行計画を固定するとは?
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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