Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Database 如何从数据库中选择所有表?_Database_Vb.net_Ms Access 2010 - Fatal编程技术网

Database 如何从数据库中选择所有表?

Database 如何从数据库中选择所有表?,database,vb.net,ms-access-2010,Database,Vb.net,Ms Access 2010,下午好,不管你的时区是什么。。 我的问题是,, 是否有办法选择所有表格?就像我们如何选择所有列一样? 差不多 Dim cmdsql As String = "SELECT * FROM *" 情况: 我在数据库中有4个表(“如果我的客户更改了它,我就不知道它的名称”),所以我需要一种更好的方法来实现这些 我想选择所有列,从所有表将其存储在数据集中,这样我就可以进行迭代 如果它与搜索条件匹配 编辑:顺便说一下,这是我的搜索代码 SearchDataset.Clear() lstSearchR

下午好,不管你的时区是什么。。 我的问题是,, 是否有办法选择所有表格?就像我们如何选择所有列一样?

差不多

 Dim cmdsql As String = "SELECT * FROM  *"
情况:

我在数据库中有4个表(“如果我的客户更改了它,我就不知道它的名称”),所以我需要一种更好的方法来实现这些

我想
选择
所有列,
所有表将其存储在数据集中,这样我就可以进行迭代 如果它与搜索条件匹配

编辑:顺便说一下,这是我的搜索代码

SearchDataset.Clear()
lstSearchResults.Items.Clear()
btnSearch.Enabled = False
Dim cmdsql As String = "SELECT * FROM *" '- This variable holds the SQL command.
            '-----------------------------------------
            ' Connect to the current connection string
            '----------------------------------------
            SYSTEM_MainClient.dbcon.Open()

            '-----------------------------------------
            ' Setup the Where Clause
            '----------------------------------------

            If cboSearchBy.Text = "StudentID" Then
                SearchAdapter = New OleDb.OleDbDataAdapter(cmdsql + " WHERE " + cboSearchBy.Text + " = " + txtSearchbox.Text, SYSTEM_MainClient.dbcon)
            ElseIf cboSearchBy.Text = "Age" Then
                SearchAdapter = New OleDb.OleDbDataAdapter(cmdsql + " WHERE " + cboSearchBy.Text + " = " + txtSearchbox.Text, SYSTEM_MainClient.dbcon)
            Else
                SearchAdapter = New OleDb.OleDbDataAdapter(cmdsql + " WHERE " + cboSearchBy.Text + " like '" + txtSearchbox.Text + "'", SYSTEM_MainClient.dbcon)
            End If
            SearchAdapter.Fill(SearchDataset, "SearchResults")
            SYSTEM_MainClient.dbcon.Close()
            If SearchDataset.Tables("SearchResults").Rows.Count > 0 Then
                For i = 0 To SearchDataset.Tables("SearchResults").Rows.Count - 1
                    lstSearchResults.Items.Add(SearchDataset.Tables("SearchResults").Rows(i).Item("Last_Name").ToString + ", " + SearchDataset.Tables("SearchResults").Rows(i).Item("First_Name").ToString)
                Next
            Else
                SYSTEM_MainClient.ShowInformation("No records matched with the search '" + txtSearchbox.Text + "'.", "Database Search")
                txtSearchbox.Clear()
            End If
            btnSearch.Enabled = True

基本上,我希望发生的是,从所有表中选择all,并将其填充到数据集中,如果有基于搜索条件的匹配结果名称与my
where
子句进行迭代。

这是从ms access数据库中选择所有表的代码

SELECT MSysObjects.Name AS table_name FROM MSysObjects
 WHERE (((Left([Name],1))<>"~") AND ((Left([Name],4))<>"MSys") AND ((MSysObjects.Type) In (1,4,6))) 
order by MSysObjects.Name 
从MSysObjects中选择MSysObjects.Name作为表名
其中((左([Name],1))“~”)和((左([Name],4))“MSys”)和((MSysObjects.Type)在(1,4,6))中)
按MSysObjects.Name排序

对此查询进行一些更改将有助于选择表的列

它使我无法读取此异常的记录;对“MSysObjects”没有读取权限-