求C#向ACCESS数据库插入数据的SQL语句 急急急!!!!那位大虾帮下忙

daepeng 2012-03-21 10:30:30
各位高手是不是拼SQL语句的字符串错了啊 , ,
我想向access的reader表中插入一条记录
表reader的结构为 :
readerID(主键) 文本
readerName 文本
readerPassword 文本
readerPhone 文本
readerStartTime 时间/日期 只有这个允许空

主要的代码如下:
using SDO = System.Data.OleDb;

string sConncet = string.Format("Provider={0};Data Source={1}{2}", "Microsoft.Jet.OLEDB.4.0;", System.AppDomain.CurrentDomain.BaseDirectory, "Library.mdb");

SDO.OleDbConnection dbConn = null;
dbConn = new SDO.OleDbConnection(sConncet);
dbConn.Open();
SDO.OleDbCommand dbCmd;
string sql;
public void createCmd(string table, string rID, string rname, string rpwd, string rphone)
{
sql = "insert into" + " " + table + " " + "values" + "(" + "'" + rID + "'" + "," + "'" + rname + "'" + "," + "'" + rpwd + "'" + "," + "'" + rphone + "'" + "," + "'" + DateTime.Now + "'" + ")" + " " + "go";
}
dbCmd = new SDO.OleDbCommand(sql, dbConn);
dbConn.Close();
...全文
527 21 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuandonghuia 2012-03-23
  • 打赏
  • 举报
回复
access中 时间外面用“#”,我之前吃过亏。
秋风抚落叶 2012-03-23
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 keenweiwei 的回复:]
1,通过调试,你取出 sql语句
2,将sql语句拿到access中执行,如果执行不成功,你看一眼应该会找到错误的原因
[/Quote]一般开发时,可能情况下都输出下sql语句,至少可以一眼看出sql语句有没问题
雨殇 2012-03-23
  • 打赏
  • 举报
回复
access 当然是可以直接执行sql 语句的
在ACCESS数据库中 点击查询 -----在设计视图中创建查询--------然后根据自己需要选择需要查询的表或者单击右键选择 SQL视图 就可以执行SQL语句了
qujianye 2012-03-23
  • 打赏
  • 举报
回复
执行语句在哪?
xiaosima2017 2012-03-23
  • 打赏
  • 举报
回复
insert into 表名(A,B,C...)VALUES('"+这里写你要添加的对象+"',"+这里是int类型的+",‘“+这里是字符串类型的+"’)
极地_雪狼 2012-03-23
  • 打赏
  • 举报
回复
1、你的“readerID”作为主键,是自增的吗?
2、readerID 类型是什么,如果是整型的,就不需要加单引号了。
3、你怎么不把错误信息也贴出来(try catch一下)
壁橱里的老王 2012-03-23
  • 打赏
  • 举报
回复
dbCmd的执行没有啊,execute的语句呢?除了时间,其他字段不为空,那么给每个参数加上判空处理IsNullorEmpty()
daepeng 2012-03-23
  • 打赏
  • 举报
回复
把语句放在 数据库中调试成功了 嘻嘻
daepeng 2012-03-23
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 jessie_j_wang 的回复:]

dbCmd的执行没有啊,execute的语句呢?除了时间,其他字段不为空,那么给每个参数加上判空处理IsNullorEmpty()
[/Quote]

晕 没写这个语句 谢谢啊
熙风 2012-03-22
  • 打赏
  • 举报
回复
Lz最好在用[]把字段和表名扩起来
深海之蓝 2012-03-22
  • 打赏
  • 举报
回复
你的sql语句打印出来, 很多地方没空格,你自己注意一下,还有单引号问题
你的语句肯定是类似这样的
insert into表values()...
这样肯定不行的。把空格加上,再看一下单引号的问题,就应该可以了
daepeng 2012-03-22
  • 打赏
  • 举报
回复
access 可以直接执行sql 语句吗,行的话,执行的页面在那啊
ijwsoft 2012-03-22
  • 打赏
  • 举报
回复
1,通过调试,你取出 sql语句
2,将sql语句拿到access中执行,如果执行不成功,你看一眼应该会找到错误的原因
绿领巾童鞋 2012-03-22
  • 打赏
  • 举报
回复
sql=String.Fomat("insert into {0} values({1},'{2},...')",i.toString(),...,DateTime.Now.toString());
你看看你的DateTime.Now,恩,你懂的
NbaDennis 2012-03-22
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 bdmh 的回复:]

SQL code

sql = "insert into " + table + "(readerID,readerName ,readerPassword ,readerPhone ,readerStartTime ) values('" + rID + "','" + rname + "','" + rpwd + "','" + rphone + "','" + DateTime.Now.……
[/Quote]

+1
bdmh 2012-03-22
  • 打赏
  • 举报
回复

sql = "insert into " + table + "(readerID,readerName ,readerPassword ,readerPhone ,readerStartTime ) values('" + rID + "','" + rname + "','" + rpwd + "','" + rphone + "','" + DateTime.Now.ToString() + "')";
苦逼孩子 2012-03-22
  • 打赏
  • 举报
回复

string sql="INSERT INTO" +'"+table+"'+"VALUES"('"+RID+"','"+NAME+"','"+rpwd+"','"+rphone+"')";
public void createCmd(string table, string rID, string rname, string rpwd, string rphone)
{
sql="INSERT INTO" +'"+table+"'+"VALUES"('"+RID+"','"+NAME+"','"+rpwd+"','"+rphone+"')";
//为什么你写的那么复杂呢 ?
}
dbCmd = new SDO.OleDbCommand(sql, dbConn);
dbConn.Close();

EnForGrass 2012-03-22
  • 打赏
  • 举报
回复
[Quote=引用楼主 typ0520 的回复:]
各位高手是不是拼SQL语句的字符串错了啊 , ,
我想向access的reader表中插入一条记录
表reader的结构为 :
readerID(主键) 文本
readerName 文本
readerPassword 文本
readerPhone 文本
readerStartTime 时间/日期 只有这个允许空

主要的代码如下:
using SDO ……
[/Quote]
你的这个dbCmd.ExecuteNonQuery();呢
至于sql语句有没有问题自己调试拿到查询分析器执行一下不就完了
yyz_317 2012-03-22
  • 打赏
  • 举报
回复
sql = "insert into " + table + "(readerID,readerName ,readerPassword ,readerPhone ,readerStartTime ) values('" + rID + "','" + rname + "','" + rpwd + "','" + rphone + "','" + DateTime.Now)
  • 打赏
  • 举报
回复
 + "'" + rID + "'" + 改为 "+ rID +"
加载更多回复(1)

111,094

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