怎么我用rst.updata()更新不了呢?

khduwenfeng 2004-02-12 02:09:46
rst.fiele(id)=tirm(rst.from(id);
rst.updata();
不能插入到数据库呢?
...全文
21 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
部分源代码: Private Sub Command1_Click() Dim sql As String Dim param As ADODB.Parameter Dim cmd As ADODB.Command Set cmd = New ADODB.Command Set param = New ADODB.Parameter sql = "select * from book where [图书编码]= ? " If Command1.Caption = "添加记录" Then Command1.Caption = "确 定" Command2.Enabled = False '屏蔽删除、修改、下一记录、上一记录按钮,避免出现数据库错误 Command3.Enabled = False Command4.Enabled = False cmdmodify.Enabled = False rst.AddNew Else If Text1.Text = "" Then frmMsg.Show frmMsg.notice.Visible = True frmMsg.Text1.Text = "图书编号不能为空!" Command2.Enabled = True Command3.Enabled = True Command4.Enabled = True Command1.Caption = "添加记录" Exit Sub End If With param .Direction = adParamInput .Type = adBSTR .Size = 8 .Value = Text1.Text End With cmd.Parameters.Append param cmd.CommandText = sql cmd.CommandType = adCmdText Set cmd.ActiveConnection = con Set rst1 = cmd.Execute If rst1.RecordCount > 0 Then frmMsg.Show frmMsg.notice.Visible = True frmMsg.Text1.Text = "此书号已经存在!" rst.Cancel Command2.Enabled = True Command3.Enabled = True Command4.Enabled = True cmdmodify.Enabled = True Command1.Caption = "添加记录" Command2.Enabled = True Exit Sub End If rst.Update Command2.Enabled = True '数据库更新结束后才可以点击其他几个按钮 Command3.Enabled = True Command4.Enabled = True cmdmodify.Enabled = True Command1.Caption = "添加记录" End If End Sub 修改图书记录操作 Private Sub cmdmodify_Click() '修改记录按钮 Dim sqlstr As String Dim rst1 As New ADODB.Recordset Dim param As ADODB.Parameter Dim cmd As ADODB.Command Set cmd = New ADODB.Command Set param = New ADODB.Parameter sqlstr = "select * from book where [图书编码]= '" & Trim(Text1.Text) & "'" With param .Direction = adParamInput .Type = adBSTR .Size = 8 .Value = Text1.Text End With cmd.Parameters.Append param cmd.CommandText = sqlstr cmd.CommandType = adCmdText Set cmd.ActiveConnection = con Set rst1 = cmd.Execute If rst1.RecordCount > 0 Then frmMsg.Show frmMsg.notice.Visible = True frmMsg.Text1.Text = "此书号已经存在!" rst.Cancel Exit Sub End If rst.Update frmMsg.Show frmMsg.info.Visible = True frmMsg.Text1.Text = "修改成功!" End Sub 添加职工信息 Private Sub Command1_Click() '添加记录 Dim sql As String Dim param As ADODB.Parameter Dim cmd As ADODB.Command Set cmd = New ADODB.Command Set param = New ADODB.Parameter sql = "select * from worker where [工号]= ? " If Command1.Caption = "添加记录" Then Command1.Caption = "确 定" Command2.Enabled = False Command3.Enabled = False Command4.Enabled = False rst.AddNew Else If Text1.Text = "" Then frmMsg.Show frmMsg.notice.Visible = True frmMsg.Text1.Text = "职工编号不能为空!" Command2.Enabled = True Command3.Enabled = True Command4.Enabled = True Command1.Caption = "添加记录" Exit Sub End If With param .Direction = adParamInput .Type = adBSTR .Size = 8 .Value = Text1.Text End With cmd.Parameters.Append param cmd.CommandText = sql cmd.CommandType = adCmdText Set cmd.ActiveConnection = con Set rst1 = cmd.Execute '检测职工编号是否存在防止主键冲突 If rst1.RecordCount > 0 Then frmMsg.Show frmMsg.notice.Visible = True frmMsg.Text1.Text = "此职工编号已经存在!" rst.Cancel Command2.Enabled = True Command3.Enabled = True Command4.Enabled = True Command1.Caption = "添加记录" Exit Sub End If rst.Update Command2.Enabled = True Command3.Enabled = True Command4.Enabled = True Command1.Caption = "添加记录" End If End Sub
BBS网站,我对它使用到了JSP,java,HTML,javaScript等技术,相信它是学习JSP的一个好东西 public interface IReplyDao { /** * 根据主题id,查找回复的信息 * @param replyId * @return 回复 */ public Reply findReply(int replyId); /** * 增加回复信息,返回增加个数 * @param reply * @return */ public int addReply(Reply reply); /** * 根据回复id删除回复,返回删除个数 * @param replyId * @return */ public int deleteReply(int replyId); /** * 修改回复信息,返回修改个数 * @param reply * @return */ public int updateReply(Reply reply); /** * 查询回复,返回某主题第page页回复的列表 * @param page * @param topicId * @return */ public List findListReply(int page, int topicId); /** * 根据主题id查询出该主题的回复条数 * @param topicId 主题id * @return 回复条数 */ public int findCountReply(int topicId); /** * 返回回帖的页数 * @return */ public int findReplyPage(int topicId); } ....................... public interface ITopicDao { public Topic findTopic(int topicId); //根据主题id,查找主题的信息 public int addTopic(Topic topic); //增加主题,返回增加个数 public int deleteTopic(int topicId); //根据主题id删除主题,放回删除个数 public int updateTopic(Topic topic); //更新一个主题的信息,返回更新个数 public List findListTopic(int page, int boardId); //查询帖子,返回某版第page页的帖子列表 public int findTopicCount(int boardId);//根据boardId查询版块主题数 public int findTopicPage(int boardId);//返回主题的页数 Topic findFinalTopic( int boardId ); } public interface IBoardDao { //增加一个论坛版块 public int addBoard(Board board); /* 查找版块map,key是父版块号,value是子级版块对象集合 * * @return 封装了版块信息的Map * @throws DbAccessException */ Map> findAllBoard(); /** * 根据版块id查找版块 * * @param boardId * @return */ Board findBoard(int boardId); } /*完成论坛用户数据层的操作 * */ public class UserDaoImpl extends BaseDao implements IUserDao{ //创建一个存储User用户的数组 private List users = new ArrayList(); //声明Connection的引用 private Connection conn = null; private PreparedStatement pst = null; private ResultSet rst = null; /** * 增加用户 */ public int addUser(User user) { //定义返回值 int ret_val = 0; String sqlStr = "insert into TBL_USER values(?,?,?,?,?)"; //得到联接 conn =super.getCon(); try { SimpleDateFormat hmFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); pst = conn.prepareStatement(sqlStr); pst.setString(1, user.getUName()); pst.setString(2, user.getUPass()); pst.setString(3, user.getHead()); pst.setString(4, hmFormat.format(new Date())); pst.setInt(5, user.getGender()); //返回影响的行数 ret_val =pst.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); }finally { this.closeAll(conn, pst); } return ret_val; /* for (User temp : users) { if(temp == null) { temp = user; temp.setUId(user.getUId()); return 1; } } */ } //删除User对象信息 public int deleteUser(int userId) { int ret_val = 0; String sqlStr = "delete from tbl_user where uid =?"; //得到联接 conn = this.getCon(); try { pst = conn.prepareStatement(sqlStr); pst.setInt(1, userId); ret_val = pst.executeUpdate(); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { this.closeAll(conn, pst); } return ret_val; } public int updateUser(User user) { //得到联接 conn = this.getCon(); int ret_val = 0; String sqlStr = "update tbl_user set uid=?,uname=?,upass=?,head=?,regTime=?,gender=?"; //String sqlStr = "update TBL_USER set uName='"+user.getUId()+"','"+user.getUName()+"','"+user.getUPass()+"','"+user.getHead()+"',getDate()"+",'"+user.getGender()+"'"; try { //得到时间日期的方法 SimpleDateFormat hmFromat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); pst = conn.prepareStatement(sqlStr); pst.setInt(1, user.getUId()); pst.setString(2, user.getUName()); pst.setString(3, user.getUPass()); pst.setString(4, user.getHead()); pst.setString(5, hmFromat.format(new Date())); pst.setInt(6, user.getGender()); ret_val = pst.executeUpdate(); System.out.println("成功更新了"+ret_val+"行数据"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { this.closeAll(conn, pst); } return ret_val; /* for(int i = 0; i < users.size(); i++) { if(users.get(i) != null && users.get(i).getUName().equals(user.getUName())) { if(users.get(i).getUId()!= i) { throw new Exception("用户id不能修改!"); } users = (List) user; return 1; } } */ } public List findAll() { //创建保存对象的容器集合 List lists = new ArrayList(); //创建结果集 ResultSet rst = null; PreparedStatement pst = null; String sqlStr = "select * from tbl_user where uName=?"; conn = this.getCon(); try { SimpleDateFormat hmFromat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss"); pst = conn.prepareStatement(sqlStr); rst = pst.executeQuery(); while(rst.next()) { User user = new User(); user.setUId(rst.getInt(1)); user.setUName(rst.getString(2)); user.setUPass(rst.getString(3)); user.setHead(rst.getString(4)); user.setRegTime(hmFromat.format(new Date())); lists.add(user); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { this.closeAll(conn, pst, rst); } return lists; } //根据用户名查找论坛用户 public User findUser(String uName) { User user = new User(); String sqlStr = "select * from tbl_user where uName=? "; //得到联接 conn = this.getCon(); //执行预处理操作 try { pst = conn.prepareStatement(sqlStr); pst.setString(1, uName); //得到结果集 rst = pst.executeQuery(); while(rst.next()) { user.setUId(rst.getInt("uId")); user.setUName(rst.getString("uName")); user.setUPass(rst.getString("Upass")); user.setGender(rst.getInt("gender")); user.setHead(rst.getString("head")); user.setRegTime(rst.getString("regTime")); } } catch (SQLException e) { e.printStackTrace(); }finally { this.closeAll(conn, pst, rst); } return user; } //根据id查找论坛用户 public User findUser(int uId) { User user = new User(); String sqlStr = "select * from tbl_user where uId=?"; //得到联接 conn = this.getCon(); try { //执行预处理操作 pst = conn.prepareStatement(sqlStr); pst.setInt(1, uId); //得到结果集 rst = pst.executeQuery(); while(rst.next()) { user.setUId(rst.getInt("uid")); user.setUName(rst.getString("uName")); user.setUPass(rst.getString("Upass")); user.setHead(rst.getString("head")); user.setRegTime(rst.getString("regTime")); user.setGender(rst.getInt("gender")); } } catch (SQLException e) { e.printStackTrace(); }finally { this.closeAll(conn, pst, rst); } return user; }
vb学生管理系统源代码 部分代码 Public UserName As String Public txtSQL As String 'use to store record SQLsentence Public dream As ADODB.Recordset 'use to store record object Public Msgtext As String '用来存放返回信息 Public OK As Boolean ' 'Public db As String Public Sub highlight() With Screen.ActiveForm If (TypeOf .ActiveControl Is TextBox) Then .ActiveControl.SelStart = 0 .ActiveControl.SelLength = Len(.ActiveControl) End If End With End Sub Sub Main() 'Dim Login As New Login 'Login.Show vbModal 'f Not Login.OK Then 'Login Failed so exit app ' End 'End If 'Unload studentmdi ' Set login = New login login.Show End Sub Public Function connectstring() As String connectstring = "Provider=Microsoft.jet.OLEDB.3.51;Data source=f:\schoolgroup\school.mdb" End Function Public Function ExecuteSQL(ByVal SQL As String, Msgstring As String) As ADODB.Recordset Dim cnn As ADODB.Connection Dim rst As ADODB.Recordset Dim sTokens() As String On Error GoTo ExecuteSQL_Error sTokens = Split(SQL) Set cnn = New ADODB.Connection cnn.Open connectstring If InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0))) Then cnn.ExecuteSQL Msgstring = sTokens(0) & "query successful" Else Set rst = New ADODB.Recordset rst.Open Trim(SQL), cnn, adOpenKeyset, adLockOptimistic Set ExecuteSQL = rst Msgstring = "查询到" & rst.RecordCount & " 条记录" End If executeSQL_exit: Set rst = Nothing Set cnn = Nothing Exit Function ExecuteSQL_Error: Msgstring = "查询错误:" & err.Description Resume executeSQL_exit End Function Public Function Testtxt(txt As String) As Boolean If Trim(txt) = "" Then Testtxt = False Else Testtxt = True End If End Function

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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