佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 731|回复: 14

Inserting Data in ASP.NET

[复制链接]
发表于 7-3-2006 11:36 PM | 显示全部楼层 |阅读模式
现在我的dataset name是applicantds

首先我知道第一行是
    me.sqlcommand1.commandtext = ...........(sql)
   
过后呢?我记得还有两行的,是要fill的。。可是我忘了怎么打。。
谁知道呢?
回复

使用道具 举报


ADVERTISEMENT

发表于 8-3-2006 09:12 AM | 显示全部楼层
不太了解你怎么用你的 dataset, 不过如果用 command 的话...

    Dim myCommand As New SqlCommand(sql, SqlConnectionObject)
    myCommand.Connection.Open()
    myCommand.ExecuteNonQuery()
    myConnection.Close()
回复

使用道具 举报

 楼主| 发表于 8-3-2006 05:23 PM | 显示全部楼层
嗯。。我的Code是这样。。

Dim ds As DataSet
Me.SqlCommand1.CommandText = 。。。(SQL)
ds = Me.Applicantds1
Me.SqlDataAdapter1.Fill(ds)

ERROR is:
Cannot open database requested in login 'EHR'. Login fails. Login failed for user 'SIANGFOONG\ASPNET'.

回复

使用道具 举报

发表于 8-3-2006 10:01 PM | 显示全部楼层
原帖由 Mr^MOon 于 8-3-2006 05:23 PM 发表
嗯。。我的Code是这样。。

Dim ds As DataSet
Me.SqlCommand1.CommandText = 。。。(SQL)
ds = Me.Applicantds1
Me.SqlDataAdapter1.Fill(ds)

ERROR is:
Cannot open database reque ...



只是 login 失败而已, 检查你的 sql server 用户权限, 看看这用户能不能用这资料库.
回复

使用道具 举报

 楼主| 发表于 9-3-2006 10:58 PM | 显示全部楼层
没有Login的Error了。。在Enterprise Manager那里Add多一个Database User就可以了。。

可是,按Submit后,Page refresh了一下,然后资料竟然不会进去Database
Table。。。

之后用Textbox显示出我的SQL, 然后Paste去Visual Studio那里Query, SQL并没有错误。。。

还有什么方法Track这个问题呢?
回复

使用道具 举报

发表于 10-3-2006 09:10 AM | 显示全部楼层
原帖由 Mr^MOon 于 9-3-2006 10:58 PM 发表
没有Login的Error了。。在Enterprise Manager那里Add多一个Database User就可以了。。

可是,按Submit后,Page refresh了一下,然后资料竟然不会进去Database
Table。。。

之后用Textbox显示 ...


用 Visual Studio 的 F11 trace, 看看你的 code 执行到那里去了.
回复

使用道具 举报

Follow Us
 楼主| 发表于 10-3-2006 01:58 PM | 显示全部楼层
原帖由 goatstudio 于 10-3-2006 09:10 AM 发表


用 Visual Studio 的 F11 trace, 看看你的 code 执行到那里去了.


可以的吗?我是用ASP.NET的。。
觉得应该用别的方法Insert Data, 而不是Fill Dataset。。
回复

使用道具 举报

发表于 10-3-2006 02:24 PM | 显示全部楼层
原帖由 Mr^MOon 于 10-3-2006 01:58 PM 发表


可以的吗?我是用ASP.NET的。。
觉得应该用别的方法Insert Data, 而不是Fill Dataset。。


不是... 我的意思是说...
你可以用 Visual Studio 里的侦错功能来一行一行检查, 看看你的 code 到底怎么执行.
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 10-3-2006 03:02 PM | 显示全部楼层
哦,我试试。。因为我的印象中,好像只有VB.NET才可以Trace Error的。。
或许是我记错了吧。。
回复

使用道具 举报

热乎乎的冰淇淋 该用户已被删除
发表于 11-3-2006 04:46 PM | 显示全部楼层
原帖由 Mr^MOon 于 10-3-2006 01:58 PM 发表


可以的吗?我是用ASP.NET的。。
觉得应该用别的方法Insert Data, 而不是Fill Dataset。。


Update 和 insert 不必dataset, 虽然使用dataset也可以update 和 insert data, 不过比较麻烦。

比较传统的方法是:

sqlStatement = "insert into ......"
me.Command1.CommandText = sqlStatement
me.Command1.ExecuteNonQuerry()

使用web application 也不鼓励使用 dataset, 请参考:

http://aspnet.4guysfromrolla.com/articles/050405-1.aspx
回复

使用道具 举报

 楼主| 发表于 11-3-2006 05:08 PM | 显示全部楼层
原帖由 热乎乎的冰淇淋 于 11-3-2006 04:46 PM 发表


Update 和 insert 不必dataset, 虽然使用dataset也可以update 和 insert data, 不过比较麻烦。

比较传统的方法是:

sqlStatement = "insert into ......"
me.Command1.CommandText = sqlSta ...


谢谢,这个问题Senior也说过我。。可是习惯了~我尽量改。。
还有,Data Binding的时候可以不用Dataset的吗?
回复

使用道具 举报

热乎乎的冰淇淋 该用户已被删除
发表于 11-3-2006 05:16 PM | 显示全部楼层
databind 也不必使用 dataset, 例如使用datagrid 的话:

datagrid1.dataSource = command1.ExecuteReader()
datagrid1.DataBind()
回复

使用道具 举报

backspace 该用户已被删除
发表于 13-3-2006 09:12 AM | 显示全部楼层
Dim ds As DataSet

Me.SqlCommand1.CommandText = 。。。(SQL)

Me.SqlDataAdapter1.SelectCommand=Me.SqlCommand1
Me.SqlDataAdapter1.Fill(ds)
回复

使用道具 举报

 楼主| 发表于 13-3-2006 09:45 PM | 显示全部楼层
请问一下,这是什么Error?
System.InvalidOperationException: ExecuteNonQuery requires an open and
available Connection. The connection's current state is Closed. at
System.Data.SqlClient.SqlCommand.ValidateCommand(String method, Boolean executing) at
System.Data.SqlClient.SqlCommand.ExecuteNonQuery() at
E_HR.applicant.btnsubmit_Click(Object sender, EventArgs e) in
C:\Inetpub\wwwroot\E-HR\applicant.aspx.vb:line 339

我的Code是:
Dim istr As String = “SQL”
Dim iConnection As New SqlClient.SqlConnection("integrated security=SSPI;data source=SIANGFOONG;initial catalog=EHR")
        Dim iCommand As New SqlClient.SqlCommand(istr, iConnection)

        Try
            Dim iRows As Integer = iCommand.ExecuteNonQuery()
            Me.lblstatus.Text = "Add/Update successfully!"
            iCommand.Connection.Close()
        Catch ex As Exception
            Me.lblstatus.Text = ex.ToString
        End Try
回复

使用道具 举报

 楼主| 发表于 13-3-2006 10:38 PM | 显示全部楼层
嗯,解决了。。
加多一行。。
iConnection.Open()
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 13-11-2024 06:22 PM , Processed in 0.918099 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表