gpt4 book ai didi

c# - 尝试 open() sql server 时出错

转载 作者:行者123 更新时间:2023-12-02 13:36:47 26 4
gpt4 key购买 nike

我是网络开发的新手,通过浏览论坛已经成功解决了我遇到的很多问题。

看来我遇到的问题是其他许多人也遇到过的问题,我发现它们都是不同的,只是我一生都无法解决它。

我正在尝试将玩家注册详细信息插入数据库,但是当我尝试调用 wcf 服务器时,它在我的 conn.Open() 上遇到了异常类型:

System.Data.dll 中发生“System.Data.SqlClient.SqlException”类型的异常,但未在用户代码中进行处理。

此外,我正在使用 build it sql server,并且使用的连接字符串是数据库属性中的一个。我不太确定如何继续。

public string playerRegistration(playerDetails playerInfo)
{
string Message;
using (SqlConnection conn = new SqlConnection("Data Source=(LocalDB)\v11.0;AttachDbFilename=c:\\Users\\Daniel\\documents\\visual studio 2013\\Projects\\Prac4\\WebApplication1\\App_Data\\ADODatabase.mdf;Integrated Security=True"))
{
conn.Open();

using (var cmd = new SqlCommand("INSERT into Player(pid, pfname, plname, pphone, paddress, pdob) VALUES (@pid, @pfname, @plname, @pphone, @paddress, @pdob)", conn))
{
cmd.Parameters.AddWithValue("@pid", playerInfo.Pid);
cmd.Parameters.AddWithValue("@pfname", playerInfo.Pfname);
cmd.Parameters.AddWithValue("@plname", playerInfo.Plname);
cmd.Parameters.AddWithValue("@pphone", playerInfo.Pphone);
cmd.Parameters.AddWithValue("@paddress", playerInfo.Paddress);
cmd.Parameters.AddWithValue("@pdob", playerInfo.Pdob);

int result = cmd.ExecuteNonQuery();
if (result == 1)
{
Message = " Details inserted successfully";
}
else
{
Message = " Details not inserted successfully";
}
conn.Close();
return Message;
}
}
}

最佳答案

确保将 @".." (a verbatim string literal ) 与连接字符串一起使用,以避免简单的转义错误。

“..\v..”显示的代码包含 vertical tab escape这会产生无效的连接字符串。没有编译器错误,因为尽管生成的字符串不正确,但字符串文字在语法上是有效的。

建议使用逐字字符串文字并消除双斜杠进行修复:

@"Data Source=(LocalDB)\v11.0;AttachDbFilename=c:\Users\Daniel.."

替代修复(注意\\v):

"Data Source=(LocalDB)\\v11.0;AttachDbFilename=c:\\Users\\Daniel.."

关于c# - 尝试 open() sql server 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26567917/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com