Tag: sql server 2008 r2

如何配置JDBC连接以使用与当前用户不同的AD用户?

服务器“HOSTNAME”上托管的MS SQL Server 2008 R2数据库“dbname”可由Active Directory用户从域“ABC”访问 ,让我们称他为“dbuser”或“ABC \ dbuser” 。 我们以AD用户“ABC \ appuser”运行我们的应用程序。 “appuser”和“dbuser”位于不同的AD组中。 当由在“ABC \ appuser”下运行的服务运行时,连接使用用户“ABC \ appuser”连接到数据库: DriverManager.getConnection( “jdbc:sqlserver://HOSTNAME:1433;databaseName=dbname;integratedSecurity=true”, “”, “” ); 使用相同的连接字符串并提供“ABC \ dbuser”和密码“dbpass” ,连接将忽略这些值,而是再次尝试使用服务正在运行的AD信息“ABC \ appuser” : DriverManager.getConnection( “jdbc:sqlserver://HOSTNAME:1433;databaseName=dbname;integratedSecurity=true”, “ABC\\dbuser”, “dbpass” ); 删除flag integratedSecurity=true ,连接将“ABC \ dbuser”视为SQL帐户而不是AD帐户,抛出SQLServerException : DriverManager.getConnection( “jdbc:sqlserver://HOSTNAME:1433;databaseName=dbname”, “ABC\\dbuser”, “dbpass” ); 投 com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user ‘ABC\dbuser’. 到目前为止,我将假设这是不可能的,并且我将让数据库团队提供对数据库的“ABC […]

如何使用SQL查询在SQL SERVER 2008 R2中获取表定义?

我创建了一个示例java程序,在其中我使用以下查询获取所有对象的定义,如视图,触发器,函数等: – select object_definition(object_id) from sys.objects where type=’V’; //for Views select object_definition(object_id) from sys.objects where type=’TF’; //for Functions select object_definition(object_id) from sys.objects where type=’TR’; //for Triggers select object_definition(object_id) from sys.objects where type=’P’; //for Stored Procedures 但是以下查询无法获取表的ddl(表定义): – select object_definition(object_id) from sys.objects where type=’U’; //for User defined Tables 现在我使用这里给出的解决方案: 使用Query为现有表生成SQL创建脚本以及如何 为现有表 生成CREATE TABLE脚本:第1部分 是否有任何直接的SQL查询使用我可以得到表定义。

使用二进制格式的Java在数据库中存储图像

我正在解决我的项目并遇到一些问题,我搜索了它,但找不到完整的学习资源,我需要的是使用我的Java程序将图像存储在SQL Server数据库中,并且需要返回检索,图像尺寸不大,介于30到50 K之间,我可以使用toolKit中的getImage()方法从我的磁盘加载图像 Image imm = Toolkit.getDefaultToolkit().getImage(“URl”); ,但我不知道如何将该图像转换为二进制格式并存储在数据库中,然后检索从数据库返回。 我想通过查看几个站点将它存储在VarBinary中,我发现SQL Server中的图像类型很快就会退回。

接收连接到SQL Server 2008的SQLException“用户登录失败”

我试图通过Java连接到SQL Server 2008。 我已经将sqljdbc4.jar添加到我的项目库中。 没有为访问数据库的数据库设置用户名和密码(Windows身份validation)。 1433端口是Listening,但我仍然收到此exception: SQLexception:com.microsoft.sqlserver.jdbc.SQLServerException:用户”登录失败。 ClientConnectionId:085d5df3-ad69-49e1-ba32-b2b990c16a69 相关代码: public class DataBases { private Connection link; private java.sql.Statement stmt; public ResultSet rs; public DataBases() { try { Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver”); String connectionUrl = “jdbc:sqlserver://localhost:1433;databaseName=DB;”; Connection con = DriverManager.getConnection(connectionUrl); } catch (SQLException e) { System.out.println(“SQL Exception: “+ e.toString()); } catch (ClassNotFoundException cE) { System.out.println(“Class Not Found Exception: “+ […]