发布于 2016-07-04 11:33:56 | 106 次阅读 | 评论: 0 | 来源: 网友投递		
				
		
					这里有新鲜出炉的精品教程,程序狗速度看过来!
					
		
			JBuilder Java集成开发环境
JBuilder 2008 ,The Open, Fully Supported Java IDE,是一种Borland软件公司出品的Java集成编程环境,有不同功能程度的多个版本。甲骨文公司(Oracle)内部用的软件JDeveloper是JBuilder补充改写的。		
		
	    xp jbuiler2006 连接SQL SERVER2000的问题
1.其中包括下载JDBC FRO Microsft SQL_Server2000的驱动程序(在微软官方网站下的,是sp3版的,这里就不写具体地址了,网上挺多的,但注意版本,我下的是sp3)。下载后发现是EXE 文件,双击安装。默认安装目录:C:Program FilesMicrosoft SQL Server 2000 Driver for JDBC,其中C:Program FilesMicrosoft SQL Server 2000 Driver for JDBClib目录下的三个扩展名为.jar是我们要的驱动。然后配制环境变量: 
在classpath这个环境变量里加入以下语句: 
C:Program FilesMicrosoft SQL Server 2000 Driver for JDBClibmsbase.jar; 
C:Program FilesMicrosoft SQL Server 2000 Driver for JDBClibmssqlserver.jar; 
C:Program FilesMicrosoft SQL Server 2000 Driver for JDBClibmsutil.jar; 
  如果你的机子上正确配制了JDK的环境变量就应该有CLASSPATH这个环境变量,若没有就新建一个。 
