sql数据库,用友ERP,我要设置一个报表,数据库表是SaleBillVouch、SaleBill

sql数据库,用友ERP,我要设置一个报表,数据库表是SaleBillVouch、SaleBill,第1张

"要是你拷贝的数据库文件,,你需要在sql企业管理器下面对数据库进行附加,如果你是备份的话,你就需要还原到新的数据库上就可以了,你直接拷贝过去,新的sql是不能自动识别的。追问:我已经附加进去了。而且可以用sql企业管理其器打开。当我设置好erp链接数据的路径后。可是就是没法链接上。总是出现“can't

link

to

ms

sql

server”

create database sales

on primary

(name='sale_data',

filename='D:\sales_datamdf',

size=10mb,

filegrowth=10%

)

log on

(name='sales_log',

filename='D:\sales_logldf',

size=1mb,

maxsize=5mb,

filegrowth=1mb

)

use store;

create table sale(id int auto_increment primary key,pm varchar(30) ,price decimal(9,2),num int,sum decimal(11,2));

insert into sale(pm,price,num) values ('电视机',140000,4);

select from sale;

update sale set sum = 0 ;

select from sale where price > 400000 order by sum desc

method = "post"

action = "calc_multiphp"

a

b

c

submit

在SQL Server数据库中 主要是通过角色来继承相关的权限 但是 这个权限继承很容易造成权限上的冲突 如现在有个销售员账户SALE 有一个销售部门角色DE_SALES 其中销售部门角色DE_SALES具有查询所有客户信息 即CUSTOM表的权限 但是销售员账户SALE 其由于是为试用期的员工设置的临时帐户 所以其不能够查询CUSTOM表 但是 SALE 帐户其是属于销售部门这个角色 其会继承销售部门这个角色的所有访问权限 此时 SALE 帐户所属角色的权限跟自己帐户的权限就产生了冲突 遇到这种情况 SQL Server数据库该如何处理呢

在SQLServer数据库中 授予组或者角色的权限由该组或者角色的成员所继承 虽然某个用户可能在一个级别上授予或者废除权限 但如果这些权限与更高级的权限发生冲突的话 则可能会打破数据库管理员的权限设计思路 让某个用户意外的禁止或者允许访问某个数据库对象 为了避免因为数据库权限冲突所导致的一系列问题 SQLServer数据库提出了一些解决措施 虽然通过这些措施不能够完全避免权限之间的冲突 但是 至少让数据库管理员看到了解决问题的希望

招数一 明确拒绝

应用场景 现在数据库中有用户Landy 其属于销售员SALES角色 其中 销售员角色具有查询客户信息表Customs的权限 而由于某种原因 数据库管理员限制用户Landy访问数据库对象Customs表的权利 此时就会有对象访问权限上的冲突 此时 数据库管理员该如何才能够避免这种冲突呢

第一个招数就是学会使用拒绝 *** 作 在数据库中 拒绝权限始终优先 在任何级别(无论是用户或者角色)上的拒绝权限都拒绝该对象上的权限 无论该用户现有的权限是否已授予权限还是被废除权限 这听起来比较绕口 或许根据上面的例子来讲 大家更容易明白 如上例 若要解决上面的权限冲突问题 则我们只需要在用户Landy的权限设置中 拒绝其具有数据库对象表Customs表的Select权限 由于显示的拒绝其总被优先执行 所以即使其所属的角色具有表Customs的访问权限 但是其成员Landy由于被显示的拒绝 根据拒绝优先的选择 则其最终不会有数据库表Customs的访问权限

所以笔者所传授给大家的第一个招数就是要学会使用拒绝 *** 作 各位数据库管理员要牢记 在权限管理中 拒绝 *** 作总是被优先执行 另外还有一个极端的例子 可以说明这个问题 如果数据库管理员把Public进行设置 设置为拒绝权限 此时由于拒绝权限被优先执行 则数据会禁止任何用户访问能数据库对象 故拒绝权限一般往往用在用户级别上 可以实现对个别特殊用户的权限控制 而不用给他们设置独立的组 这让数据库权限管理更加的灵活

招数二 废除权限 可以让某些帐户恢复正常

应用情景 现在数据库中有用户Landy 其属于销售员SALES角色 其中 销售员角色具有查询客户信息表Customs的权限 而由于某种原因 数据库管理员限制用户Landy访问数据库对象Customs表的权利 此时 数据库管理员给Landy用户显示的拒绝访问Customs表的权利 但是 现在这个限制其访问客户表的原因已经消除 用户Landy 可以正常访问表Customs了 此时 该如何处理呢

