| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 657 人关注过本帖
标题:怎么把数据库中的数据填充到文本框中
只看楼主 加入收藏
uljhao
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2006-5-15
收藏
 问题点数:0 回复次数:6 
怎么把数据库中的数据填充到文本框中

这是我写的把数据库中的数据填充到指定的文本框中的代码.但不能通过编译.

<script runat="server">
Sub Page_Load(Sender As Object, E As EventArgs)
dim cnn as oledbconnection
dim cmd as oledbcommand
dim dr as oledbdatareader
dim strcnn as string
dim strsql as string
dim use_name as string
dim usename as string
dim useeducate as string
dim usemail as string
dim usesex as integer
dim usejob as string
dim useage as integer
use_name=session("usename")
strcnn="provider=microsoft.jet.oledb.4.0;data source="+server.MapPath("data/db1.mdb")
strsql="select usename,useeducate,usemail,useage,usesex,usejob from useinforma where usename=use_name"
cnn=new oledbconnection(strcnn)
cnn.open()
cmd=new oledbcommand(strsql,cnn)

dr=cmd.executeReader()
if dr.read() then
usename=dr.GetString(1).tostring
useeducate=dr.getstring(2).tostring
usemail=dr.getstring(3).tostring
useage= dr.getint32(4)
usesex= dr.getint32(5)
usejob= dr.getstring(6).tostring
else response.Write("对不起,你没有权限查看个人资料.")
end if
dr.close()
cnn.close()
End Sub
</script>


提示错误是:

至少一个参数没有被指定值。

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.OleDb.OleDbException: 至少一个参数没有被指定值。

源错误:

行 25: cmd=new oledbcommand(strsql,cnn)
行 26: 
行 27: dr=cmd.executeReader()
行 28: if dr.read() then
行 29: usename=dr.GetString(1).tostring 

源文件: D:\Program Files\asp\main.aspx 行: 27

堆栈跟踪:

[OleDbException (0x80040e10): 至少一个参数没有被指定值。]
   System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult) +267
   System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult) +192
   System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult) +48
   System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method) +106
   System.Data.OleDb.OleDbCommand.ExecuteReader(CommandBehavior behavior) +111
   System.Data.OleDb.OleDbCommand.ExecuteReader() +6
   ASP.main_aspx.Page_Load(Object Sender, EventArgs E) in D:\Program Files\asp\main.aspx:27
   System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +15
   System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +34
   System.Web.UI.Control.OnLoad(EventArgs e) +99
   System.Web.UI.Control.LoadRecursive() +47
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1061

搜索更多相关主题的帖子: 数据库 文本 
2006-05-15 14:43
铲铲
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:34
帖 子:506
专家分:0
注 册:2006-5-2
收藏
得分:0 

SQL语句错


铲铲是也
2006-05-15 19:24
xufengtang
Rank: 1
等 级:新手上路
威 望:1
帖 子:89
专家分:0
注 册:2006-5-7
收藏
得分:0 
use_name 是个参数没有指定 应该先向cmd添加参数来接受页面值
如:
Dim com1 As New System.Data.SqlClient.SqlCommand("delete from 学生信息 where 学号=@s1", conn1)
com1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@s1", System.Data.SqlDbType.Int, 4))
com1.Parameters("@s1").Value = TextBox6.Text

2006-05-15 22:44
mql
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2006-4-21
收藏
得分:0 
这是我接受数据库里的内容的代码,数据库里的内容都能显示。
前面的定义,连接数据库就不写了。

Dim myreader As SqlDataReader
myreader = cmd.ExecuteReader()
If myreader.Read Then
Label1.Text = myreader("t_id").ToString
Label2.Text = myreader("t_name").ToString
Label3.Text = myreader("timu").ToString
Label4.Text = myreader("fabiao").ToString
Label5.Text = myreader("zhuzuo").ToString
Label6.Text = myreader("chuban").ToString
Label7.Text = myreader("xiangmu").ToString
Label8.Text = myreader("jiang").ToString


2006-05-18 16:54
hanpiaoyao
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2006-4-26
收藏
得分:0 

好 ,我也正需要,感谢!!

2006-05-19 10:05
hanpiaoyao
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2006-4-26
收藏
得分:0 
我想实现教师修改个人信息
ssession("men")="姓名"可以作为参数
这是我的代码:
Cmd.CommandText = "selet * from teacher where 姓名='" & Session("men") & "'"
Dim objreader As System.Data.SqlClient.SqlDataReader
objreader = Cmd.ExecuteReader()
If objreader.Read() Then
txtname.Text = objreader("姓名").ToString
Password1.Value = objreader("密码").ToString
txtxueli.Text = objreader("学历").ToString
txtzhch.Text = objreader("职称").ToString
txttel.Text = objreader("电话").ToString
txtemail.Text = objreader("邮件").ToString
txtintroduce.Text = objreader("简介").ToString
End If
为什么出现这样的错误呢

第 1 行: '*' 附近有语法错误。

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Data.SqlClient.SqlException: 第 1 行: '*' 附近有语法错误。

源错误:

行 95:             Cmd.CommandText = "selet * from teacher where 姓名='" & Session("men") & "'"
行 96:             Dim objreader As System.Data.SqlClient.SqlDataReader
行 97:             objreader = Cmd.ExecuteReader()
行 98:             If objreader.Read() Then
行 99:                 txtname.Text = objreader("姓名").ToString
2006-05-19 10:37
小笨笨
Rank: 5Rank: 5
等 级:贵宾
威 望:19
帖 子:1169
专家分:0
注 册:2006-4-17
收藏
得分:0 

selet?

select吧?


欢迎光临我的博客: http://smallfools.blog./default.html
2006-05-19 13:11
快速回复:怎么把数据库中的数据填充到文本框中
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020402 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved