c#--获取数据库指定表的所有列名

主要是这么一句sql语句:

        select name from syscolumns where id = object_id('表名');

实现方法:

public List<string> getSqlColumnName()
        {
            List<string> columnName = new List<string>();
            string sql = "select name from syscolumns where id = object_id('表名')";

            try {
                conn.Open();
                SqlCommand com = new SqlCommand(sql, conn);
                SqlDataReader dr = com.ExecuteReader();
                while (dr.Read())
                {
                    columnName.Add(dr[0].ToString());
                }
                dr.Close();
                conn.Close();       
            }
            catch (Exception e)
            {

            }

            return columnName;
        }




之前以为要用到这个,百度啊qq群里问啊,结果发现还是自己对这个dr理解比较模糊,理解了就非常的easy,虽然后来发现这个并派不上用场,还是在此记录一笔吧




C#中,若要从数据库获取数据填充到下拉列(例如HTML中的`<select>`元素或者WinForms中的`ComboBox`控件),可以通过ADO.NET来执行数据库查询并处理数据。以下是一个简单的示例流程: 1. 首先,确保你的项目中已经添加了与数据库交互所需的ADO.NET引用(如`System.Data.SqlClient`用于SQL Server数据库)。 2. 在代码中创建数据库连接。通常,这需要提供数据库的连接字符串,这包含了数据库服务器的位置、数据库名、登录凭证等信息。 3. 使用`SqlConnection`对象打开数据库连接。 4. 创建`SqlCommand`对象,并指定要执行的SQL查询命令,比如一个简单的`SELECT`语句用于从数据库中选择数据。 5. 使用`SqlDataAdapter`来执行命令并填充`DataSet`或`DataTable`。 6. 将`DataSet`或`DataTable`中的数据绑定到下拉列控件。 以下是一个简单的代码示例,演示如何使用C# WinForms中的`ComboBox`控件从SQL Server数据库获取数据: ```csharp using System; using System.Data; using System.Data.SqlClient; using System.Windows.Forms; public partial class MainForm : Form { public MainForm() { InitializeComponent(); // 假设已经设置好ComboBox名为comboBox1 LoadDataIntoComboBox(); } private void LoadDataIntoComboBox() { string connectionString = "你的连接字符串"; string query = "SELECT Id, Name FROM YourTable"; // 选择适当的列 using (SqlConnection connection = new SqlConnection(connectionString)) { try { connection.Open(); SqlCommand command = new SqlCommand(query, connection); SqlDataAdapter adapter = new SqlDataAdapter(command); DataTable dataTable = new DataTable(); adapter.Fill(dataTable); // 绑定数据到ComboBox comboBox1.DataSource = dataTable; comboBox1.DisplayMember = "Name"; // 显示的列名 comboBox1.ValueMember = "Id"; // 值对应的列名 } catch (Exception ex) { MessageBox.Show("数据库操作出现错误:" + ex.Message); } } } } ``` 在这个例子中,你需要将`YourTable`替换为你要查询的名,`Id`和`Name`替换为中相应的列名。`comboBox1`是下拉列的名称,你需要将其替换为实际使用的控件名。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值