【问题标题】:Create MS access database file, table and field using VB.Net使用 VB.Net 创建 MS Access 数据库文件、表和字段
【发布时间】:2018-06-27 13:57:57
【问题描述】:

我想使用 VB.net 编码创建一个数据库文件,数据库文件名为“College1”。在数据库文件“College1”中,我想添加一个名为“StudentList”的表。在表 'StudentList' 我想添加以下字段 1. 学生姓名 2.出生日期 3. 课程 4.手机号 如果可能的话,我可以格式化列吗?例如,DOB 为日期格式,手机号码为数字格式

【问题讨论】:

标签: vb.net ms-access


【解决方案1】:

这是一个如何使用 VB.NET 创建 MS Access 数据库的示例。

Imports ADOX
Public Class Form1
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        Dim cat As Catalog = New Catalog()
        cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;" &
                    "Data Source=C:\Users\Excel\Desktop\NewMDB.mdb;" &
                    "Jet OLEDB:Engine Type=5")
        Console.WriteLine("Database Created Successfully")
        cat = Nothing
    End Sub
End Class

注意:需要添加对'Microsoft ADO Ext 2.8'的引用

而且,这里有一个通用示例,说明如何从 VB.NET 中的 TextBox 将数据写入 MS Access。我认为你想做的不仅仅是创建数据库,对吧……

Imports System.Data.OleDb

Public Class Form1



    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click

        ' Requires: Imports System.Data.OleDb

        ' ensures the connection is closed and disposed
        Using connection As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" & _
            "Data Source=""C:\your_path_here\InsertInto.mdb"";" & _
            "Persist Security Info=False")
            ' open connection
            connection.Open()

            ' Create command
            Dim insertCommand As New OleDbCommand( _
                "INSERT INTO Table1([inputOne] , [inputTwo] , [inputThree]) " & _
                "VALUES (@inputOne, @inputTwo, @inputThree);", _
                connection)
            ' Add the parameters with value
            insertCommand.Parameters.AddWithValue("@inputOne", TextBox1.Text)
            insertCommand.Parameters.AddWithValue("@inputTwo", TextBox2.Text)
            insertCommand.Parameters.AddWithValue("@inputThree", TextBox3.Text)
            ' you should always use parameterized queries to avoid SQL Injection
            ' execute the command
            insertCommand.ExecuteNonQuery()

            MessageBox.Show("Insert is done!!")

        End Using

    End Sub
End Class

【讨论】:

    【解决方案2】:

    你可以试试这个来创建一个 ms access db 文件。

    Dim connectionString As String = _
        "Provider=Microsoft.Jet.OLEDB.4.0;" & _
        "Data Source=C:\Users\Public\mdbTest.mdb;"
        Using con As New OleDbConnection(connectionString)
    con.Open()
    Using cmd As New OleDbCommand()
        cmd.Connection = con
        cmd.CommandText = "CREATE TABLE zzzTest (ID COUNTER, VALUES INTEGER)"
        Try
            cmd.ExecuteNonQuery()
            Console.WriteLine("Table created.")
        Catch ex As Exception
            Console.WriteLine(ex.Message)
        End Try
    End Using
    con.Close()
    

    结束使用

    也可以使用以下链接创建数据库和表。

    Create database and table

    【讨论】:

    • 以上代码不创建数据库,只创建表。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-17
    • 2011-05-13
    • 2011-12-11
    • 2013-12-14
    • 2014-08-17
    相关资源
    最近更新 更多