测试阶段使用SYS系统帐号创建数据表之后,会发现一个很尴尬的现象,我们无法在外部向数据库插入数据。因为SYS无法作为驱动登录,而且也存在安全方面的问题。所以这时候我们想到创建新的用户并授予权限。
动作都在Navicat中进行。我现在越来越发现Navicat的好用了。
点击图标按钮的 USER-user,然后在右边的小菜单点 New User, 注意新用户的用户名全部大写,据说可以规避一些BUG。
Default Table Space,默认表空间,选择你准备要授权的表所在的表空间。下一项 Temporary Table Space,选择TEMP。
然后切换到第二个标签也就是 Member of 标签,勾选其中的 DBA 的第一项和第三项。
然后点击顶部的 Save,用户就创建完毕了。
新创建的用户是没办法插入数据的,虽然你设置了默认表空间,但是我们还要给他具体表的权限。
关掉User窗口,点击图标按钮中的 Query 按钮,再点击下面小导航中的 New Query.
在SQL查询窗口中输入 grant all on 表名 to 用户名 ,然后点击 Run 执行,执行成功后用户就拥有这个表的所有权限了。
【关于权限:一般的,查询类语句可以使用SYSTEM帐号,而INSERT或者UPDATE等更新类语句,必须指定具体数据表权限才能使用。】
动作都在Navicat中进行。我现在越来越发现Navicat的好用了。
点击图标按钮的 USER-user,然后在右边的小菜单点 New User, 注意新用户的用户名全部大写,据说可以规避一些BUG。
Default Table Space,默认表空间,选择你准备要授权的表所在的表空间。下一项 Temporary Table Space,选择TEMP。
然后切换到第二个标签也就是 Member of 标签,勾选其中的 DBA 的第一项和第三项。
然后点击顶部的 Save,用户就创建完毕了。
新创建的用户是没办法插入数据的,虽然你设置了默认表空间,但是我们还要给他具体表的权限。
关掉User窗口,点击图标按钮中的 Query 按钮,再点击下面小导航中的 New Query.
在SQL查询窗口中输入 grant all on 表名 to 用户名 ,然后点击 Run 执行,执行成功后用户就拥有这个表的所有权限了。
【关于权限:一般的,查询类语句可以使用SYSTEM帐号,而INSERT或者UPDATE等更新类语句,必须指定具体数据表权限才能使用。】