プログラミング

プロおよび熱狂的プログラマーのためのQ&A



6
Oracle SQLでセミコロンとスラッシュを使用する必要があるのはいつですか?
今週、私の会社では、SQLスクリプトをどのように記述するかについていくつかの議論がありました。 背景:データベースはOracle 10gです(間もなく11にアップグレードされます)。私たちのDBAチームは、SQLPlusを使用して、スクリプトを運用環境に展開します。 現在、セミコロンとスラッシュ(/)の両方を使用していたため、最近失敗したデプロイがありました。セミコロンは各ステートメントの最後にあり、スラッシュはステートメントの間にありました。 alter table foo.bar drop constraint bar1; / alter table foo.can drop constraint can1; / スクリプトの後半に追加されたトリガー、作成されたビュー、およびストアドプロシージャがありました。;との両方を持っている/、それぞれの文は、(特にユニークであるために必要な挿入、上の)エラーを引き起こして二回実行するようになりました。 SQL Developerではこれは起こりません、TOADではこれは起こりません。特定のコマンドを実行した場合、これらのコマンドがないと機能しません。/、それらの。 PL / SQLでは、サブプログラム(DECLARE、BEGIN、END)がある場合、使用されるセミコロンはサブプログラムの一部と見なされるため、スラッシュを使用する必要があります。 だから私の質問はこれです:データベースがOracleの場合、SQLスクリプトを記述する適切な方法は何ですか?DBがOracleであることを知っているので、常に/?
179 sql  oracle 

22
2つの画像の違いをどのように定量化できますか?
これが私がやりたいことです: ウェブカメラで定期的に写真を撮っています。タイムラプスのようなものです。何が本当に、絵はかなりされ、変更されていない場合は、見える同じことを、私は最新のスナップショットを保存する必要はありません。 違いを定量化する方法はいくつかあると思いますが、経験的にしきい値を決定する必要があります。 完璧ではなくシンプルさを求めています。私はpythonを使用しています。

15
バッチファイル内の管理者アクセスを要求する方法
ユーザーがUACを使用してVistaマシンから実行できるバッチファイルを作成しようとしています。ファイルはホストファイルを書き換えているため、管理者権限で実行する必要があります。.batファイルへのリンクをメールで送信できるようにする必要があります。目的の動作は、ファイルを右クリックして[開く]と言うと、画面が暗くなり、アプリケーションに管理者として実行する許可を与えるかどうかをユーザーに尋ねるUACダイアログの1つを表示することです。代わりに、コマンドラインウィンドウに「アクセス拒否」と表示されます。 これは別の方法で可能ですか?

10
オブジェクトをintにキャストするより良い方法
これはおそらく些細なことですが、私はそれを行うためのより良い方法を考えることができません。C#でオブジェクトになるバリアントを返すCOMオブジェクトがあります。これをintに入れる唯一の方法は int test = int.Parse(string.Format("{0}", myobject)) これを行うよりクリーンな方法はありますか?ありがとう
179 c#  interop 

