【问题标题】:How can you fill combobox in vb.net with column name from Microsoft SQL Server如何使用 Microsoft SQL Server 中的列名填充 vb.net 中的组合框
【发布时间】:2016-09-01 06:32:25
【问题描述】:

如何用 Microsoft Sql Server 的列名填充 vb.net 中的组合框?我有一个名为 Table_Categories 的表名。我希望用该表的列名填充组合框。我还计划使用 vb.net 作为其前端在表中添加列名。我该怎么做?

    Public Sub Categories()
    Dim Connect As New SqlConnection
    Dim Adapter As New SqlDataAdapter
    Dim DataTable As New System.Data.DataTable
    Dim Query As String
    ConnectionString = "Data Source=LUSPOC-PC;Initial Catalog=Sales_Invnetory;Integrated Security=True"
    Connect = New SqlConnection(ConnectionString)
    Connect.Open()
    Connect.ChangeDatabase("Sales_Inventory")
    Query = "select Column_name from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME='Table_Categories'"
    Adapter.SelectCommand = New SqlCommand(Query, Connect)

    Adapter.Fill(DataTable)
    Admin.items_category_combobx.DataSource = DataTable
    Admin.items_category_combobx.DisplayMember = "Column_name"
    Admin.items_category_combobx.ValueMember = "Column_name"




End Sub

【问题讨论】:

  • 向我们展示一些努力。到目前为止,您尝试过什么?
  • 我试过这样做
  • 请避免使用 cmets 编写代码。改为编辑您的问题。
  • 不要把它作为评论。将其放在您的帖子中以帮助改进您的问题,以便人们可以更好地帮助您。
  • 好的,谢谢。我是新手,对不起

标签: sql-server vb.net combobox datatables columnname


【解决方案1】:
Connect.ChangeDatabase("database-name")    
Query = "select Column_name from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME='your-Table-name'"
    Admin.items_category_combobx.DataSource = DataTable
    Admin.items_category_combobx.DisplayMember = "Column_name"
    Admin.items_category_combobx.ValueMember = "Column_name"

如上更改您的查询,您将获得数据集中的列名。要添加列,请从用户处获取列名和类型。构建并执行 alter table 查询以从中添加列。

【讨论】:

  • 到底是什么问题?
  • 我用 Query use sent 编辑了我的问题。让你看看我是如何使用它的。对吗?
  • 将 displaymember 和 valuemember 设置为“column_name”。你设置错了
  • 检查我修改后的答案
  • 你的意思是其余的已经正确了吗?我已经将其更改为 Column_name ,仍然没有任何反应。顺便说一句,我是一个模块,我需要把它放在组合框上吗?
【解决方案2】:
          Using sqlconn As New SqlConnection("your connection string")
                sqlconn.Open()
                Using SqlCommand As New SqlCommand("select Column_name from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME='Table_Categories'", sqlconn)
                    SqlCommand.CommandTimeout = 0                     
                    Using sqlAdp As New SqlDataAdapter(SqlCommand)
                        sqlAdp.Fill(dt)
                    End Using
                End Using
        End Using
        ComboBox1.DataSource = dt
        ComboBox1.DataTextField = "Column_name" 
        ComboBox1.DataValueField = "Column_name"
        ComboBox1.DataBind()

【讨论】:

  • 我必须声明 DataTextField,DataValueField,DataBind() 吗?它不工作
  • 怎么样?我是新手。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-03-23
  • 1970-01-01
  • 1970-01-01
  • 2023-03-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多