数据库连接字符串asp.net出现语法错误;c#
本文关键字:语法 错误 字符串 asp net 数据库连接 | 更新日期: 2023-09-27 18:13:09
我已经编写了连接代码,以便使用c#将asp.net表单数据插入到在Microsoft Visual Studio 2015中创建的SQL服务器中。我现在遇到的问题是,由于Synax错误,我无法测试表单是否有效。文本文件之间有空格,我不确定这是否是出现错误的原因?或者连接文件放错地方了?我直接从Microsoft Access复制了路径。如有任何建议,我们将不胜感激。
错误:
编译器错误消息:CS1003:语法错误,应为",">
来源错误:
第11行:公共分部类_默认:System.Web.UI.Page
第12行:{
第13行:SqlConnection con=新的SqlConnection(@"DataSource=(LocalDB(''MSSQLLocalDB;AttachDbFilename="C:''用户''P''Docs''Visual Studio2015''WebSites''WebSite2''App_Data''Database.mdf";集成安全=真"(;
第14行:protected void Page_Load(object sender,EventArgs e(
第15行:{
源文件:C:''Users''p''Docs''Visual Studio2015''WebSites''WebSite2''Default.aspx行:13
这是c#中的表单代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Configuration;
public partial class _Default : System.Web.UI.Page
{
SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)'MSSQLLocalDB;AttachDbFilename="C: 'Users'P'Docs'Visual Studio 2015'WebSites'WebSite2'App_Data'Database.mdf";Integrated Security=True");
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Unnamed1_Click(object sender, EventArgs e)
{
con.Open();
SqlCommand cmd = con.CreateCommand();
cmd.CommandType = System.Data.CommandType.Text;
cmd.CommandText = "insert into Table values('" + pName.Text + "','" + pEmail.Text + "')";
cmd.ExecuteNonQuery();
con.Close();
}
}
您在同一字符串中使用了两次"
,我认为它们甚至在准备@
时都不起作用。请尝试使用'"
,连接字符串也应在app.config
或web.config
文件中。切勿在源代码中进行硬编码。
应该是
SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)'MSSQLLocalDB;AttachDbFilename='"C: 'Users'P'Docs'Visual Studio 2015'WebSites'WebSite2'App_Data'Database.mdf'";Integrated Security=True")
因为编译器不清楚你的意思。因此,我们使用"''"作为一个信号,表明下面的字符应该被解释为……嗯,一个字符,而不是一个关键字。
否则"被解释为导致string one:"数据源=(LocalDB(''MSSQLLocalDB;AttachDbFilename=''">
"非逻辑"数据(因为不是起始号或结束号(:C:''Users''p''Docs''Visual Studio 2015''WebSites''WebSite2''App_data''Database.mdf''
字符串二:;集成安全=真
其他可能性:
SqlConnection con = new SqlConnection(@"Data Source=(LocalDB)'MSSQLLocalDB;AttachDbFilename=" + @"C: 'Users'P'Docs'Visual Studio 2015'WebSites'WebSite2'App_Data'Database.mdf" + ";Integrated Security=True")
无论如何,使用web.config/app.config更符合您的目的。
使用连接字符串和web.config来简化更改。
web.config示例:
<configuration>
<connectionStrings>
<add name="LoginDB" connectionString="Data Source=(LocalDB)''MSSQLLocalDB;AttachDbFilename=C:''Users''P''Docs''Visual Studio 2015''WebSites''WebSite2''App_Data''Database.mdf;Integrated Security=True" />
</connectionStrings>
</configuration>
将您的代码更改为:
SqlConnection con = new SqlConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["LoginDB"].ConnectionString);