oledbconnection,vba数据库连接初始化设置

伏羲号

oledbconnection,vba数据库连接初始化设置?

答方法如下

oledbconnection,vba数据库连接初始化设置

'第⼀步,引⽤ADO ⼯具,⼯具->引⽤—>microsoft ActiveX Data Objects 6.1 Library

'第⼆步,创建连接对象

'1 、声明连接对象的名字(或者给连接对象叫取变量名)

Dim con As ADODB.Connection

'2、创建对象变量并赋值

Set con = New ADODB.Connection

'第三步,建⽴数据库的连接

@绵掌骞魁2021

'也可以把上⾯的2步合成⼀步:dim con as new adodb.connection

With con

.Provider = "microsoft.ace.oledb.12.0;"

.ConnectionString = ThisWorkbook.Path & "\学⽣管理.accdb"

.Open

End With

MsgBox "成功"

End Sub

如何用access自动获取excel里面的数据?

用access自动获取excel里的数据的方法就是通过代码的方式导入。如果是对手动导入比较清楚的话,这个实现起来不难。请参考下面的介绍来实现:首先,新建一个工程,在工程中引用如下对象ADO对象(用于连接ACCESS数据库,可用其它方式) 添加一个窗体(from1),在窗体上添加如下控件: 两个文本框,用来显示EXCEL文件路径和ACCESS路径; 四个扭钮,两个用来游览,另两个是导入和退出; 两个通用对话框控件,用来打开ACCESS和EXCEL文件,一个进度条控件,用来显示导入进程。 该实例的导入是将ACCESS数据库中表的字段名单独存放在另外一个表中,导入时按表中所存字段名的顺序进行导入,不是按EXCEL表的顺序导入,请大家注意.这样在实际中是很实用的.因为好多时候EXCEL表中字段顺序和ACCESS中字段顺序有可能不是一致的.代码如下:Dim vOption ExplicitPrivate Sub cmdLoad_Click()Dim excel_app As ObjectDim excel_sheet As ObjectIf txtExcelFile.Text = "" ThenMsgBox "请选择EXCEL表"ElseDim new_value As StringLabel2.Caption = "正在导入,请稍候..." Screen.MousePointer = vbHourglass DoEvents '' Create the Excel application. Set excel_app = CreateObject("Excel.Application") '' Uncomment this line to make Excel visible. excel_app.Visible = True '' Open the Excel spreadsheet. excel_app.Workbooks.open FileName:=txtExcelFile.Text '' Check for later versions. If Val(excel_app.Application.Version) >= 8 Then Set excel_sheet = excel_app.ActiveSheet Else Set excel_sheet = excel_app End If Dim u ''求EXCEL表中记录的条数,以便控制进度条u = 1Do If Trim$(excel_sheet.Cells(u, 1)) = "" Then Exit Do u = u + 1 Loop bar.Max = u - 1 strSQL = "select * from TestValues" yourRecord.open strSQL, myConn, adOpenDynamic, adLockOptimistic ''打开记录集 Dim sql As String sql = "select * from fields order by xue" myRecord.open sql, myConn, adOpenDynamic, adLockBatchOptimistic ''打开字段记录集 myRecord.MoveFirst '' Get data from the Excel spreadsheet and insert '' it into the TestValues table.Dim v ''导入记录,用了两层循环 v = 1 Do If Trim$(excel_sheet.Cells(v, 1)) = "" Then Exit Do ''外层,如果EXCEL表中读取到空行,结束yourRecord.AddNew Dim i For i = 1 To myRecord.RecordCount '' Get the next value. new_value = Trim$(excel_sheet.Cells(v, i)) '' See if it''s blank. ''If Len(new_value) = 0 Then Exit Do '' Insert the value into the database.Dim bb As String bb = myRecord("name") yourRecord(bb) = new_value myRecord.MoveNext Next i bar.Value = v v = v + 1 myRecord.MoveFirst Loop yourRecord.Update '' Comment the rest of the lines to keep '' Excel running so you can see it. '' Close the workbook without saving. excel_app.ActiveWorkbook.Close False '' Close Excel. excel_app.Quit Set excel_sheet = Nothing Set excel_app = Nothing myRecord.CloseyourRecord.CloseSet myRecord = NothingSet yourRecord = NothingLabel2.Caption = "导入完毕" Screen.MousePointer = vbDefault MsgBox "共导入" & Format$(v - 1) & "条记录" End If End SubPrivate Sub Command1_Click()Unload MeEnd SubPrivate Sub Command2_Click(Index As Integer)''寻找ACCESS数据库CommonDialog1.Filter = "ACCESS 文件(*.mdb)|*.mdb"CommonDialog1.CancelError = TrueCommonDialog1.ShowOpentxtAccessFile.Text = CommonDialog1.FileNameEnd SubPrivate Sub Command3_Click()''寻找excel数据库CommonDialog2.Filter = "excel 文件(*.xls)|*.xls"CommonDialog2.CancelError = TrueCommonDialog2.ShowOpentxtExcelFile.Text = CommonDialog2.FileNameEnd SubPrivate Sub Form_Load()Call Module1.lianjietxtAccessFile.Text = datapath End Sub模块(module1)中的代码如下:Public myConn As New ADODB.Connection ''定义连接字符串Public myRecord As New ADODB.Recordset ''定义记录集(字段)Public yourRecord As New ADODB.Recordset ''定义记录集(数据)Public cntoad As Boolean ''是否正常连接Public ml ''姓名字段所在列Public strSQL ''查询字符串Public MyDatabase As Database ''定义数据库名Public MyTable As TableDef, MyField As Field ''定义表名和字段名Public xuehao ''读取字段序号Public goshiRecord As New ADODB.Recordset ''定义记录集(公式)Public hxfyn As BooleanPublic hxfbds '' 公式或条件Public duan ''要统计的字段Public islinshi As Boolean ''是否为临时公式Public leiRecord As New ADODB.Recordset ''定义记录集(工资类别)Public datapath As String ''数据库路径及名Public table As String ''工资表名Public lei As String '' 工资类别Public Sub lianjie() ''打开数据库On Error Resume NextmyConn.CloseDim mySQL As String ''设定连接字符串 mySQL = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;" mySQL = mySQL + "Data Source=" & datapath myConn.ConnectionString = mySQL ''设定连接 myConn.open ''打开连接 myRecord.ActiveConnection = myConn ''设定RecordSeet的连接对象为Connection myRecord.CursorLocation = adUseClientgoshiRecord.ActiveConnection = myConn ''设定RecordSeet的连接对象为ConnectiongoshiRecord.CursorLocation = adUseClient yourRecord.ActiveConnection = myConn ''设定RecordSeet的连接对象为Connection yourRecord.CursorLocation = adUseClientEnd Sub

