JDBC连接SQL Server2008 完成增加、删除、查询、修改等基本信息基本格式及示例代码

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介: 这篇文章提供了使用JDBC连接SQL Server 2008数据库进行增加、删除、查询和修改操作的基本步骤和示例代码。

JDBC连接SQL Server2008 完成增加、删除、查询、修改等基本信息基本格式及示例代码

连接数据库的步骤:
1、注册驱动 (只做一次)
2、建立连接
3、创建执行SQL的语句、执行语句
4、处理执行结果
5、释放资源

1、建立连接的方法:

Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver”);
//加载驱动
String url=“jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test”;
//test为你的数据库的名称
String user=“用户名”;
String password=“密码”;

Connection conn=DriverManager.getConnection(url,user,password);
//连接数据库对象
Statement stmt=conn.createStatement();
//创建SQL命令对象
String query=“”;//创建表SQL语句
stmt.executeUpdate(query);//执行SQL命令对象
//读取数据
ResultSet rs=stmt.executeQuery(“SELECT * FROM “表名””);
//循环输出每一条记录 rs最初指向第一条记录的前面
while(rs.next){

}
最后关闭连接
stmt.close();
con.close();
数据库连接(Connection)是非常稀有的资源,用完后必须马上释放,
如果Connection不能及时正确的关闭将导致系统宕机。
Connection的使用原则是尽量晚创建,尽量早的释放。

2、插入数据:

import java.sql.*;
public class InsertDemo {
    public static void main(String[] args) throws SQLException {
        Connection conn = null;
        Statement stmt = null;
        String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";
        String connectDB="jdbc:sqlserver://localhost:1433;DatabaseName=test";
        String user="zheng";
        String pwd="123";
        try {
            // 动态导入数据库的驱动 
            Class.forName(JDriver);
            // 获取数据库链接 
            conn = DriverManager.getConnection(connectDB,user,pwd);
            // 创造SQL语句 
            String sql = "INSERT INTO JDBCTestTable ( user_name, user_password ) VALUES ( 'balabala', '123456' )";
            // 执行SQL语句 
            stmt = conn.createStatement();
            stmt.executeUpdate(sql);
            System.out.println("插入数据成功");
        } catch (Exception e) {    
            e.printStackTrace();
            stmt.close();
            conn.close();
        }
    }
}

3、修改数据:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

public class UpdateDemo {

    public static void main(String[] args) throws SQLException {
        Connection conn = null;
        Statement stmt = null;
        try {
            // 动态导入数据库的驱动
            Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
            // 获取数据库链接
            conn = DriverManager.getConnection(
                    "jdbc:sqlserver://localhost:1433;DatabaseName=test",
                    "zheng", "123");
            // 创造SQL语句
            String sql = "UPDATE TestTable SET user_password = '123' WHERE user_name = 'ddd'";
            // 执行SQL语句
            stmt = conn.createStatement();
            stmt.executeUpdate(sql);
            System.out.println("更新数据成功");
        } catch (Exception e) {
            e.printStackTrace();
            stmt.close();
            conn.close();
        }
    }
}

4、删除数据:

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

public class DeleteDemo {

    public static void main(String[] args){
        String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";
        String url="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=test";
        String user="zheng";
        String password="123";
        try{
            Class.forName(JDriver);// 动态导入数据库的驱动
            Connection conn=DriverManager.getConnection(url, user, password);// 获取数据库链接 
            String query="DELETE FROM JDBCTestTable WHERE user_name='Eric'";// 创造SQL语句 
            Statement stmt=conn.createStatement();// 执行SQL语句
            stmt.executeUpdate(query);
            System.out.println("删除数据成功");
            stmt.close();
            conn.close();
        }catch(Exception e){
            e.printStackTrace();
        }
    }
}

5、查询数据:

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

public class QueryDemo {

