- - PR -
SQL SERVER
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-12-16 04:06
コンピュータ初心者のシチです。よろしくお願いします。
現在SQL SERVERを使用してデータベースへの格納を行っています。 例えば string password SHA1CryptoServiceProvider sha1 = new SHA1CryptoServiceProvider(); byte [] passwd = sha1.Computehash(Encoding.ASCII.GetBytes(password)); Hashtable ht = new Hashtable(); ht.Add("Password", passwd); InsertCommand("UserInfo", ht); のようにハッシュテーブルを利用して暗号化したパスワードをバイナリ列として挿入したいのですが挿入することができません。 ちなみに、ExecuteScalarにより行います。 データベースのデータ型はバイナリで長さ50としてあります。 誰か助けてください。 | ||||
|
投稿日時: 2005-12-16 07:15
それは実行時例外が発生すると言うことですか?何処で、どのような例外が起こるのですか?肝心のデータベースへの格納処理は何処に?技術系メーリングリストで質問するときのパターン・ランゲージを踏まえて再質問してください。 _________________ 甕星 <mikahosi@abox9.so-net.ne.jp> http://blogs.msmvp.jp/mikahosi/ | ||||
|
投稿日時: 2005-12-16 08:12
public string InsertCommand(string table, Hashtable data)
{ string queryString = "insert into " + table; string keyString = " (", valueString = " values ("; foreach(DictionaryEntry entry in data) { keyString += entry.Key.ToString() + ", "; valueString += "'" + entry.Value.ToString() + "', "; } keyString = keyString.Substring(0, keyString.Length-2) + ")"; valueString = valueString.Substring(0, valueString.Length-2) + ");"; queryString += keyString + valueString; return ExecuteScalar(queryString); } public string ExecuteScalar(string queryString) { try { string connMsg = "server=SHICHINOHE;" + "User=*****;" + "Password=*****;" + "database=NUGS"; conn = new SqlConnection(connMsg); SqlCommand cmd = new SqlCommand(queryString, conn); conn.Open(); object tmpObj = cmd.ExecuteScalar(); if(tmpObj == null) { return null; } else { return tmpObj.ToString(); } } catch(Exception ex) { return ex.Message; } } すいませんでした。上記が実際の格納するためのコードです。 ちなみに例外処理は発生しません。 なぜかデータ型がimageだと格納されるのですが。 よろしくお願いします。 | ||||
|
投稿日時: 2005-12-16 16:04
パラメータマーカーを利用してください。
|
1