此时 数据库管理员可以通过废除权限 *** 作来完成需求 废除权限只删除所废除级别(如用户 角色或者组)上的已授予权限或者已拒绝权限 而在另外级别上所授予或者拒绝的同一权限仍然适用 废除权限类似于拒绝权限 因为二者都是在同一级别上删除已经授予的权限 但是 废除权限是删除已经授予的权限 并不妨碍用户 组或者角色从更高级别继承已授予的权限 为此 如果废除用户查看表的权限 并不一定能够防止用户查看该表 这跟拒绝权限 *** 作就有本质的区别

举例来说 在上面这个例子中 Landy用户刚开始其被显示的拒绝访问表Customs 虽然其所属的角色具有访问表Customs的权限 但是因为拒绝优先 所以用户Landy最终不能过访问这个表 此时 若限制原因消除 则数据库管理员可以采取废除权限 *** 作 把Landy用户上的拒绝权限废除掉 因为废除权限只删除用户Landy上已拒绝访问这个表的权限 而不影响从角色SALES中继承统一权限 为此 用户Landy最终具有访问这个表Customs的权限 这就是废除权限 *** 作的本质

在实际工作中 废除权限 *** 作与拒绝权限 *** 作往往被用来处理一些特殊的帐户 如不少企业中 试用期员工其权限往往会受到限制 出于安全起见 企业不会让一些还在试用期的员工访问所有的数据 为此 就要对他们的权限进行限制 此时 就可以在这些用户帐户级别上显示的拒绝 实现部分访问限制的需求 当他们试用期过后 若试用合格的话 就可以把这些帐户的拒绝权限废除掉 如此的话 他们就可以正常继承他们所属角色或者组的权限 可见 拒绝权限与废除权限结合 可以让数据库全县的管理更加的统一 最终要的是 可以最大程度的避免因为权限冲突而导致的数据管理上的安全漏洞

另外 在实际配置中 需要注意一个问题 虽然废除权限具有废除拒绝权限的能力 但是 他只能够在一个级别上其作用 如上面这个例子中 另外还有一个T_SALES的角色 其权限设置中 显示的拒绝访问表Customs 此时 若用户Landy同时属于SALES角色和T_SALES角色 虽然通过废除权限废除了用户Landy级别上的拒绝访问表Customs的权限 但是 用户Landy所属的T_SALES角色中的拒绝权限仍然具有优先执行的权力 所以 最终这个用户仍然不能够访问表Customs 所以 通过废除对权限的拒绝可以删除已经拒绝的权限 但是 如果用户在其他组或者角色级别有其他拒绝权限的话 在该用户访问某个对象的权限仍然会被拒绝

招数三 授权 *** 作 让用户访问权限一目了然

应用情景 现在数据库中有用户Landy 其属于销售员SALES角色 其中 销售员角色具有查询客户信息表Customs的权限 而由于某种原因 数据库管理员限制用户Landy访问数据库对象Customs表的权利 此时 数据库管理员给Landy用户显示的拒绝访问Customs表的权利 但是 现在这个限制其访问客户表的原因已经消除 用户Landy 可以正常访问表Customs了 此时 该如何处理呢

此时 除了可以通过上面的废除权限 *** 作来处理 还可以通过授权 *** 作来完成 废除权限 *** 作有一个缺陷 就是数据库管理员要判断这个用户到底是否具有某个数据库对象的访问权限时 还需要去查看其所属的角色或者组中的权限设置 这会增加一定的工作量 而授权 *** 作则可以避免这种情况 授予权限删除所授予级别伤的已经拒绝权限或者已经废除权限 而在另一级别上所拒绝权限的同一权限仍然适用 但是 虽然在另一级别上所废除的同一权限仍然适用 但他不阻止用户访问该对象 也就是说 如果Sales角色可以访问表Customs 现在数据库管理员授予了用户Landy访问Customs表的权限 则用户最终具有访问表Customs的权限 但是 如果Sales角色显示的拒绝了表Customs的查询权限 此时即使显示的授予用户Landy表Customs的访问权限 则该用户仍然不能够访问表Customs 因为拒绝权限总是被优先执行 所以说 用户最终得到的是对象上所授予 拒绝或者废除权限的全部权限的并集 其中 拒绝权限具有最优先的权利

lishixinzhi/Article/program/SQLServer/201311/22467

以上就是关于sql数据库,用友ERP,我要设置一个报表,数据库表是SaleBillVouch、SaleBill全部的内容,包括:sql数据库,用友ERP,我要设置一个报表,数据库表是SaleBillVouch、SaleBill、关于用SQL语句创建数据库,这样写哪里错了呢、设计题 有一个MySQL数据库store,在store数据库中含有一个销售表sale,用于存放商品的销售记录。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9598495.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存