使用ACCESS中隐藏的MSysObjects数据表来确定是否存在某个数据表!
摘要: 在昨天的随笔中,我写了篇关于使用C#的强大异常判断和报错来判断是否已经存在了制定数据表,如果不存在则到网上下载。因为我考虑不周,没有加上代码,判断出错类型,所以很不准确。但是,应该说,这是一个思路,个人认为比较实用的思路。
今天我换了一个方法,使用ACCESS中隐藏的MSysObjects数据表来确定是否存在某个数据表!但是有前提条件,必须手动或者要本机设置MSysObjects数据表的可读属性。默认创建的ACCESS数据库的MSysObjects数据表是不支持JET SQL来读取的。
下面的代码是我的软件中的一部分,目的是对于已经存在的一个数据库的MSysObjects数据表进行读取,判断是不是存在制定的数据表,如果不存在,则创建一个新的数据表。
阅读全文
【转】新手来看:如何才能操作名为MSysObjects的表?
摘要: 我想通过SQL语句查询出数据库中表的名字列表,看看表是否存在。但是在运行的时候,系统提示“[Microsoft][ODBC Microsoft Access 驱动程序] 不能读取记录;在 'msysobjects' 上没有读取数据权限。”
SQL语句:Select * from msysobjects where name ='abcdes'
但是我不知道该如何设置数据库的相关权限,请执教!Access是97版本,2000我也试验过,也没有找到办法。
阅读全文
【转】如何才能修改系统表,比如msysobjects?
摘要: 在admin的权限里添加对msysobjects的更新操作就可以了嘛
默认的情况是admin对msysobjects没有任何权限!包括查询
access 2000下
工具 -> 选项 -> 视图 -> 隐藏对象、系统对象
前面的勾选上。
工具 -> 安全 -> 用户与组的权限
在对象名称中选定 MSysObjects ,然后权限中设置其权限。
阅读全文
使用C#的强大的异常和出错提示信息来判断制定数据库中的数据表是否存在!
摘要: 使用C#的强大的异常和出错提示信息来判断制定数据库中的数据表是否存在!
一直在查找资料,可以使用ADO.NET来判断数据库中的某个名字的数据表是否存在。可是找到的资料多是使用ADOX这个COM组件的方法,我打算不使用这个组件了。.NET 2.0这么强大的软件不可能没有可以实现这个的功能吧!
冥思苦想之后,我终于想到了,可以使用它的异常和报错信息来实现这个目的。如果我需要创建某个数据库我也可以事先把这个数据库放在我的网站上面,然后在需要的时候,下载到当前电脑。这样也省掉了我之前一直在弄的使用ADOX来创建数据库的方法。
下面我把我的代码贴出来,算是给我自己的一个小小的总结。
如果大侠们有什么好的办法,请多多指教。
阅读全文
[自我总结]如何使用VS2005中的OLEDB的JET SQL驱动来动态创建数据表!
摘要: “如何使用VS2005中的OLEDB的JET SQL驱动来动态创建数据表”,这个问题看似简单,网上大把的资料,但是我实现起来,还是很有难度的,可以说,我是用了很长时间才收集起来的。
现在我把我的解决方法,写下了,既是总结,也是希望能帮到可能正在搜索这个资料的朋友。
对于这个问题,我觉得,比较难的地方就是,有太多类似的资料和类似的方法,但是事实上,JET SQL并不支持太多的方法。
先把我的代码贴出来,然后再说吧。
阅读全文
[自我总结]如何在VS2005中通过ADOX动态生产MDB(Access)数据库!
摘要: [自我总结]如何在VS2005中通过ADOX动态生产MDB(Access)数据库!
虽然是一个比较简单的问题,也已经有很多朋友给出了实例,不过,我实际操作的时候却总是出现这样或者那样的问题,所以我把自己的经验简单总结一下,希望可以帮到别人。
目前比较容易出现的问题,就是如何导入ADOX,然后就是如何生产数据库。
导入和生产数据库都不是很难,我这里想用一个图片,来说明方法。
阅读全文
我的尝试:如何启动多线程,后台线程如何向主线程传递数据!
摘要: 在学习这个部分之前,搜索了很多资料,也看了很多源代码。但是再看看微软的MSDN发现,网上流传的与MSDN (.NET 2.0) 的说法完全不同。于是我很茫然,一直以为C# 2.0 怎么这么难啊。
但是今天,别人说C#原来这么简单的说法,又一次得到了我自己的同感。
很多人说,在.NET框架中,启动多线程,需要使用Thread空间,这的确不错。不过,对于我这样的初学者,我可以只使用BackgroundWoker控件来实现。
很多人说,要在多线程中传递数据,需要设置一个包装的类什么的,总之好像很麻烦的样子。因为我现在还是不清楚,所以也不知道该怎么写。不过,我这个初学者,也找到了自己的解决办法,那就是设置全局变量,直接传递数据,不过,在同步数据之前可以将全局变量lock一下,来保证安全。嘿嘿。
下面就把我个人的拙作,献丑一下,请多多包涵。如果您发现我有哪里做得不好,请多多评批指正。
阅读全文
怎么求两个时间刻度的差呢?我好笨!终于解决了!
摘要: op_Subtraction 已重载。 从指定的 DateTime 减去指定的 DateTime 或 TimeSpan。
看到了上面的内容,让我很糊涂,到底应该怎么求两个时间刻度的差呢?点开链接看下面的内容:
从指定的 DateTime 减去指定的 DateTime 或 TimeSpan。
呵呵,于是我更糊涂了。想了好几天,终于我发现,为什么不直接使用减号呢?
所以下面的程序我就直接使用了减号来取得两个时间刻度的差,得到的是TimeSpan。
阅读全文