jdbc连接mysql数据库url_jdbc连接sql server数据库

jdbc连接mysql数据库url_jdbc连接sql server数据库JDBC连接MYSQL数据库JDBC连接MYSQL数据库JDBC连接MYSQL数据库JDBC连接MYSQL数据库JDBC连接MYSQL数据库

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

JDBC 连接MYSQL数据

Javajdbc结合起来操作数据库可以真正实现“一次编写,处处运行”

MySQL  下载地址:https://dev.mysql.com/downloads/

下载MySQL jdbc驱动:https://dev.mysql.com/downloads/connector/j/

https://dev.mysql.com/downloads/file/?id=470333

Windows平台下载mysql-connector-java-5.1.42.zip,解压缩下载得到的压缩文件,在其中mysql-connector-java-5.1.42-bin.jar包,JDBC通过这个包才能够正确的连接到MySQL数据库。

Java程序连接到MySQL数据库

 

假设在MySQL中有book表,其属性有两个,分别为bookidname,类型都为String

 

连接数据库的一般步骤:

1.调用Class.forName()方法加载相应的数据库驱动程序

Class.forName(com.mysql.jdbc.Driver);

2.定义要连接数据库的地址URL,要注意不同数据库的连接地址不同,地址URL的格式为:jdbc:<子协议>:<子名称>

String mysqlURL = jdbc:mysql://localhost:port/dbName;  //dbname是数据库名

3.使用适当的驱动程序类建立与数据库的连接,调用DriverManager对象的getConnection方法,获得一个Connection对象,它表示一个打开的连接

Connection conn = DriverManager.getConnection(URL,数据库用户名,密码);

4.创建语句对象

使用Connection接口的createStatement方法创建一个statement语句对象,该对象用于传递简单的不带参数的sql语句给数据库管理系统来执行

Statement  stmt = conn.createStatement();

使用Connection 接口prepareStatement方法创建一个PreparedStatement语句对象,该对象用于传递带有一个或多个输入参数的sql语句

PreparedStatement psm = conn.prepareStatement(INSERT INTO book(bookid,name) VALUES(?,?));

使用Connection接口的prepareCall方法创建一个CallableStatement语句对象,该对象用于调用存储过程

CallableStatement csm = conn.prepareCall({call validate(?,?)});  //validate是存储过程名

5.执行语句

Statement接口提供了3个方法执行sql语句,分别是executeQueryexecuteUpdateexecute

executeQuery方法用于执行SELECT查询语句,并返回单个结果集,保存在ResultSet对象中

String sql = SELECT * FROM book;

ResultSet rs = stmt.executeQuery(sql);

executeUpdate方法用于执行SQL DML语句,即INSERTUPDATEDELETE语句,此时返回sql语句执行时操作的数据表中受到影响的行数,返回值是一个整数。executeUpdate方法还可用于执行sql DDL语句,如CREATE TABLE, DROP TABLE等。此时返回值为0.

String  sql = DELETE FROM book WHERE bookid=+ 12 ;

Int n = stmt.executeUpdate(sql);

Execute方法既可以执行查询语句,也可以执行更新语句,常用于动态处理类型未知的SQL语句

6.对返回的结果集ResultSet对象进行处理

resultSet对象包含了sql语句的执行结果,它使用一组get方法实现对结果行中每列数据的访问,使用new访问用于移动到ResultSet下一行,使其成为当前行。

String sql = “SELECT * FROM book”;

ResultSet rs = stmt.executeQuery(sql);

//对结果集进行迭代

While(rs.next()) {

bookid = rs.getString(1);

name = rs.getString(2);

System.out.println(bookid+”,”+name);

}

7.关闭连接。

关闭所有的jdbc对象,释放资源,关闭结果集,关闭语句对象和连接对象

 

String dbDriver = “com.mysql.jdbc.Driver”;   //声明MySQL数据库驱动

String url = “jdbc:mysql://host:port/dbName”; //声明数据源

Connection conn = null;     //声明与数据库的连接

Statement stmt = null;      //声明执行sql语句

ResultSet rs = null;        //声明结果集

 

Class.forName(dbDriver);   //加载数据库驱动

conn = DriverManager.getConnection(url, “数据库用户名”,”密码”);  //连接数据库

stmt = conn.createStatement();     //创建statement对象

rs = stmt.executeQuery(“SELECT * FROM tablename”);     //执行查询语句

while(rs.next()){

……

}

//关闭连接

rs.close();

stmt.close();

conn.close();

JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序

例子:

package fz.hunter;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;

/**
 * JDBC连接MYSQL数据库
 * @author Administrator
 *
 */
public class JDBCMysql {

