以编程方式提取MS SQL表列的数据类型,以便以后插入

本文关键字:数据类型 插入 方式 编程 提取 MS SQL | 更新日期: 2023-09-27 17:48:50

Rails有一种从DB中查找列名和预期数据类型的很棒的方法,减少了很多编程。

我正试图在C#中构建这样的东西,因为我们有不断变化的大表。我会添加这样的参数:

SqlParameter param = new SqlParameter("parametername", *SqlDbType.Int*);
param.Direction = ParameterDirection.Input;
param.Value = 0;
comm.Parameters.Add(param);

请注意SqlDbType。我怎么能拿到?如果我从DataSet中获取DataColumns,那么我所能获得的只是System类型,如System.string。

以编程方式提取MS SQL表列的数据类型,以便以后插入

为什么不让ADO.NET自动检测它:

SqlParameter param = new SqlParameter("parametername", value);

当然,你实际上也不需要方向:

comm.Parameters.Add(new SqlParameter("parametername",value));

我有点喜欢用一行代码做事:)

对于我们的项目,我们在构建SQL语句之前查询INFORMATION_SCHEMA表。如果将DATA_TYPE中的值从INFORMATION_SCHEMA.COLUMNS粘贴到Enum.Parse中,则应该会得到正确的值。

相关文章: