問題タブ [hashbytes]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - C#ハッシュとSQLサーバーのhashbytel関数、同じ実装?
私はC#レベルとSQL Server 2012レベルの両方を持ちたいです。
SHA1 実装で同じ結果が得られるかどうかはどうすればわかりますか?
私がやっているSQLサーバーで:
私は自分の C# 関数をまだ書いていません。
それらが同じハッシュ値を生成しない場合、私は心配しています。アプリケーションでいくつかの不整合が発生します。
注: ハッシュの作成に使用する列は、datetime、nvarchar、および int です。これらを正しい文字列に変換する必要がありますか?
c# - SQL Uniqueidentifier ハッシュバイトが一致しません
接続データベースをC#
作成するアプリケーションがあります。SQL Server 2014
で作成するGuid
とC#
、 経由で SQL に書き込みますlower case
。しかし、クエリを実行するとSQL
、この値が得られますupper case
。このGuid
値は によってハッシュされる必要がSHA1
あり、 asSQL
は different を返しますhashed value
。
のせいですcollation
か?
私は使用しますTurkish_CI_AI
。
sql-server - SQL Server HashBytes 関数
なぜ私が次のことについて異なる答えを得ているのか誰か教えてください:
ハッシュ値を返すために使用される非常に単純な関数を次に示します。
2つの異なる値を返す私のSQLは次のとおりです。
結果:
何らかの理由で、関数は HASH1 と同じ値を返しません。理由はわかりません。
ありがとう。
アップデート:
受け入れられた回答は以下のとおりです。VARBINARY に (max) を追加して、値全体を返しました。皆さんありがとう。
java - Java PreparedStatement: HASHBYTES へのパラメータのバインド
現在、私は以下の準備されたステートメントを持っています。
しかし、HASHBYTESで暗号化する値(この場合は変数'password' ) をパラメーター化しようとすると、何らかの読み取り/型/変換エラーが発生し、結果が返されません。これは動作しないコードです:
エラー メッセージはまったく表示されません。結果セットは、rowCount プロパティで「-3」を返します。私はSQL Serverを使用しています。
「パスワード」プレースホルダーを次のように渡します: 「?」どちらも機能しません。このクエリをパラメータ化する正しい方法は何ですか?
tsql - Is it possible to use t-SQL to store a hash using HASHBYTES for a file not in the database?
I would just like to know if it is or is not possible to use t-SQL (SQL Server 2012) to store a MD5 hash using HASHBYTES for a file not in the database?
I am only trying to achieve what is stated above without using anything other then T-SQL. That is the constraint weather or not there is a better way. It's a inflexible constraint/mandate that nothing but T-SQL is to be used. No addons no powrshell no nothing but T-SQL.
Can anyone provide the T-SQL code that would achieve the goal of putting the hash of some file (whatever name you want) into a field in a table (use whatever names you prefer)?
I know some might think there is a better way but that better way is not an option like it or not. So please refrain for offering any non 100% T-SQL solutions or comments.
sql-server - nvarchar(max) 結果の SQL Server 2014 Hashbytes は nvarchar(max) です
nvarchar(max)
SQL Server 2014 を使用して、多くの K の ASCII テキスト ファイルを含むことができるという列を持つテーブルがあり[ASCII File]
ます。次に、そのファイルで MD5 ハッシュバイトを実行したいのですが、結果のハッシュは常に 20 バイトである必要があります。
選択を行うと、hashbytes('MD5', [ASCII File])
クエリがエラーで完了します
メッセージ 8152、レベル 16、状態 10、行 4
文字列またはバイナリ データが切り捨てられます。
しようとすると同じメッセージが表示されます
しようとすると同じメッセージが表示されます
hashbytes を実行している列がnvarchar(max)
であるため、hashbytes 関数の結果も のようですnvarchar(max)
。
結果を予想される 20 の長さにする方法を教えてください。
sql - datetime2 フィールドを持つ HashBytes
複数の列で hashbytes を使用してハッシュ キーを作成し、現在 where 句で使用しているパフォーマンスを向上させています。
しかし、その列の 1 つは、追加できない datetime2 フィールドです。私がしようとしている間、私はエラーメッセージの下に来ています
「列が非決定論的であるため、テーブル 'table1' の計算列 'HashKey' を永続化できません。」.
私の調査から、datetime2 は非決定論的であるため使用できないことがわかりました。
しかし、すべてのミリ秒を含む値を正確に比較する必要があるため、形式を変更することはできません。
誰か私に回避策を教えてもらえますか?
c# - SQL Hash Bytes バイナリ値 (複数のデータ型フィールドの組み合わせ) を同等の C# に変換する
以下のように、HashBytes を使用して、SQL で複数のフィールドを組み合わせてハッシュ キーを作成しました。
上記のすべてのフィールドのデータ型は以下のとおりです
しかし、値を取得するには C# と同等の関数が必要です。これにより、フィールド値に対して C# コードを使用して値を取得し、値を sql に渡して、値をハッシュ キー列と比較できます。
以下のようにして、ハッシュキーのバイナリ値に相当する byte[] 値を取得しようとしました。ただし、SQL ハッシュ キー値と同じ値ではありません。
私が行方不明になっていることについて誰か助けてもらえますか?