int フィールドがあるテーブルがあります。このフィールドには乱数を入力する必要があり、一意である必要があります。最善の解決策は何ですか?乱数を生成してテーブルに存在するかどうかを確認する必要がありますか? ところで、ASP.NET と C# を使用して Web アプリケーションを開発しています。
質問する
500 次
4 に答える
0
Front End
使うことからC#
Guid.NewGuid().ToString("N") //Replaces all - will Empty values.
Final value will be numeric
データベースから
newid()
これらのテクニックは両方とも、ユニークな結果をもたらします。
于 2012-05-26T11:15:53.350 に答える
0
http://msdn.microsoft.com/en-us/library/system.random.aspxを試して乱数を生成し、データベースにクエリを実行して値が存在するかどうかを確認してください。'int field' = 'random number' の行を選択し、@@rowcount = 0 かどうかを確認することで、それを判断できるはずです。
于 2012-05-26T11:35:42.417 に答える
0
GUID を使用:
public string GetRandomGUID(int length)
{
// Get the GUID
string guidResult = System.Guid.NewGuid().ToString();
// Remove the hyphens
guidResult = guidResult.Replace("-", string.Empty);
// Make sure length is valid
if (length <= 0 || length > guidResult.Length)
throw new ArgumentException("Length must be between 1 and " + guidResult.Length);
// Return the first length bytes
return guidResult.Substring(0, length);
}
于 2012-05-26T10:31:01.047 に答える