博客
关于我
JDBC连接sql server数据库及操作数据库的一些问题
阅读量:251 次
发布时间:2019-02-28

本文共 3150 字,大约阅读时间需要 10 分钟。

JDBC连接sql server数据库及操作数据库的一些问题

有关数据库的设置再次就不一一列举,遇到问题可以百度一下。

我在连接数据库时也遇到了许多错误,经过一步步修改,终于成功的完成了对数据库的连接和操作。
下面是比较完整的代码,既包含了连接数据库,也包含了对数据库的操作。话不多说,直接上代码。嘿嘿

import java.sql.*; public class Main {	 public static void main(String [] args)	 {	  String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver";	  String dbURL="jdbc:sqlserver://localhost:1433;DatabaseName=sharing";//这里是写你的数据库名字。	  String userName="sa";//登陆数据库的名称(默认为sa)	  String userPwd="ssssss";//登陆数据库的密码	 try	{	    Class.forName(driverName);	    System.out.println("加载驱动成功!");	}catch(Exception e){	    e.printStackTrace();	    System.out.println("加载驱动失败!");	}	try{	    Connection dbConn=DriverManager.getConnection(dbURL,userName,userPwd);	        System.out.println("连接数据库成功!");	        //产生多个结果集,用于返回多个ResultSet对象。对于下面操作做准备	        Statement stmt = dbConn.createStatement();	        Statement stmt1 = dbConn.createStatement();	        Statement stmt2 = dbConn.createStatement();	        // 创建SQL命令对象	        // 创建表	        System.out.println("开始创建表");	        String query1 = "drop table TABLE1";//先删除表TABLE1,防止表已经存在	        // 创建表SQL语句	        String query = "create table TABLE1(ID NCHAR(4) PRIMARY KEY NOT NULL,NAME NCHAR(10),TEL NCHAR(11))";	        stmt.executeUpdate(query1);// 执行SQL命令对象	        stmt.executeUpdate(query);// 执行SQL命令对象	        System.out.println("表创建成功");	        // 输入数据	        System.out.println("开始插入数据");	        String a1 = "INSERT INTO TABLE1 VALUES('0001','李华','13933209898')";	        // 插入数据SQL语句	        String a2 = "INSERT INTO TABLE1 VALUES('0002','王丽','13698760987')";	        String a3 = "INSERT INTO TABLE1 VALUES('0003','张哥','1786308096')";	        stmt.executeUpdate(a1);// 执行SQL命令对象	        stmt.executeUpdate(a2);	        stmt.executeUpdate(a3);	        System.out.println("插入数据成功");	        // 读取数据	        System.out.println("开始读取数据");	        ResultSet rs = stmt.executeQuery("SELECT * FROM TABLE1");// 返回SQL语句查询结果集(集合)	        // 循环输出每一条记录	        while (rs.next()) {	            // 输出每个字段	            System.out.println(rs.getString("ID") + "\t"	                    + rs.getString("NAME"));	        }	        System.out.println("读取完毕");	        stmt.executeUpdate("update dbo.TABLE1 set NAME='刘丽' where ID='0002'"); // 如果后面不跟where条件,则更新所有列的value字段	        System.out.println("修改数据完毕");	        ResultSet rs1 = stmt1.executeQuery("SELECT * FROM TABLE1");// 返回SQL语句查询结果集(集合)	        // 循环输出每一条记录	        while (rs1.next()) {	            // 输出每个字段	            System.out.println(rs1.getString("ID") + "\t"	                    + rs1.getString("NAME"));	        }	        String sql = "delete from TABLE1 where id='0001'";	        stmt.executeUpdate(sql);	        System.out.println("删除数据完毕");	        ResultSet rs2 = stmt2.executeQuery("SELECT * FROM TABLE1");// 返回SQL语句查询结果集(集合)	        // 循环输出每一条记录	        while (rs2.next()) {	            // 输出每个字段	            System.out.println(rs2.getString("ID") + "\t"	                    + rs2.getString("NAME"));	        	            //dbConn.close();// 关闭数据库连接	        }	}catch(Exception e)	{	    e.printStackTrace();	    System.out.print("SQL Server连接失败!");	    System.exit(0);	}       	}	}

代码运行如下:

无

转载地址:http://gmxp.baihongyu.com/

你可能感兴趣的文章
Mysql group by
查看>>
MySQL I 有福啦,窗口函数大大提高了取数的效率!
查看>>
mysql id自动增长 初始值 Mysql重置auto_increment初始值
查看>>
MySQL in 太多过慢的 3 种解决方案
查看>>
Mysql Innodb 锁机制
查看>>
MySQL InnoDB中意向锁的作用及原理探
查看>>
MySQL InnoDB事务隔离级别与锁机制深入解析
查看>>
Mysql InnoDB存储引擎 —— 数据页
查看>>
Mysql InnoDB存储引擎中的checkpoint技术
查看>>
Mysql InnoDB存储引擎中缓冲池Buffer Pool、Redo Log、Bin Log、Undo Log、Channge Buffer
查看>>
MySQL InnoDB引擎的锁机制详解
查看>>
Mysql INNODB引擎行锁的3种算法 Record Lock Next-Key Lock Grap Lock
查看>>
mysql InnoDB数据存储引擎 的B+树索引原理
查看>>
mysql innodb通过使用mvcc来实现可重复读
查看>>
mysql insert update 同时执行_MySQL进阶三板斧(三)看清“触发器 (Trigger)”的真实面目...
查看>>
mysql interval显示条件值_MySQL INTERVAL关键字可以使用哪些不同的单位值?
查看>>
Mysql join原理
查看>>
mysql order by多个字段排序
查看>>
MySQL Order By实现原理分析和Filesort优化
查看>>
mysql problems
查看>>