我剛開始使用SQL Server 2008.我有一個winforms應用程序,它必須將數據從應用程序插入到數據庫中,並且某些文本框的值可能爲空。谷歌搜索後,我怎麼找到了一些東西,但我會解釋。使用C#Winforms將行插入到SQL Server中
我發現這個代碼插入記錄到數據庫(不包括連接代碼)
stringInsert += "INSERT INTO MyDatabase(dateTime, Name, Surname)";
stringInsert += "VALUES(@Date, @NameString, @SurnameString)";
SqlCommand cmd = new SqlCommand(stringInsert, con);
cmd.CommandType = CommandType.Text;
cmd.Parameters.Add(new SqlParameter("@Date", strTime));
cmd.Parameters.Add(new SqlParameter("@Name", StringName));
cmd.Parameters.Add(new SqlParameter("@Surname", StringSurname));
if (string.IsNullOrEmpty(StringName))
cmd.Parameters.Add(new SqlParameter("@Name", DBNull.Value.ToString()));
else
cmd.Parameters.Add(new SqlParameter("@Name", StringName));
都是別人寫的方法cmd.Parameters.AddWithValue("@Name" , StringName);
做,如果別人在自動,因爲如果StringName
爲空或空它集DBNull.Value
現在我的問題是:
我不明白
cmd.Parameters.Add(new SqlParameter("@Name", StringName));
如何修改stringInsert成StringName。 「@Name」它只是字符串的一部分,所以也許符號「@」做了一些我不知道的事情?通常我使用@符號當我需要排除像這樣的方式逃脫@「c:\ home」是否正確使用
cmd.Parameters.AddWithValue("@Name" , StringName);
即使StringName
爲空或空?這是正確的方式提交數據到SQL Server數據庫與WinForm應用程序中的許多文本框?
由於
非常感謝!祝你今天愉快! – user1107078