用户代码未处理 System.Data.SqlClient.SqlException
Message="'Message' 附近有语法错误。"
Source=".Net SqlClient Data Provider"
到这里adapter.Fill(dataset);就提示上面的错误了。
初学者真的想把第一个网站调试出来,希望有人能够解决,先谢谢了。
Message="'Message' 附近有语法错误。"
Source=".Net SqlClient Data Provider"
到这里adapter.Fill(dataset);就提示上面的错误了。
初学者真的想把第一个网站调试出来,希望有人能够解决,先谢谢了。
using System.Data;
using System.Configuration;
using System.Data.SqlClient;
namespace goujunfeng.DataLayer
{
/// <summary>
/// dataBase类,用于 数据访问。
/// </summary>
public class Database
{
/// <summary>
/// 保护变量,数据连接。
/// </summary>
protected SqlConnection Connection;
/// <summary>
/// 保护变量,数据连接。
/// </summary>
protected String ConnectionString;
/// <summary>
/// 构造函数。
/// </summary>
public Database()
{
ConnectionString = ConfigurationSettings.AppSettings["DBConnectionString"]; }
~Database()
{
try
{
if (Connection != null)
Connection.Close();
}
catch { }
}
///公有方法,释放资源。
public void Dispose()
{
//确保连接被关闭
if (Connection != null)
{
Connection.Dispose();
Connection = null;
}
}
///打开数据库。
protected void Open()
{
if (Connection == null)
{
Connection = new SqlConnection(ConnectionString);
}
if (Connection.State.Equals(ConnectionState.Closed))
{
Connection.Open();
}
}
///关闭数据连接
public void Close()
{
if (Connection != null)
Connection.Close();
}
///公有方法,执行sql语句。
public int ExecuteSQL(String SqlString)
{
int count = -1;
Open();
try
{
SqlCommand cmd = new SqlCommand(SqlString, Connection);
count = cmd.ExecuteNonQuery();
}
catch
{
count = -1;
}
finally
{
Close();
}
return count;
}
///获取数据
public DataSet GetDataSet(String SqlString)
{
Open();
SqlDataAdapter adapter = new SqlDataAdapter(SqlString, Connection);
DataSet dataset = new DataSet();
adapter.Fill(dataset); 到这就提示错误了,连接字符串是在config中,是
<appSettings>
<add
key="DBConnectionString"
value="server=(local);database=Mychatroom;User Id=sa;pwd=134617"
/> </appSettings> Close();
return dataset;
}
}
}
Creae TABLE [DBO].[Message](
[UserName] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[CreateTime][varchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[Content] [text] (50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[Color] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[Emotion] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL
)on [PRIMARY] TEXTIMAGE_on [PRIMARY]
我是这样做的:在vs2008中连接到sql2008,然后建两个表;其中一个是User表,两个字段UserName,Password,UserName设为主键;另一个是Message表五个字段,UserName、CreateTime、Content、Color、Emotion;最后打开Message表建了一个UserName的外键关系。
我认为其中有误,这大概导致了刚形如的错误。
public DataSet GetDataSet(String SqlString)
{
Open();
这里做个断点~
public void Add(string userName, string password)
{
Database db = new Database();
string sql = "Insert Into [User]Values(" + "'" + userName + "'," + "'" + password + "')";
db.ExecuteSQL(sql);
}
上面就是了吧,应该没有什么问题吧。输入时没有出错。
我想是了,找到了,
等我好消息吧,有人关心是一件很幸福的感觉,
生活也会变得有有味道!