哪位兄台可以给一个完整的,对SQLServer中的某个表进行增、删、改的代码。(另有几个小问题)60分送上

时间:2021-08-09 06:59:21
刚从6.0转过来,昨天看了一天的帮助,那些dataset看得我头都大了,好象有那么多方法可以实现,我有点无所适从了,请尽量给一个完整的,简洁的。另外我以前用6.0的时候,conn我一直是做成公共变量,不管哪个窗体中,随用随取,不知这样做对不对,占用服务器的资源吗?ADO.net可以这样吗?
再有下面这条语句是我从帮助上粘下来的,提示说sqlconnection未定义,这该怎么处理?   Dim nwindConn As SqlConnection = New SqlConnection("Data Source=localhost;Integrated Security=SSPI;Initial Catalog=northwind")
谢谢先。

23 个解决方案

#1


http://www.superdotnet.com/show_article.aspx?pkID=48

#2


http://www.aspalliance.com/das/editdatagrid.aspx

http://www.ondotnet.com/lpt/a/3223

#3


http://expert.csdn.net/Expert/TopicView1.asp?id=1521284
http://expert.csdn.net/Expert/TopicView1.asp?id=1720032

#4


不好意思您误会了,我用的是VB,你给的页面都是ASP的

#5


我都说过我有点无所适从了,能不能告诉我你们是怎么做的?

#6


你要用到SqlConnection
在你的主模块里最前面加入
Imports System.Data.SqlClient
Imports System.Data
//在这个之前
Module ModMain

然后就可以了,这是我写的一个函数,调用的是一个存储过程,希望对你有帮助!


    Public Sub ReadCarData()
        Try
            Dim sqlConn As SqlConnection = New _
                SqlConnection("Initial Catalog=" & sDatabase & ";" & _
                    "Data Source=" & sDatabaseIp & ";User Id = " & sDBUserName & ";Password = " & sDBUserPwd)
            sqlConn.Open()

            Dim DS As New DataSet()
            Dim Command As String = "EXEC spUserMotor " & sSysUserName & ", " & sSysUserPwd
            Dim Adapter As SqlDataAdapter = New SqlDataAdapter(Command, sqlConn)
            Adapter.Fill(DS)

            'mid telid gpsid unitname mtype gpstype
            Dim I As Integer
            If DS.Tables(0).Rows.Count = 0 Then Exit Sub
            nCar = nCar + DS.Tables(0).Rows.Count
            ReDim Preserve myCar(nCar)
            For I = 0 To DS.Tables(0).Rows.Count - 1
                myCar(I).strMid = DS.Tables(0).Rows(I).Item(0)
                myCar(I).strSim = DS.Tables(0).Rows(I).Item(1)
                myCar(I).strGpsId = DS.Tables(0).Rows(I).Item(2)
                myCar(I).strUnit = DS.Tables(0).Rows(I).Item(3)
                myCar(I).strMotorType = DS.Tables(0).Rows(I).Item(4)
                myCar(I).strGpsType = DS.Tables(0).Rows(I).Item(5)
            Next
        Catch ex As Exception
            PrintText(ex.Message)
        End Try

#7


提供的都是英文资料
俺英文不好
郁闷中……

#8


还有没有人可以帮我呀!!!!!!!!!!!

#9


跟我一样,
同情中
英文不好, 搞不好编程的
同我一起恶补英文先

#10


我数十个数,再没有人帮我的话,我就跳出窗外(我这儿可是二十四楼啊),一、二、三、四、五、六、七、八、九、十。我跳先……

#11


慢点跳,我说的不行吗?

#12


删除,增加,修改只是SQL语句不一样而已嘛

#13


我觉得这里唯一有用的就是你说的了,但还不够呀,还有插入和更新呀。我给你发了消息没收到吗?

#14


我不想全写成存储过程,另外对dataset我还没有一个清晰的认识。只是从概念上理解一点,具体的用法……,哎头又增加体积中……

#15


还有啊,我看了很多例子,都是用绑定,可我讨厌用绑定!

#16


有讨厌人家优点的吗?

#17


绑定也是优点?

#18


拜托不要那么急切,静下心来看一下随机帮助,.net和vb6差异挺大的,看一天帮助就想弄明白吗?

#19


真是的
偶怎么只会
dataAdapter.updata(dataset)呢。
真讨厌,。

#20


i为0时候返回查询值,为1时候不返回,sql是任何sql语句
记得要先连库(连库的代码没写,自己应该会吧)
Dim MyConnection as sqlConnection
function dbexe(i as integer,sql as string)
if i=0 then
MyCommand = new sqlcommand(sql,MyConnection)
Dim MyDataReader as sqlDataReader=MyCommand.ExecuteReader()
return MyDataReader
elseif i=1 then
MyCommand = new sqlcommand(sql,MyConnection)
MyCommand.ExecuteReader()
end if

end function

#21


