vb.net vb2010 如何使用DAO访问ACCESS数据库,我最终目的是要向ACCESS里写入64k以上的数据。

vb.net vb2010 如何使用DAO访问ACCESS数据库,我最终目的是要向ACCESS里写入64k以上的数据。,第1张

问题解决了,分还是给你吧,不过为了不误人子弟我还是说下正确答案。

这个问题的重点不是ACCESS是语句用的不对。因为是ACCESS支持的功能不够多,当语句过长时导致出现“查询过于复杂”的错误,这里要将长的文本作为变量输入,正确的语句我贴在下面了:

Try

NewText = “特别长的文本一千万字左右”

Dim AccessConn As New OleDbOleDbConnection(AccessConnectionString)

AccessConnOpen()

AccessString = "UPDATE 记录 SET 文本= WHERE 编号=1"

Dim AccessCmd = New OleDbOleDbCommand(AccessString, AccessConn)

AccessCmdParametersAdd(New OleDbOleDbParameter)

AccessCmdParameters(0)Value = NewText

AccessCmdExecuteNonQuery()

AccessConnClose()

Catch AccessException As Exception

MsgBox(AccessExceptionMessage, , "保存")

End Try

这里的语句是 AccessString = "UPDATE 记录 SET 文本= WHERE 编号=1" 其中是变量,在下面的语句中对变量进行提交,这样就避免了语句过长。

Imports SystemDataOleDb

Public Class Form1

    Dim connStr As String = "Provider=MicrosoftJetOLEDB40;Data Source=c:\TSXSmdb;Persist Security Info=False"

    Dim conn As New OleDbConnection(connStr)

    Dim com As New OleDbCommand("delete from 入库 where 编号='011'", conn)

    Private Sub Button1_Click(ByVal sender As SystemObject, ByVal e As SystemEventArgs) Handles Button1Click

        connOpen()

        comExecuteNonQuery()

        connClose()

    End Sub

End Class

测试可用 单引号是查询字段为字符串类型时给内容的前后加单引号 而不是在 表名 或者 字段名前后加

1、增加字段:

CString msql = "ALTER TABLE student ADD COLUMN ziduan char(50)";

mdatabaseExecuteSQL(msql);//添加名为zizhuan的字段到名为student的表中。

2、新纪录:

msqlstr = "INSERT INTO student (学号,姓名,数学) VALUES ('2011','jack','99')";

mdatabaseExecuteSQL(msql);//添加学号为2011,姓名为jack,数学为99的一行记录 到表student中。

3、删除:

CString msql = “DELETE FROM student WHERE 学号 = '2011'”;

mdatabaseExecuteSQL(msql);//删除学号为2011的一行记录。

希望对你有所帮助!

数据源应该是个表,不是某一行,大概是 PPdsTables(0) 。绑定的是字段或者说列,与记录多少没关系。每个数据表都有个记录指针,显示哪一行就移动记录指针到哪一行,绑定控件会自动跟踪并更新指向记录的的绑定字段的值。

在右侧解决方案管理器当前项目上右键(就是在“11”上右键)→添加→现有项→定位到这个项目目录下面的 Form1vb 和 Form1Designervb 上(如果有资源文件还有个 Form1resx),添加。

我跟你说一下C#的思路吧,VB的应该也差不多

首先用SQL语句查询到相应的表的数据,然后放到datatable里,

既然你要动态生成控件,就先在界面上加一个panel,然后:

Button button1 = new Button();

button1Text = datatableRows[i][0]ToString();

//再定义一下button的大小位置之类的

panelcontrolsadd();//最后就是把这个控件加到这个panel中

那就执行一下sql语句

select max(colname) maxvalue,min(colname) minvalue

from tabname

然后把值取出来

有两种方式:

一是把excel在外部打开

二是把excel按数据库方式打开

你要哪种?哪种方法我都可以写出来。

你最好给我一个电子的样子,那才能有针对性地写出代码。

张志晨

补充:

1、引用Microsoft Excel类型库

“工程”-“引用”-选择“Microsoft Excel 80 Object Library”-“确定”

2、声明显式数据类型,创建新实例并获取Excel的控制句柄

Dim ExcelObject As ExcelApplication

Set ExcelObject = CreateObject( "ExcelApplication ")

3、调用并显示Excel

ExcelobjectVisible = True

4、打开文件,

ExcelObject Open pathName

然后用循环进行判断,那就简单了。因为不知道你到底要判断什么,所以无法写出具体的代码来。

Public xlApp As ExcelApplication

Public xlbook As ExcelWorkbook

Public xlSheet As ExcelWorksheet

Public Function OpenExcel(xlPath As String)

Set xlApp = CreateObject("excelapplication")

Set xlbook = xlAppWorkbooksOpen(xlPath)

Set xlSheet1 = xlbookWorksheets(1)

Set xlSheet2 = xlbookWorksheets(2)

xlAppVisible = fasle

Dim i As Integer

i = 1

'下面的判断是假设的,你要改成你实际需要的

Do While xlSheet1Cells(i, 1)Value =xlSheet2Cells(i, 1)Value

Form1List1AddItem xlSheetCells(i, 1)Value

i = i + 1

Loop

quitExcel

End Function

Public Function quitExcel()

xlAppQuit

Set xlApp = Nothing

Set xlbook = Nothing

End Function

以上就是关于vb.net vb2010 如何使用DAO访问ACCESS数据库,我最终目的是要向ACCESS里写入64k以上的数据。全部的内容,包括:vb.net vb2010 如何使用DAO访问ACCESS数据库,我最终目的是要向ACCESS里写入64k以上的数据。、vb2010 数据库使用ExecuteNonQuery报错。”查询子句不完整。 “、VB2010使用SQL查询ACCESS2010数据库表中“有效期”在当前日期后90天内的记录等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9467194.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存