15
2つのマップをマージして同じキーの値を合計する最良の方法は?
val map1 = Map(1 -> 9 , 2 -> 20) val map2 = Map(1 -> 100, 3 -> 300) それらをマージし、同じキーの値を合計したいと思います。したがって、結果は次のようになります。 Map(2->20, 1->109, 3->300) 今私は2つの解決策を持っています: val list = map1.toList ++ map2.toList val merged = list.groupBy ( _._1) .map { case (k,v) => k -> v.map(_._2).sum } そして val merged = (map1 …
179 scala  map  merge 

7
プログラムによってビューをビューに追加する方法
のは、私が持っているとしましょうLinearLayout、と私はJavaコードから私のプログラムでは、それにビューを追加したいです。これにはどのような方法が使用されますか?私はそれがXMLでどのように行われるかを尋ねているのではありませんが、このサンプルコードの行に沿って、どうすればよいですか? (One View).add(Another View) Swingでできることのように。
179 android 


18
マルチプロセッシング:クラスで定義された関数でPool.mapを使用する方法
私が次のようなものを実行すると: from multiprocessing import Pool p = Pool(5) def f(x): return x*x p.map(f, [1,2,3]) それは正常に動作します。ただし、これをクラスの関数として配置すると、次のようになります。 class calculate(object): def run(self): def f(x): return x*x p = Pool() return p.map(f, [1,2,3]) cl = calculate() print cl.run() 次のエラーが表示されます。 Exception in thread Thread-1: Traceback (most recent call last): File "/sw/lib/python2.6/threading.py", line 532, in __bootstrap_inner …

4
no-cacheとmust-revalidateの違い
RFC 2616から http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9.1 キャッシュなし no-cacheディレクティブでフィールド名が指定されていない場合、キャッシュは、オリジンサーバーでの再検証に成功せずに、後続の要求を満たすために応答を使用してはなりません(MUST NOT)。これにより、オリジンサーバーは、クライアントの要求に対して古い応答を返すように構成されたキャッシュによっても、キャッシュを防止できます。 したがって、すべての応答を再検証するようにエージェントに指示します。 これと比較して 再検証する必要があります キャッシュによって受信された応答にmust-revalidateディレクティブが存在する場合、そのキャッシュは、古くなってからエントリを使用してはならず、最初にオリジンサーバーで再検証せずに後続のリクエストに応答してはなりません(MUST NOT)。 そのため、古い応答を再検証するようにエージェントに指示します。 特にに関してno-cache、これは実際にどのようにユーザーエージェントがこのディレクティブを経験的に扱っているのですか? ポイント何no-cacheがあるかどうmust-revalidateとはmax-age? このコメントを参照してください: http://palpapers.plynt.com/issues/2008Jul/cache-control-attributes/ キャッシュなし このディレクティブはブラウザにページをキャッシュしないように指示しているように聞こえますが、微妙な違いがあります。RFCによると、「no-cache」ディレクティブは、キャッシュからページを提供する前にサーバーで再検証する必要があることをブラウザーに通知します。再検証は、アプリケーションが帯域幅を節約できるようにする優れた手法です。ブラウザがキャッシュしたページが変更されていない場合、サーバーはそれをブラウザに通知するだけで、ページはキャッシュから表示されます。したがって、ブラウザは(理論的には)キャッシュにページを保存しますが、サーバーで再検証した後でのみページを表示します。実際には、IEとFirefoxはno-cacheディレクティブを、ページをキャッシュしないようにブラウザーに指示するかのように扱い始めました。私たちはこの行動を約1年前から観察し始めました。 誰かがこれについてもっと公式なものを持っていますか? 更新 再検証が必要なディレクティブは、表現に対する要求の検証に失敗すると、黙って実行されない金融トランザクションなどの不正な操作が発生する可能性がある場合にのみ、サーバーで使用する必要があります。 それは今まで心に留めたことのないことです。RFCはmust-revalidateを軽く使用しないように言っています。問題は、Webサービスでは否定的な見方をして、未知のクライアントアプリにとって最悪の状態を想定する必要があることです。古いリソースは問題を引き起こす可能性があります。 そして、Last-ModifiedやETagsがないと、私が今検討した他の何かは、ブラウザがリソース全体を再びフェッチすることしかできません。ただし、ETagを使用すると、少なくともすべてのリクエストでChromeが再検証されるようです。これにより、リクエストに他のヘッダーが含まれていて、常に「常に再検証」が行われない限り、これらのディレクティブは正しく再検証できないため、これらのディレクティブはどちらも無効であるか、少なくとも名前が不適切です。 最後のポイントをもっと明確にしたいだけです。must-revalidateETagもLast-Modifiedも設定せずに含めるだけで、エージェントは、比較するためにサーバーに送信するものがないため、コンテンツを再度取得することしかできません。 ただし、私の経験的テストでは、ETagまたは変更されたヘッダーデータが応答に含まれている場合、must-revalidateヘッダーの存在に関係なく、エージェントは常に再検証を行うことが示されています。 したがって、ポイントはmust-revalidate、古くなったときに「バイパスキャッシュ」を強制することです。これは、ライフタイム/エージを設定した場合にのみ発生するため、must-revalidateエージまたは他のヘッダーのない応答に設定されている場合、実質的には次のようにno-cacheなります。応答はすぐに古くなったと見なされます。 -では、最後にギリの答えにマークを付けます!

9
C ++の内部typedefs-良いスタイルか悪いスタイルか?
私が最近頻繁に行っているのは、そのクラス内の特定のクラスに関連するtypedefを宣言することです。 class Lorem { typedef boost::shared_ptr<Lorem> ptr; typedef std::vector<Lorem::ptr> vector; // // ... // }; これらのタイプは、コードの他の場所で使用されます。 Lorem::vector lorems; Lorem::ptr lorem( new Lorem() ); lorems.push_back( lorem ); 私が好きな理由: クラステンプレートによって導入されたノイズを減らし、にstd::vector<Lorem>なりますLorem::vector。 これは意図の表明として機能します。上記の例では、Loremクラスは参照カウントboost::shared_ptrされ、ベクトルに格納されることを目的としています。 これにより、実装の変更が可能になります。つまりboost::intrusive_ptr、後の段階でLoremを(を介して)侵入参照参照に変更する必要がある場合、コードへの影響は最小限になります。 私はそれは「きれい」に見え、間違いなく読みやすいと思います。 気に入らない理由: 依存関係に問題がある場合があります-たとえば、Lorem::vector別のクラス内にを埋め込みたいが、(ヘッダーファイルに依存関係を導入するのではなく)Loremを転送宣言するだけでよい(またはしたい)場合は、最終的に明示的な型(たとえば、boost::shared_ptr<Lorem>ではなくLorem::ptr)。これは少し矛盾します。 それはあまり一般的ではないかもしれません、それゆえ理解するのは難しいですか? 私は自分のコーディングスタイルで客観的になるように努めていますので、私の考えを少し分析できるように、それについて他の意見を得ることは良いでしょう。

8
同期された静的メソッドはJavaでどのように機能し、それをHibernateエンティティのロードに使用できますか?
基本的なデータアクセスを実行するためにHibernate関数を呼び出す静的メソッドを持つutilクラスがある場合。メソッドの作成がsynchronizedスレッドの安全性を確保するための適切なアプローチであるかどうか疑問に思っています。 これにより、同じDBインスタンスへの情報へのアクセスを防ぐことができます。ただし、次のコードがgetObjectById特定のクラスから呼び出されたときに、すべてのクラスに対して呼び出されるのを妨げているかどうかは確信しています。 public class Utils { public static synchronized Object getObjectById (Class objclass, Long id) { // call hibernate class Session session = new Configuration().configure().buildSessionFactory().openSession(); Object obj = session.load(objclass, id); session.close(); return obj; } // other static methods }



弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.