beginner-bj 发表于 2008-05-21 17:56

如何建立一个能使用ddlgen的最小权限的用户

我想用ddlgen,但不想用sa,如何实现呢?

网上说:
Since ddlgen needs to obtain data from system catalogs, users must either be logged in as “dbo” or have select permissions on syscatalogs.

没找到syscatalogs这个表。

beginner-bj 发表于 2008-05-21 17:59

17:13:59 sybase@ST-STOCK:$/sybase/ASEP/bin/ddlgen -Udbdump -P123456 -Sstock -Dbookhis
-- DGP5: com.sybase.util.ds.ldap.LDAPWarning: The Specified LDAP config file '/sybase/OCS-12_5/config/libtcl.cfg' has no LDAP entries.

SGM5: com.sybase.jdbc2.jdbc.SybSQLException: Server user id 17 is not a valid user in database 'bookhis'

com.sybase.ddlgen.DDLBaseException: com.sybase.jdbc2.jdbc.SybSQLException: Server user id 17 is not a valid user in database 'bookhis'

      at com.sybase.ddlgen.container.SegmentContainer.open(SegmentContainer.java:377)
      at com.sybase.ddlgen.container.DDLBaseContainer.load(DDLBaseContainer.java:76)
      at com.sybase.ddlgen.container.DatabaseContainer.addChildren(DatabaseContainer.java:420)
      at com.sybase.ddlgen.container.DatabaseContainer.open(DatabaseContainer.java:100)
      at com.sybase.ddlgen.container.DatabaseMetaContainer.open(DatabaseMetaContainer.java:100)
      at com.sybase.ddlgen.DDLThread.run(DDLThread.java:89)

beginner-bj 发表于 2008-05-21 18:25

简单的说,就是让dbdump可以ddlgen,但不能select所有的数据。

beginner-bj 发表于 2008-05-22 09:26

刚才又研究了一下,发现没戏。

Only the DBO of database   or a user with System Administrator (SA) role can run this command.
页: [1]
查看完整版本: 如何建立一个能使用ddlgen的最小权限的用户