要连接ACCESS数据库这时正在被使用使数据库被锁定?

常用的数据库连接方式: Dimconnstr dimdbpath dbpath="#123$asd31.mdb" connstr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="&Server.MapPath(dbpath) Setconn=Server.CreateObject("ADODB.Connection") conn.Openconnstr 关闭语句不仅是. (断开记录) Rs.close SetRs=Nothing 还有:(断开连接) Conn.Close SetConn=Nothing 排除上面的原因之后. 用ACCESS打开你的数据库,选择菜单中的[工具]->[选项]->[高级] 更改[默认打开模式]为[共享],更改[默认记录锁定]为[不锁定]. 如仍然不行将下面的选项[使用记录级锁定]也取消. 确定后保存,然后打开,修复/压缩数据库. 删除目录中的LDB文件(如无法删除,先结束相关进程或重新启动计算机删除即可)

vs怎么连接数据库?

在使用Visual Studio(VS)连接数据库时,可以通过以下步骤进行操作:

1. 打开Visual Studio并创建一个新的项目或打开现有项目。

2. 在项目中,找到需要连接数据库的文件(例如C#或ASP.NET项目中的.cs文件)。

3. 在代码中添加对适当的命名空间的引用。例如,如果你使用的是ADO.NET来连接数据库,可以添加`using System.Data.SqlClient;`或`using System.Data.OleDb;`,具体取决于你使用的数据库提供程序。

4. 创建一个数据库连接对象。根据使用的数据库类型,可以使用适当的数据库连接类(如SqlConnection、OleDbConnection等)来创建连接对象。

示例(使用SQL Server数据库):

```csharp

SqlConnection connection = new SqlConnection("连接字符串");

```

5. 打开数据库连接。通过调用连接对象的Open()方法来打开数据库连接。

示例:

```csharp

connection.Open();

```

6. 执行数据库操作。使用连接对象执行需要的数据库操作,例如执行查询、更新或插入数据等。

示例(执行查询):

```csharp

SqlCommand command = new SqlCommand("SELECT * FROM 表名", connection);

SqlDataReader reader = command.ExecuteReader();

while (reader.Read())

{

// 读取数据

}

reader.Close();

```

7. 关闭数据库连接。一旦完成数据库操作,通过调用连接对象的Close()方法来关闭数据库连接。

示例:

```csharp

connection.Close();

```

需要注意的是,以上是一个简单的示例,实际应用中,根据具体的数据库类型和所需的操作,可能需要进一步学习和使用相关的数据库操作类和语句来连接和操作数据库。具体的数据库操作也可能会涉及到异常处理、参数化查询、事务处理等其他方面的考虑。

如何用OLEDB方法连接Access数据库?

远程连接access数据库的几个方法: 1.建立VPN(Virtual Private Network),然后把服务器中mdb文件所在的 Folder 共享即可。连接方法如下: “Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\服务器名\\文件夹 \\mydata.mdb;Jet OLEDB:Database Password=datapass;Persist Security Info=False”2.把数据库放在Web 服务器上,使ADO或RDO通过RDS(Remote Data Service) 及IIS来实现: 如果服务器设置了ODBC DSN的话,连接方法如下: "Provider=MS Remote;Remote Server=http://服务器名;Remote Provider=MSDASQL;DSN=AdvWorks;Uid=dataUserName;Pwd=dataPassWord" 如果设置的是OLE DB Provider 的话,连接方法如下: "Provider=MS Remote;Remote Server=http://服务器名;Remote Provider=Microsoft.Jet.OLEDB.4.0; Data Source=数据库文件路径,"+ "admin,"+"" (数据库用户名为:admin;密码为空)3.编写服务器程序,通过TCP/IP,传递Recordset。 4.使用第三方控件,如:ADO Anywhere或UDAParts RDB等。 5.使用XMLHTTP 应用举例OledbConnection myconn = null;myconn = new OledbConnection("192.168.1.155", "DSN=mydata;DRIVER={Microsoft Access Driver (*.mdb)};UID=test;PWD=test;"); //其中服务器IP是 192.168.1.155 ;数据库名是 mydata ;数据库用户名这密码都是test myconn.Open();

发表评论

快捷回复: 表情:
AddoilApplauseBadlaughBombCoffeeFabulousFacepalmFecesFrownHeyhaInsidiousKeepFightingNoProbPigHeadShockedSinistersmileSlapSocialSweatTolaughWatermelonWittyWowYeahYellowdog
评论列表 (暂无评论,70人围观)

还没有评论,来说两句吧...