我使用“sa”创建了一个用户“secure1”,我可以使用 Management Studio 在本地和远程连接为 secure1。
然后当我使用 url 切换到 JDBC 时(我在下面的 url 中使用了两个 \ 但 stackexchange 去掉了另一个斜线,因为 java 将 \ 视为转义序列)
jdbc:sqlserver://192.168.111.111\MYDBQA:1433;初始目录=mydatabase
我刚收到登录被拒绝的消息。如果我擦除 Initial Catalog,我会收到 Login Denied。除了他已经拥有的 public 之外,我最终还为我的 secure1 用户提供了 sysadmin 服务器角色。
目前,在“mydatabase”的用户映射上,我给了他除 db_deny** 之外的所有权限。我还将他添加到 master、model、msdb、tempdb 并标记了除 db_den*** 之外的所有权限,尽管这也不起作用。
先问我更重要的问题,这样我才能先工作....
- 如何让它工作或者是否有关于在某处为 JDBC 连接设置 MS SQL 的文档?
然后让它变得更好......
- 如何正确设置它以便我的用户可以读取/写入/创建/更新“mydatabase”中的所有表,但不能在任何其他数据库中执行任何其他操作。
注意:我可以通过 JDBC 连接到“sa”用户。
谢谢,院长
院长,
几件事。
现在就试试。
更新:
您的连接字符串错误。您似乎正在使用 SQL Server 的命名实例,而命名实例未使用默认端口号。运行 SQL Browser 服务很好,但连接字符串应该更像这样:
jdbc:sqlserver://serverName;instanceName=instance1;integratedSecurity=true;<more properties as required>;