(http://download.microsoft.com/download/4/1/d/41d3e9c0-64d1-451e-947b-7a4cba273b2d/setup.exe) 
2.检查1433端口是否打开:NETSTAT(DOS进入C:\WINDOWS\SYSTEM32下) NETSTAT -AN 
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establis 
hing socket. 
 出现上边错误的主要原因是默认的数据库服务器端口 1433没有打开,无法直接连接 。 
  这时你在命令提示行中输入命令:netstat –an 来查看有没有tcp:0.0.0.0:1433,如果没有那就肯定是因为数据库服务器端口 1433端口没开。这时你需要下载SQL_Serve20000的sp4补丁,下载安装后会发现,默认C盘下SQL2KSP4中setup.dat安装(******* 很重要******),1433端口已经打开了,再次执行程序,顺利执行完毕。 
(http://download.microsoft.com/download/9/b/f/9bff6646-2cdb-4069-ada0-548be9cb9338/SQL2000-KB884525-SP4-x86-CHS.EXE) 
3 java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]用户 'xxx' 登录失败。原困是未设置SQL SERVER登录认证模式为混合认证模式,因为SQL SERVER默认安装后认证模式为WINDOWS认证模式,从而导致出错。 
解决方法:启动SQLSERVER企业管理器,选择要进行认证模式设置的服务器。右击该服务器,在弹出菜单中选择属性,SQL SERVER将 
弹出属性对话框在属性对话框中选择安全性选项,在身份验证处选择“SQL Server和Windows”,然后确定。 
4.1、打开Jbuilder,选择Tools-->Configure-->Libraries。 
 .2、然后在左边的列表框下选择New,填入:Name:sql,Location:User Home,然后点击Add, 
  加入目录C:Program FilesMicrosoft SQL Server 2000 JDBClib,确定 。 
  .3、Project-->Prject Properties-->Paths-->Required Libraries-->Add 
  加入刚才添加的User Home/sql确定 
  .4、Enterprise-->Enterprise Setup-->Database Drivers-->Add,加入User Home/sql, 
  添加之后在列表框中显示的是sql.config,确定,重新启动JBuilder 
  .5、Tools-->Database 
  Pilot-->View-->Options-->Drivers-->Add 
  填入 
Driver class:com.microsoft.jdbc.sqlserver.SQLServerDriver 
Simple URL:microsoft:sqlserver://localhost:1433;DatabaseName=mybase 
  确定之后,Tools-->Database Pilot-->New的Driver里选择 
com.microsoft.jdbc.sqlserver.SQLServerDriver 
  在URL里填入: 
microsoft:sqlserver://服务器Ip地址或主机名:1433;DatabaseName=数据库名 
  点击确定,双击或点击+号输入sql数据库的用户名和密码,就完成了JB与sql的连接! 
5.java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC][SQLServer]对象名 ‘xxx' 无效 
根本原因: 
访问数据库的用户有登录权限,但无操作表的权限 
解决办法: 
1. 在[企业控制台]窗口–[树]子窗口–[安全性]子树–[登录]项里将你使用的登陆用户的默认数据库设为你所使用的数据库。 
2. 在[企业控制台]窗口–[树]子窗口–[安全性]子树–[登录]项里新增一个登录用户(在其中选择SQL Server 身份验证、服务器角色和要访问的数据库),以后便可用些新增用户访问你勾选的数据库了。 
大家在用java连接ms sql时可能会这样的问题 
原因是sa用户为系统用户,它虽然能够登陆数据库,但是数据库里边的权限都是dbo的,所以,我们现在为这个数据库重新建立一个用户. 
当然,这个情况只发生在java里边. .net是不会这样的. 
只要新建立一个用户,再在权限那分配权限做好就行了. 
参照(作者:佚名 文章来源:onegreen.net ) 
注: 
部分作者在写到用户登录时,"PASSWORD="就行了,本人在“=”后加空格,有错,不能连接。 
不能在jbuilder中启动项目,因为jbuilder启动web项目时是不会去读你指定的tomcat中的server.xml的,这样的话数据源就不可用了,如果我们不能在jbuilder中启动项目,我门就不能在调试状态下来运行了,这样对我们来写程序就没有太大意义了(当然我们可以在外面启动tomcat,采用远程调试的方法,这样即可以使用数据源,也可以调试修改程序,但这个有点杀鸡用牛刀的意思,不推荐),实际上jbuilder在启动web项目时它会在工程目录下建立一个tomcat文件架,它会去读conf下的server8080.xml文件(8080为你为tomcat设定的端口),所以我们要想在jbuilder中启动数据源,必须要在该配置文件中加上数据源信息),具体的是将 
运行工程,在你的主文件夹下的tomcat\conf有server8080.xml,工程停止会消失,在 
server8080.xml中的一条注释删掉,(否则它仍然会是临时文件,会被覆盖的)在<host>结点中加上 
<Resource name="jdbc/***" auth="Container" 
type="javax.sql.DataSource" password="****" 
driverClassName="com.microsoft.jdbc.sqlserver.SQLServerDriver" 
maxIdle="2" 
maxWait="5000" 
username="sa" 
url="jdbc:microsoft:sqlserver://192.168.*.*:1433;DatabaseName=***" 
maxActive="4"/> 
注意这里<context>结点可用它自身的,不要修改,重启项目,这时你就可以使用数据源了。之所以在jbuilder中启动web项目有点麻烦,是它没有把项目发布到tomcat的webapp下面去,而是把tomcat的一些东西拿过来了(相当于),象eclispe或idea就没有这种问题了。 
以上所说的配置数据源是在jbuilder2006 tomcat5.5.9下实验的.参考http://www.blogjava.net/siliconchip/articles/78214.html 
javax.naming.NameNotFoundException: Name jdbc is not bound in this Context 
[ ctx=new InitialContext(); 
Context envCtx = (Context) ctx.lookup("java:comp/env"); 
ds = (DataSource) ctx.lookup("jdbc/数据库名");] 
改为:[ds=(DataSource)ctx.lookup("java:comp/env/jdbc/数据库名"]异常消失,不知有何不同? 
Context envCtx = (Context) ctx.lookup("java:comp/env");改为 
Context envCtx = (Context) envCtx.lookup("java:comp/env");异常消失.