如何在程序中对动态生成的access数据库中设置对msysobject的permission?

yinduasan111 2003-09-26 07:54:08
如果是已经存在的access数据库,可以在access里设置user and group permission从而在程序中能有权限读出msysobject的内容,但是对于动态生成的access数据库应该怎么办呢?
...全文
69 1 打赏 收藏 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
changechange 2003-09-27
  • 打赏
  • 举报
回复
本范例演示 GetPermissions 和 SetPermissions 方法。下面的代码将赋予管理员用户对 Orders 表的完全访问权限。

Sub GrantPermissions()

Dim cnn As New ADODB.Connection
Dim cat As New ADOX.Catalog
Dim lngPerm As Long

' Opens a connection to the northwind database
' using the Microsoft Jet 4.0 provider
cnn.Provider = "Microsoft.Jet.OLEDB.4.0"
cnn.Open "data source=c:\Program Files\" & _
"Microsoft Office\Office\Samples\Northwind.mdb;" & _
"jet oledb:system database=" & _
"c:\Program Files\Microsoft Office\Office\system.mdw"

Set cat.ActiveConnection = cnn

' Retrieve original permissions
lngPerm = cat.Users("admin").GetPermissions("Orders", adPermObjTable)
Debug.Print "Original permissions: " & Str(lngPerm)

' Revoke all permissions
cat.Users("admin").SetPermissions "Orders", adPermObjTable, _
adAccessRevoke, adRightFull

' Display permissions
Debug.Print "Revoked permissions: " & _
Str(cat.Users("admin").GetPermissions("Orders", adPermObjTable))

' Give the Admin user full rights on the orders object
cat.Users("admin").SetPermissions "Orders", adPermObjTable, _
adAccessSet, adRightFull

' Display permissions
Debug.Print "Full permissions: " & _
Str(cat.Users("admin").GetPermissions("Orders", adPermObjTable))

' Restore original permissions
cat.Users("admin").SetPermissions "Orders", adPermObjTable, _
adAccessSet, lngPerm

' Display permissions
Debug.Print "Final permissions: " & _
Str(cat.Users("admin").GetPermissions("Orders", adPermObjTable))


打开链接下载源码: https://pan.quark.cn/s/e18529987bb9 ### ETS文教程:KNX施耐德智能家居 #### 知识点一:ETS软件概述与启动 ETS(Engineering Tool Software)是由施耐德电气研发的一款专业设计工具,其核心功能在于构建和配置基于KNX标准的智能家居及楼宇自动化系统。KNX代表一种国际公认的开放式标准,该标准在楼宇自动化领域得到广泛应用,其目的是实现不同品牌设备之间的互联互通。 **软件启动方法**:ETS软件可以通过双击其图标来启动,或者从开始菜单选择“File”->“New Project”,亦或直接使用Ctrl+N快捷键来启动该软件。 #### 知识点二:工程项目创建 在启动新的工程项目时,需要遵循以下流程: 1. **项目命名**:推荐使用数字与字母的组合来命名项目,例如“Officebuildings”,这样的命名方式有助于日后的管理和识别。 2. **构建建筑物模型**:在“Buildings/Functions”部分添加建筑物,自定义其名称(例如“mg”),并确认创建操作。 3. **添加房间**:针对每一个建筑物,可以进一步添加房间,同样地,为房间自定义名称(如“1F”),以此来构建完整的建筑模型。 #### 知识点三:设备加载与配置 设备加载是ETS软件的核心环节,其作用在于将实际的智能设备(包括开关、传感器等)整合到项目: 1. **设备加载过程**:在目标房间处进行右键点击,选择“Add Devices”,随后通过“Product Finder”对话框选择合适的制造商和产品系列,以此来加载所需的设备类型。 2. **地址分配**:在设备加载完成后,应手动为其分配独...

7,732

社区成员

发帖
与我相关
我的任务
社区描述
Microsoft Office Access是由微软发布的关系数据库管理系统。它结合了 MicrosoftJet Database Engine 和 图形用户界面两项特点。
社区管理员
  • Access
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