原创


在Eclipse中连接SQL分为如下几个步骤:

1.加载驱动程序

2.创建连接对象

3.创建执行SQL语句的对象

4.执行SQL语句

5.关闭new出来的对象

1.加载驱动程序(以SQL为例)

不同的数据库(SQL、MySQL等)的不同版本、不同JDK可能对应不同的驱动包(以jar结尾),到网上找找即可。

下载好驱动包后将完整路径设置到classpath环境变量中,如用开发工具开发程序,还需在开发环境中设置路径。

将驱动类库文件拷贝到D:\Program Files\Java\jdk1.7.0\jre\lib\ext目录下。(这个路径根据JDK的版本和安装路径确定,下同)

将驱动类库文件拷贝到D:\Program Files\Java\jre7\lib\ext目录下( 最好是,只要是jre文件夹,都复制一个驱动包到jre7\lib\ext里去!!)

设置SQLEXPRESS服务器:
    a.打开SQL Server Configuration Manager
-> SQLEXPRESS的协议 -> TCP/IP

b.右键单击启动TCP/IP

c.双击进入属性,把IP地址中的IP all中的TCP端口设置为1433

d.重新启动SQL
Server 2005服务中的SQLEXPRESS服务器

 e.关闭SQL Server
Configuration Manager

注:可以在命令行窗口中用如下命令查看1433端口是否打开:

Telnet localhost 1433

若执行命令后,窗口左上角有光标闪烁,无其它提示信息,则说明端口已打开。

完成以上步骤后后面靠Java编程即可。

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");    //加载驱动程序

加载驱动程序用到类Class中的方法forName(),里面的字符串指定的位置如下图:

2.创建连接对象

Connection conn=DriverManager.getConnection(dbURL,userName,pwd);

主要用到Connection类创建连接对象conn,用DriverManager的getConnection方法创建引用。

dbURL:String dbURL="jdbc:sqlserver://localhost:1433;DatabaseName=数据库名称";(注意,DatabaseName是数据库名称,不是你登陆SQL时的用户名sa或者其他)

userName:String userName="sa";(这个才是登录时的用户名)

pwd:String pwd="dearcwm*0.";(登陆时的密码)

3.创建执行SQL语句的对象

String select_Statement="select * from student";
PreparedStatement stmp=conn.prepareStatement(select_Statement);

用类PreparedStatement创建执行SQL语句的对象stmp,这里可以看到conn用来创建此对象,所以连接SQL要按步骤顺序来。

4.执行SQL语句

ResultSet rs=stmp.executeQuery();    //执行SQL语句返回结果集

用stmp的方法executeQuery执行上面写的SQL语句,并用ResultSet的实例接受返回的结果集(这里的SQL执行查询功能,其他功能用不同的类型数据接收)

5.关闭new出来的对象

while(rs.next()) {
System.out.println(rs.getString("Sno"));
System.out.println(rs.getString("Sname"));
System.out.println(rs.getString("Ssex"));
System.out.println(rs.getInt("Sage"));
System.out.println(rs.getString("Sdept"));
}
rs.close();
stmp.close();
conn.close();

用rs的next方法可以使其指向下一行数据,方法get字段数据类型输出字段值

查看数据库表中各字段的数据类型的查询语句为:

SELECT  name AS column_name ,
TYPE_NAME(system_type_id) AS column_type ,
max_length ,
is_nullable
FROM sys.columns
WHERE object_id = OBJECT_ID(N'customerbase') --customerbase 为表名

完整代码:

import java.sql.*;

public class ConnectionDB_test {

    public static void main(String[] args) {
String dbURL="jdbc:sqlserver://localhost:1433;DatabaseName=DB OF CWM";
String userName="sa";
String pwd="dearcwm*0.";
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); //加载驱动程序
Connection conn=DriverManager.getConnection(dbURL,userName,pwd);
System.out.println("连接数据库成功!");
String select_Statement="select * from student";
PreparedStatement stmp=conn.prepareStatement(select_Statement);
ResultSet rs=stmp.executeQuery(); //执行SQL语句返回结果集
while(rs.next()) {
System.out.println(rs.getString("Sno"));
System.out.println(rs.getString("Sname"));
System.out.println(rs.getString("Ssex"));
System.out.println(rs.getInt("Sage"));
System.out.println(rs.getString("Sdept"));
}
rs.close();
stmp.close();
conn.close(); }catch(Exception e) {
e.printStackTrace();
} } }

09:26:34

2018-09-29

