狂送100分(27)

binbin2000 2003-07-18 02:14:12
这次是真的狂送分了,因为问题实在太简单了
DataGrid
1,如果知道里面一共有多上行数据
2,如果取指定位置的数据,比如我要取第三行第二列的数据
3,如果修改指定位置的数据,比如我要修改第三行第二列的数据
请写出例子代码
...全文
14 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
lvjack 2003-07-18
  • 打赏
  • 举报
回复
Set rsdb = cmddb.Execute
这样得到的记录集好像是只读的
Alicky 2003-07-18
  • 打赏
  • 举报
回复
不多说了。
来接分。
Alicky 2003-07-18
  • 打赏
  • 举报
回复
不多说了。
来接分。
czwwh 2003-07-18
  • 打赏
  • 举报
回复
加上这个:
cmddb.ActiveConnection = conndb
cmddb.CommandType = adCmdText
binbin2000 2003-07-18
  • 打赏
  • 举报
回复
to lihonggen0(李洪根,用.NET,标准答案来了):
我试了一下你的,能用
下面是我的代码,为什么不行
定义:
Dim sql As String
Dim conndb As New ADODB.Connection
Dim cmddb As New ADODB.Command
Dim rsdb As New ADODB.Recordset
。。。。。。。。
conndb.CursorLocation = adUseClient
conndb.Open contextDB
cmddb.ActiveConnection = conndb
cmddb.CommandText = sql
Set rsdb = cmddb.Execute
然后
Set DataGrid1.DataSource = rsdb
lihonggen0 2003-07-18
  • 打赏
  • 举报
回复
还有Datagrid必须设置为
允许更新
lihonggen0 2003-07-18
  • 打赏
  • 举报
回复
我刚测试过,没出现问题!!

Private Sub Command1_Click()
DataGrid1.Row = 3
DataGrid1.Columns(2).Text = "safsdfsd"
End Sub

Private Sub Form_Load()
'工程--->引用--->Microsoft ActiveX Data Object 2.x(版本号)

Dim CN As New ADODB.Connection '定义数据库的连接
Dim Rs As New ADODB.Recordset
CN.ConnectionString = "Provider=sqloledb;Data Source=pmserver;Initial Catalog=northwind;User Id=sa;Password=sa;"

CN.Open
Rs.CursorLocation = adUseClient
Rs.Open "select * from employees", CN, adOpenDynamic, adLockOptimistic

Set DataGrid1.DataSource = Rs
End Sub


是不是你的记录集的找开方式不对

lihonggen0 2003-07-18
  • 打赏
  • 举报
回复
我刚测试过,没出现问题!!

Private Sub Command1_Click()
DataGrid1.Row = 3
DataGrid1.Columns(2).Text = "safsdfsd"
End Sub

Private Sub Form_Load()
'工程--->引用--->Microsoft ActiveX Data Object 2.x(版本号)

Dim CN As New ADODB.Connection '定义数据库的连接
Dim Rs As New ADODB.Recordset
CN.ConnectionString = "Provider=sqloledb;Data Source=pmserver;Initial Catalog=northwind;User Id=sa;Password=sa;"

CN.Open
Rs.CursorLocation = adUseClient
Rs.Open "select * from employees", CN, adOpenDynamic, adLockOptimistic

Set DataGrid1.DataSource = Rs
End Sub


是不是你的记录集的找开方式不对

binbin2000 2003-07-18
  • 打赏
  • 举报
回复
to czwwh(江·沙·月):
还要说明一下,因为项目很紧,希望用个醒目的标题吸引人,希望能得到快速回答,可能是我用这个标题的主要原因。

很不好意思,我下面还要用这个标题。请多理解,也希望你能帮我回答问题。先谢谢了。
binbin2000 2003-07-18
  • 打赏
  • 举报
回复
to czwwh(江·沙·月):
对不起,可能是我的标题有问题,你发消息骂我好了,我一直认为自己是一个态度比较好的人。也非常感谢里面的高手帮我解决了好多问题。
我刚学vb,差不多两周了,所以问题非常多,估计都是些初级的问题,所以就用同一个名称帖子。我觉得我很谦虚的,也许不够认真。
谢谢你的提醒。
czwwh 2003-07-18
  • 打赏
  • 举报
回复
我难受吗?哈哈,没搞错
因为我在论坛中看到你发了太多这样的贴子。你直接在标题中把要问的内容写出来,这样也方便大家浏览和搜索啊

你自己都认为是太简单的问题,为什么还要拿出来问呢?既然是请教别人,就认真一点、谦虚一点,我相信这个论坛里是有很多乐意帮助别人的高手,当提问题的人态度也是一个要考虑的因素

好了,不要再无谓的争口舌了,就当我什么都没说。
binbin2000 2003-07-18
  • 打赏
  • 举报
回复
to lihonggen0(李洪根,用.NET,标准答案来了) :
问题出来了,照你的写了,运行出错:此列只读。怎么办?
binbin2000 2003-07-18
  • 打赏
  • 举报
回复
to czwwh(江·沙·月) :
如果你难受我很抱歉。
我是送分的同时随便问个问题,既然答应送分,所以每个up的人我都给分啦,所以也不算“挂羊头买狗肉”,
“没多少人在乎你的分数”,这句话有两种理解,
一是在意我自己的分数,当然没有多少人在意我有多少分,只有我一个人在意。
二是没有人在意我给的分数,既然没有人在意,那他们也就不关心我是不是在“挂羊头买狗肉”啦。
since1990 2003-07-18
  • 打赏
  • 举报
回复
支持 lihonggen0(李洪根,用.NET,标准答案来了)
lihonggen0 2003-07-18
  • 打赏
  • 举报
回复
1、与Datagrid相关联的记录集 Rs.recordcount


2、
DataGrid1.Row = 3
a = DataGrid1.Columns(2).Text


3、
DataGrid1.Row = 3
DataGrid1.Columns(2).Text="safsdfsd"

penglc 2003-07-18
  • 打赏
  • 举报
回复
试试看:
1. 数据行数=rs.recordcount

2. rs.MoveFirst
rs.Move 3
'DataGrid1.Bookmark = 3
第三行第二例值 = DataGrid1.Columns(1).Value

3. rs.MoveFirst
rs.Move 3
'DataGrid1.Bookmark = 3
DataGrid1.Columns(1).Value = 新值
czwwh 2003-07-18
  • 打赏
  • 举报
回复
送分就送分,提问题就提,不要挂羊头买狗肉,没多少人在乎你的分数

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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