    public static void main(String[] args){
        String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";
        String url="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=test";
        String user="zheng";
        String password="123";
        try{
            Class.forName(JDriver);// 动态导入数据库的驱动
            Connection conn=DriverManager.getConnection(url, user, password);// 获取数据库链接 
            String query="SELECT * FROM JDBCTestTable";// 创造SQL语句 
            Statement stmt=conn.createStatement();// 执行SQL语句
            ResultSet rs=stmt.executeQuery(query);
            while(rs.next()){
                System.out.println(rs.getString("user_name")+":"+rs.getString(2));
                //密码字段的编号从1开始,密码排第二位
            }
            System.out.println("查询数据成功");
            rs.close();
            stmt.close();
            conn.close();
        }catch(Exception e){
            e.printStackTrace();
        }
    }
}
相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情: https://www.aliyun.com/product/rds/sqlserver
相关文章
|
4天前
|
SQL 运维 监控
SQL查询太慢?实战讲解YashanDB SQL调优思路
本文是Meetup第十期“调优实战专场”的第二篇技术文章,上一篇《高效查询秘诀,解码YashanDB优化器分组查询优化手段》中,我们揭秘了YashanDB分组查询优化秘诀,本文将通过一个案例,助你快速上手YashanDB慢日志功能,精准定位“慢SQL”后进行优化。
|
1天前
|
SQL 大数据 数据挖掘
玩转大数据:从零开始掌握SQL查询基础
玩转大数据:从零开始掌握SQL查询基础
65 35
|
21天前
|
SQL 关系型数据库 分布式数据库
利用 PolarDB PG 版向量化引擎,加速复杂 SQL 查询!完成任务领发财新年抱枕!
利用 PolarDB PG 版向量化引擎,加速复杂 SQL 查询!完成任务领发财新年抱枕!
|
12天前
|
SQL 关系型数据库 OLAP
云原生数据仓库AnalyticDB PostgreSQL同一个SQL可以实现向量索引、全文索引GIN、普通索引BTREE混合查询,简化业务实现逻辑、提升查询性能
本文档介绍了如何在AnalyticDB for PostgreSQL中创建表、向量索引及混合检索的实现步骤。主要内容包括:创建`articles`表并设置向量存储格式,创建ANN向量索引,为表增加`username`和`time`列,建立BTREE索引和GIN全文检索索引,并展示了查询结果。参考文档提供了详细的SQL语句和配置说明。
29 1
|
12天前
|
Java 数据库连接 数据库
【YashanDB 知识库】jdbc 查询 st_geometry 类型的数据时抛出 YAS-00101 cannot allocate 0 bytes for anlHeapMalloc 异常
**简介:** 客户在使用 YashanDB JDBC 驱动查询含 st_geometry 列的数据时,遇到 YAS-00101 错误,提示无法分配内存。该问题影响所有版本的 YashanDB,导致业务中断。原因是用户缺少对 st_geometry 类型的 execute 权限。解决方法是为用户赋权:`grant execute any type to <username>;` 以恢复正常运行。
|
1天前
|
SQL 索引
【YashanDB知识库】字段加上索引后,SQL查询不到结果
【YashanDB知识库】字段加上索引后,SQL查询不到结果
|
13天前
|
Java 数据库连接 数据库
【YashanDB 知识库】jdbc 查询 st_geometry 类型的数据时抛出 YAS-00101 cannot allocate 0 bytes for anlHeapMalloc 异常
**问题简介:** 客户使用 YashanDB JDBC 驱动查询含 st_geometry 列的数据时,出现 YAS-00101 错误,提示无法分配 0 字节内存。该问题影响所有 YashanDB 版本,导致业务中断。原因是数据库用户缺少 st_geometry 类型的 execute 权限。解决方法是为用户赋权:`grant execute any type to <username>;`。
|
2月前
|
SQL NoSQL Java
Java使用sql查询mongodb
通过MongoDB Atlas Data Lake或Apache Drill,可以在Java中使用SQL语法查询MongoDB数据。这两种方法都需要适当的配置和依赖库的支持。希望本文提供的示例和说明能够帮助开发者实现这一目标。
61 17
|
2月前
|
SQL Oracle 关系型数据库
如何在 Oracle 中配置和使用 SQL Profiles 来优化查询性能?
在 Oracle 数据库中,SQL Profiles 是优化查询性能的工具,通过提供额外统计信息帮助生成更有效的执行计划。配置和使用步骤包括:1. 启用自动 SQL 调优;2. 手动创建 SQL Profile,涉及收集、执行调优任务、查看报告及应用建议;3. 验证效果;4. 使用 `DBA_SQL_PROFILES` 视图管理 Profile。
|
20天前
|
SQL 数据可视化 IDE
SQL做数据分析的困境,查询语言无法回答的真相
SQL 在简单数据分析任务中表现良好,但面对复杂需求时显得力不从心。例如,统计新用户第二天的留存率或连续活跃用户的计算,SQL 需要嵌套子查询和复杂关联,代码冗长难懂。Python 虽更灵活,但仍需变通思路,复杂度较高。相比之下,SPL(Structured Process Language)语法简洁、支持有序计算和分组子集保留,具备强大的交互性和调试功能,适合处理复杂的深度数据分析任务。SPL 已开源免费,是数据分析师的更好选择。

热门文章

最新文章