私はLinux Ubuntu 16.04を使用しています。また、RazorSQLを使用してさまざまなデータベースにアクセスしています。私はクライアントのSQL Server(Microsoft 2008 R2)にアクセスして、5000個以上の行を含むクエリからテーブルを生成し、約5個の列を持っています。列の1つは画像データ型です。クエリを実行するたびにタイムアウトしてフリーズするので、ターミナルからxkillを実行して閉じる必要があります。私が取り組んでいるプロジェクトのすべての結果を取得する必要があるので、一度に10個しか取得できません。大量の行とデータにアクセスすると、SQL Server GUIがフリーズし続ける
GUIのフリーズを防止する方法についての提案がありますか?使用するにはより良いGUIを提案できますか?
これはおそらくその原因となっているクエリですか?
SELECT
a.*
, cast(b.Bytes as varbinary(max)) as Bytes
FROM
(
SELECT DISTINCT
a_inner.Number
, a_inner.Latitude
, a_inner.Longitude
, b_inner.RetiredOn
, b_inner.NonSaleable
, a_inner.Name
, a_inner.Zipcode
, b_inner.Oid
, c_inner.TabId
FROM
"AM-Martin".dbo.CpCore_Site a_inner
INNER JOIN "AM-Martin".dbo.CpSm_Face b_inner on b_inner.SiteId = a_inner.Oid
INNER JOIN "AM-Martin".dbo.EyesOn_Face c_inner on b_inner.Oid = c_inner.Oid
WHERE
b_inner.RetiredOn > GETDATE()
AND a_inner.Number LIKE N'%LA%' OR a_inner.Number LIKE N'%LC%' OR a_inner.Number LIKE N'%BH%'
AND b_inner.Latitude > 0.0
AND b_inner.NonSaleable = 'False'
) AS a
CROSS APPLY(SELECT TOP 1
Bytes
FROM "AM-Martin_bin".dbo.CpCore_Image b
WHERE a.Oid = b.OwnerId) b;
どのくらいのメモリがありますか? RazorSQLはどれだけのメモリを使用していますか? RazorSQLのサポートに連絡することを検討しましたか?アプリケーションがフリーズしている場合、私はあなたの同僚ができることは何もないと考えていますが、一度に5000行すべてをアプリに返さないようにすることをお勧めします。 –
私のコンピュータには、実際のGUIがメモリ不足で十分なメモリを持っています。私はRazorsqlのサポートに行きました。そして、私は彼らがメモリを増やすために指示したとおりのことをしましたが、それは最大です。これは、より良いGUIがあるのかどうか疑問に思っています。私は一度にいくつかの行を取得して、それが動作するかどうかを調べるつもりです。 –