    public static void main(String args){

        String className = “com.mysql.jdbc.Driver”;
        String url = “jdbc:mysql://localhost:3306/uesr”;
        String username = “root”;
        String password = “root”;
        
        try {

            //加载MySQL的驱动程序
            Class.forName(className);
            //调用DriverManager对象的getConnection方法来获得Connection对象,成功连接数据库
            Connection conn = DriverManager.getConnection(url, username, password);
            //sql语句
            String sql = “select bookid,name from book”;
            //使用Connection接口的createStatement方法来创建Statement对象,该对象用来传递简单不带参数的sql给数据库系统来执行
            Statement stat =conn.createStatement();
            //prepareStatement方法创建PreparedStatement对象,用于传送一个或多个输入参数的sql语句
            PreparedStatement statement = conn.prepareStatement(“在此处填写SQL语句”);
            //执行sql语句,返回单个结果集,保存在ResultSet 对象中
            ResultSet rs = stat.executeQuery(sql);
            //对结果集进行迭代
            while(rs.next()){

                //bookid = rs.getString(1);
                //name = rs.getString(2);
                System.out.println(“成功完成数据的输出”);
            }
            //关闭连接
            rs.close();
            stat.close();
            conn.close();

            }catch(ClassNotFoundException e){

                System.out.println(“sorry ,can’t find the Driver!”);
                e.printStackTrace();
            }
            catch(SQLException e){

                System.out.println(“数据库连接失败”);
                e.printStackTrace();

           } catch (Exception e) {

            e.printStackTrace();
          }
    }
}

注意记得给项目添加jdbc驱动jar包

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195649.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 软件测试的基本理论知识_软件测试基础知识整理

    软件测试的基本理论知识_软件测试基础知识整理01软件研发流程1.软件产品软件产品是指向用户提供的计算机软件、信息系统或设备中嵌入的软件或在提供计算机信息系统集成、应用服务等技术服务时提供的计算机软件。2.软件工程软件工程,英文名SoftwareEngineering,是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。“软件工程是开发、运行、维护和修复软件的系统方法。”这个定义相当概括,它主要强调软件工程是系统方法而不是某种…

    2025年7月30日
    2
  • mysql增删改查操作语句_学习笔记-mysql增删改查操作语句

    mysql增删改查操作语句_学习笔记-mysql增删改查操作语句1 mysql 增删改查操作语句 1 如果想在一个已经建好的表中添加一列 可以用以下代码 altertablet1 20 notnull 2 这条语句会向已有的表 t1 中加入一列 这一列在表的最后一列位置 如果我们希望添加在指定的一列 可以用 altertablet1 20 notnull

    2025年11月15日
    4
  • MIPI协议简介

    MIPI协议简介MIPI协议简介 介绍 MIPI联盟定义了一套接口标准,把移动设备内部的接口如摄像头、显示屏、基带、射频接口等标准化,从而增加设计灵活性,同时降低成本、设计复杂度、功耗和EMI。未来的产品都将朝着移动的方向发展,例如智能手机、数码相机、摄像机、平板电脑、媒体播放器、游戏机等,这些产品需要能执行多任务,包括处理多个不同的传感器如麦克风、图像传感器、磁罗盘、三轴加速度计和精细的触摸屏…

    2022年4月28日
    60
  • 跨域是什么?[通俗易懂]

    跨域是什么?[通俗易懂]跨域指的是不同服务器之间不能相互访问各自的资源或者数据,这出于一个策略——“同源策略”,那么为什么要这么设计呢,这是因为,一些网站的数据可能涉及的用户的隐私,因此不属于当前服务器的网站时不能访问它的,就比如,我们登陆淘宝后,由不小心点进了其他的一个钓鱼网站,如果说不这么设置,那么钓鱼网站就可以获取到你的登陆账号和密码,进而可以达到使用你的账户购买东西的目的,因此跨域是出于安全的考虑而诞生的。实…

    2022年6月12日
    25
  • 作文《读懂》(我读懂了什么写一篇作文)

    0背景1.手机USB接口通信特点-1.1使用方便-1.2通用性强-1.3速度快-1.4可采用总线供电2.手机USB接口通信原理-2.1常见手机USB接口-2.2通信过程-2.3体系架构2.4软件层次3.手机USB接口与外设通信方案-3.1USB(手机)USB(外设)-3.1.1USBHost简述

    2022年4月10日
    38
  • 敏捷开发和瀑布式开发模式有何区别(瀑布,敏捷 devops)

    软件开发模式对比(瀑布、迭代、螺旋、敏捷)1、瀑布模型是由W.W.Royce在1970年最初提出的软件开发模型, 瀑布式开发是一种老旧的计算机软件开发方法。瀑布模型式是最典型的预见性的方法,严格遵循预先计划的需求分析、设计、编码、集成、测试、维护的步骤顺序进行。步骤成果作为衡量进度的方法,例如需求规格,设计文档,测试计划和代码审阅等等。 瀑布式的主要的问题是它的严格分级导致

    2022年4月14日
    121

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号