一气之下买了本书。

整个世界清净了!!

#22


不好意思,是不是存储过程没关系,SQL语句也是一样的,删除,增加,修改都差不多
"Delete From TableName Where Id = 10001"  删除
"Insert into tablename (id,name) values('10001','aaa') 增加
"Update tablename set name = 'bbb' where id = 10001" 修改

结合楼上的,现在行不行

#23


看完书,我才理顺四个command的问题.

#1


http://www.superdotnet.com/show_article.aspx?pkID=48

#2


http://www.aspalliance.com/das/editdatagrid.aspx

http://www.ondotnet.com/lpt/a/3223

#3


http://expert.csdn.net/Expert/TopicView1.asp?id=1521284
http://expert.csdn.net/Expert/TopicView1.asp?id=1720032

#4


不好意思您误会了,我用的是VB,你给的页面都是ASP的

#5


我都说过我有点无所适从了,能不能告诉我你们是怎么做的?

#6


你要用到SqlConnection
在你的主模块里最前面加入
Imports System.Data.SqlClient
Imports System.Data
//在这个之前
Module ModMain

然后就可以了,这是我写的一个函数,调用的是一个存储过程,希望对你有帮助!


    Public Sub ReadCarData()
        Try
            Dim sqlConn As SqlConnection = New _
                SqlConnection("Initial Catalog=" & sDatabase & ";" & _
                    "Data Source=" & sDatabaseIp & ";User Id = " & sDBUserName & ";Password = " & sDBUserPwd)
            sqlConn.Open()

            Dim DS As New DataSet()
            Dim Command As String = "EXEC spUserMotor " & sSysUserName & ", " & sSysUserPwd
            Dim Adapter As SqlDataAdapter = New SqlDataAdapter(Command, sqlConn)
            Adapter.Fill(DS)

            'mid telid gpsid unitname mtype gpstype
            Dim I As Integer
            If DS.Tables(0).Rows.Count = 0 Then Exit Sub
            nCar = nCar + DS.Tables(0).Rows.Count
            ReDim Preserve myCar(nCar)
            For I = 0 To DS.Tables(0).Rows.Count - 1
                myCar(I).strMid = DS.Tables(0).Rows(I).Item(0)
                myCar(I).strSim = DS.Tables(0).Rows(I).Item(1)
                myCar(I).strGpsId = DS.Tables(0).Rows(I).Item(2)
                myCar(I).strUnit = DS.Tables(0).Rows(I).Item(3)
                myCar(I).strMotorType = DS.Tables(0).Rows(I).Item(4)
                myCar(I).strGpsType = DS.Tables(0).Rows(I).Item(5)
            Next
        Catch ex As Exception
            PrintText(ex.Message)
        End Try

#7


提供的都是英文资料
俺英文不好
郁闷中……

#8


还有没有人可以帮我呀!!!!!!!!!!!

#9


跟我一样,
同情中
英文不好, 搞不好编程的
同我一起恶补英文先

#10


我数十个数,再没有人帮我的话,我就跳出窗外(我这儿可是二十四楼啊),一、二、三、四、五、六、七、八、九、十。我跳先……

#11


慢点跳,我说的不行吗?

#12


删除,增加,修改只是SQL语句不一样而已嘛

#13


我觉得这里唯一有用的就是你说的了,但还不够呀,还有插入和更新呀。我给你发了消息没收到吗?

#14


我不想全写成存储过程,另外对dataset我还没有一个清晰的认识。只是从概念上理解一点,具体的用法……,哎头又增加体积中……

#15


还有啊,我看了很多例子,都是用绑定,可我讨厌用绑定!

#16


有讨厌人家优点的吗?

#17


绑定也是优点?

#18


拜托不要那么急切,静下心来看一下随机帮助,.net和vb6差异挺大的,看一天帮助就想弄明白吗?

#19


真是的
偶怎么只会
dataAdapter.updata(dataset)呢。
真讨厌,。

#20


i为0时候返回查询值,为1时候不返回,sql是任何sql语句
记得要先连库(连库的代码没写,自己应该会吧)
Dim MyConnection as sqlConnection
function dbexe(i as integer,sql as string)
if i=0 then
MyCommand = new sqlcommand(sql,MyConnection)
Dim MyDataReader as sqlDataReader=MyCommand.ExecuteReader()
return MyDataReader
elseif i=1 then
MyCommand = new sqlcommand(sql,MyConnection)
MyCommand.ExecuteReader()
end if

end function

#21


一气之下买了本书。

整个世界清净了!!

#22


不好意思,是不是存储过程没关系,SQL语句也是一样的,删除,增加,修改都差不多
"Delete From TableName Where Id = 10001"  删除
"Insert into tablename (id,name) values('10001','aaa') 增加
"Update tablename set name = 'bbb' where id = 10001" 修改

结合楼上的,现在行不行

#23


看完书,我才理顺四个command的问题.