0

是否可以在 DAO/Query 的帮助下使用 C# 更改 MS ACCESS 中的双列十进制大小(小数位数)。

根据 MSDN

size :以字符为单位的字段大小(仅限文本和二进制字段)。

参考

Size 只能在文本和二进制字段的 ALTER 查询中使用。

4

1 回答 1

2

当然,DAO 可以做到:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DAO_test
{
    class Program
    {
        static void Main(string[] args)
        {
            // required COM reference: Microsoft Office 14.0 Access Database Engine Object Library
            var dbe = new Microsoft.Office.Interop.Access.Dao.DBEngine();
            Microsoft.Office.Interop.Access.Dao.Database db = dbe.Workspaces[0].OpenDatabase(@"C:\__tmp\testData.accdb");
            Microsoft.Office.Interop.Access.Dao.Field fld = db.TableDefs["poiData"].Fields["lon"];
            Console.WriteLine("Properties[\"DecimalPlaces\"].Value was: " + fld.Properties["DecimalPlaces"].Value);
            fld.Properties["DecimalPlaces"].Value = 5;
            Console.WriteLine("Properties[\"DecimalPlaces\"].Value is now: " + fld.Properties["DecimalPlaces"].Value);
            db.Close();
            Console.WriteLine("Hit a key...");
            Console.ReadKey();
        }
    }
}
于 2013-04-30T11:55:54.950 回答