在Eclipse中连接SQL的更多相关文章

  1. Eclipse中连接Sql Sever2008 -----转自Yogurshine

    Eclipse中连接Sql Sever2008 -----转自Yogurshine 一 SQl Sever服务器配置 1我之前已经安装好SQL Sever 2008R2.(注意:安装一遍未成功时,一定 ...

  2. oracle:ORA-00911: 无效字符 问题和解决---Eclipse中的SQL语句不能加分号

    eclipse中原sql: 异常: 原因:Eclipse中的SQL语句不能加分号 去掉分号,正常执行,插入成功. 这里把id设为了主键,具有唯一性,重复插入同一id执行插入失败,ORA-00001号错 ...

  3. 在eclipse中执行sql的编码问题

    症状-分析: 刚才在eclipse中执行sql文件,发现数据进入数据库的时候总是乱码 后来查看MySQL的编码设置,全是UTF8,没问题,sql文件本身也是UTF8的编码 并且,使用MySQL的CMD ...

  4. Eclipse中执行sql脚本文件

    转自:https://blog.csdn.net/weixin_37778823/article/details/79614281 在Eclipse中导入或新建sql脚本文件(.sql文件),选择指定 ...

  5. ADO.NET中连接SQL Sever

    1.在配置文件中定义数据库连接信息. 在配置文件*.config中添加这段代码在<configuration>与</configuration>之间: <connecti ...

  6. 在unity3d中连接sql server

    虽然在Unity3D中能够通过PlayerPrefs类来保存和读取数据,但是一旦数据量增大,仅仅通过代码的方式存取数据,这样的工作量是非常大的.那么如何通过使用Sql Server数据库来存取数据呢? ...

  7. 在eclipse中执行sql

    只要你配置好了你的database(在Data Source Explorer中,可以通过window->show view打开) 写好你的sql script,然后配置好profile 右键, ...

  8. 如何在 Eclipse 中连接源码

    1:首先在window 中 打开首选项(preferences) 找到如下java -- 已安装的JRE

  9. 一个WebForm中连接SQL Server的例子

    .cs using System; using System.Collections; using System.ComponentModel; using System.Data; using Sy ...

随机推荐

  1. easyui的datagird动态设置当前页数

    if (ishas) { $("#tg").datagrid("options").pageNumber = 1; $('#tg').datagrid('rel ...

  2. 1121 Damn Single

    题意: 给出n对情侣,然后给出聚会上的m个人,问这m个人中有几个人事落单的. 思路: 首先,开一个数组couple[]存储情侣间的映射关系:然后,用exist[]标记聚会上出现过的人:最后遍历0~N, ...

  3. 文件操作方法大全以及文件打开的其他一些模式sys.stdout.write()就是标准输出到你当前的屏幕 sys.stdout.flush()把内存立即显示到您当前的屏幕

    read()会让你读取的光标变成最后.tell()把你现在文件的句柄的指针打印出来.文件的开头指针位置是0f.read(5)只读取5个字符串个数如果你想把光标移回去,移动到首位f.seek(0)f.d ...

  4. MMU段式映射(VA -> PA)过程分析

    MMU:内存管理单元. CPU寻址的方式: 未使用MMU:CPU发出地址(PA) 直接内存寻址(SDRAM or DDRx). 使用MMU  :CPU发出地址(VA) MMU接收CPU发来的地址 经过 ...

  5. python's fifteenth day for me 递归函数

    递归... def age(n): if n == 1: return 18 else: return age(n-1)+2 # 反复调用函数age() print(age(4)) l = [1,3, ...

  6. 分布式爬虫搭建系列 之三---scrapy框架初用

    第一,scrapy框架的安装 通过命令提示符进行安装(如果没有安装的话) pip install Scrapy 如果需要卸载的话使用命令为: pip uninstall Scrapy 第二,scrap ...

  7. python:for语句的使用方法

    for循环的语法格式: for i in range(n):#从数据类型中拿一个值赋值给i print(i)#打印i 例如: #for for i in range (1,6,2):#从一开始到六之前 ...

  8. C++数组与指针回顾总结

    //数组名是常量指针, //a+1 是相对数组起始地址偏移了sizeof(int)字节 //&a+1 是相对于数组起始地址偏移了sizeof(a)字节 , , , }; cout <&l ...

  9. 从cocos2d-x-2.x到cocos2d-x-3.x: lua项目配置

    cocos2dx-x3.0的正式版出来也有一段时间了,现在最新的版本是到了3.2alpha,和2.x系列相比,能够找到的相关资料除了官网上的wiki,其他的也不见得多,遇到的一些和2.x的差异和问题在 ...

  10. java基础之多线程一:概述

    概述: 进程有多条执行路径, 合成为: 多线程. 进程和线程的描述: 进程: 可执行程序(文件), 例如: .exe//可以把进程理解为一辆车. 一台电脑上可以有多个进程, 这些进程之间的数据是相互隔 ...