adodc1.refresh,Adodc1.Refresh是什么意思?
本文目录索引
- 1,Adodc1.Refresh是什么意思?
- 2,求教 VB 有关Adodc1.Refresh的问题
- 3,VB Adodc1.Refresh问题
- 4,关于VB ADODC1.Refresh建数据库表时候提示“对象关闭时不能打开对象”详细请帮忙详阅建表按钮的代码 附图
1,Adodc1.Refresh是什么意思?
Refresh 方法 (ADO)
更新集合中的对象以便反映来自并特定于提供者的对象。
语法
collection.Refresh
说明
Refresh 方法根据从中调用的不同集合而完成不同的任务。
参数
使用 Command 对象 Parameters 集合的 Refresh 方法可为在 Command 对象中指定的存储过程或者参数化查询检索提供者端参数信息,对于不支持存储过程调用或参数化查询的提供者来说,集合将为空。
在调用 Refresh 方法之前应该将 Command 对象的 ActiveConnection 属性设置为有效 Connection 对象,将 CommandText 属性设置为有效命令,并且将 CommandType 属性设置为 adCmdStoredProc。
如果在调用 Refresh 方法之前访问 Parameters 集合,ADO 将自动调用方法并充填集合。
注意 如果使用 Refresh 方法从提供者获取参数信息而它返回一个或多个变长数据类型 Parameter 对象,则 ADO 可能根据其大小的最大可能值为参数分配内存,这在执行期间将会导致错误。在调用 Execute 方法之前应显式设置这些参数的 Size 属性以防止错误发生。
Fields
在 Fields 集合上使用 Refresh 方法没有可见的效果。要从现行数据库结构中检索更改,必须使用 Requery 方法;如果 Recordset 对象不支持书签,则使用 MoveFirst 方法。
Properties
在某些对象的 Properties 集合上使用 Refresh 方法可使用提供者提供的动态属性充填集合,这些属性只将功能性信息提供给 ADO 支持的内置属性之外的提供者。
2,求教 VB 有关Adodc1.Refresh的问题
你需要搞清楚这条语句的作用就够了!!
Adodc1.Refresh
就是Adodc1这个控件的refresh方法,refresh方式就是刷新的意思。
一般情况下,是对数据库的表进行操作之后,由于数据不同步,导致看到的还是未修改之前的,所以需要用到这句来刷新表格。
之后再进行操作就可以看到准确的了。
再者,你的这里MOVENEXT还需要判断数据库表格为空的情况!
3,VB Adodc1.Refresh问题
你的adodc是怎么配置的?
建议使用ADODB试试,代码如下:
Dim cn As New ADODB.Connection
Dim cmd As New ADODB.Command
Private Sub Command1_Click()
' On Error Resume Next
cn.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=数据库名;Data Source=主机名或者IP地址"
cn.CursorLocation = adUseClient
cn.Mode = adModeReadWrite
cn.Open
cmd.ActiveConnection = cn
cmd.CommandType = adCmdText
cmd.CommandText = "select * into tmp2 from TbaCustomers"
cmd.Execute
End Sub
我上机测试过了,不过只能运行一次,因为有重名的表存在,再次运行会报错的
4,关于VB ADODC1.Refresh建数据库表时候提示“对象关闭时不能打开对象”详细请帮忙详阅建表按钮的代码 附图
你用Adodc1控件建立数据表,必须在该数据库里已经有一个表;并且先要把这个Adodc1控件与数据表连接。
你要用这样的代码:
Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\数据库.mdb;Persist Security Info=False"
Adodc1.CommandType = adCmdUnknown
Adodc1.RecordSource = "select top 1 * from 表1"
Adodc1.Refresh
Adodc1.Recordset.ActiveConnection.Execute = "CREATE TABLE 新建表(字段1 Text (50),字段2 Text (50) not null,字段3 Text (50))"