using System.Data;
using System.Data.OleDb;
using System.Data.SqlClient;
namespace PlayMusic.DB
{
public class DBHelper
{ private static string conString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data source=D:\c#\db\accdb.mdb"; public static OleDbConnection objConnection = new OleDbConnection(conString);
public void insertDB(string UserName, string Password)
{
objConnection.Open();
string sql = "INSERT INTO UserInformation VALUES("+UserName+","+Password+")";
OleDbCommand cmd = new OleDbCommand(sql, DBHelper.objConnection);
OleDbDataReader aReader = cmd.ExecuteReader();
objConnection.Close();
}
}
}
总是说这个地方有问题,想问下是怎么回事。
using System.Data.OleDb;
using System.Data.SqlClient;
namespace PlayMusic.DB
{
public class DBHelper
{ private static string conString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data source=D:\c#\db\accdb.mdb"; public static OleDbConnection objConnection = new OleDbConnection(conString);
public void insertDB(string UserName, string Password)
{
objConnection.Open();
string sql = "INSERT INTO UserInformation VALUES("+UserName+","+Password+")";
OleDbCommand cmd = new OleDbCommand(sql, DBHelper.objConnection);
OleDbDataReader aReader = cmd.ExecuteReader();
objConnection.Close();
}
}
}
总是说这个地方有问题,想问下是怎么回事。
”
至少我没这么写过,请教了
2,稍微修改下SQl ,写上表字段,假设为username,pwd
string sql = "INSERT INTO UserInformation(username,pwd) VALUES('"+UserName+"','"+Password+"')";
3,
用 cmd.ExcuteNonQuery();
string sql = "INSERT INTO UserInformation VALUES("+UserName+","+Password+")"; 而且这个 UserName,Password 是字符串的就要加单引号啦
这样你插入的值跟表里面的字段是不是匹配的啊?
2,稍微修改下SQl ,写上表字段,假设为username,pwd .
还有就是字段值要加单引号的,
string sql = "INSERT INTO UserInformation(username,pwd) VALUES('"+UserName+"','"+Password+"')";
3,
用 cmd.ExcuteNonQuery
values里面加上单引号
using System.Data;
using System.Data.OleDb;
namespace PlayMusic.DB
{
public class DBHelper
{ private static string conString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data source=D:\c#\db\accdb.mdb;Persist Security Info=False;Jet OLEDB:Database Password=";
public static OleDbConnection objConnection = new OleDbConnection(conString);
public void insertDB(string UserName, string Password)
{
objConnection.Open();
string sql = "INSERT INTO UserInformation VALUES("+UserName+","+Password+")";
OleDbCommand cmd = new OleDbCommand(sql, DBHelper.objConnection);
cmd.ExcuteNonQuery();
objConnection.Close();
}
}
}
string path = System.IO.Directory.GetCurrentDirectory();//获取工作路径
string dbmap = path + "\\user.mdb";
OleDbConnection weida = new OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source=" + dbmap);
这样的方法来连接比较好,可移植性也会比较强。
另外,你说“总是说这个地方有问题,想问下是怎么回事”,具体有什么异常信息你应该贴出来让大家看下嘛,那样对你的问题更快地解决会有帮助。你的SQL语句,如果你的username与password都是数字类型的,那就不要单引号,如果是文本型的,要'"+username+"','"+password+"'这样写才行,另外,插入语句中你的表名后面并没有标明你要插入的数据对应的字段,那你要确保你插入的数据与数据库里面的字段是一一对应的并且字段的数目也是完全一致的。如你上面的这种写法,那你数据库中只能有username与password两个字段并且是username在前,password后才行。如果你的数据库还有其它字段,如id等等,那SQL语句要这样写
"INSERT INTO UserInformation(UserName,Password) VALUES("+UserName+","+Password+")";