赞
踩
1.下载java8Java 存档下载 — Java SE 8 | Oracle 中国
2.下载IntelliJ IDEA https://www.jetbrains.com/idea/download/#section=windows
3.下载JDBC驱动程序 https://www.microsoft.com/zh-CN/download/details.aspx?id=11774
(直接下载这个:https://wwz.lanzouw.com/iNiNU05ipyud)
4.下载telnet服务端(不需要好像也可以用) http://www.goodtechsys.com/downloadstelnetnt2000.asp
(直接下载这个:https://wwz.lanzouw.com/iKabZ05iq2ah)
打开SQLserver2019配置管理器
右键启用三个协议
右键修改TCP/IP的属性
IP1和IP10的地址修改为127.0.0.1,端口号默认为1433
右键服务器,点击属性,随后选择安全性,将windows身份验证改为sql sever和windows身份验证模式。点击确定即可。
随后依次展开 服务器->安全性->登录名->sa , sa是默认的用户,设置密码。(记住这个密码一会儿要用到)
输入密码后,再点击左边的 状态,然后将权限设置为 授予和启用,点击确定退出即可。
开启Telnet客户端
开启服务,右键此电脑–管理–服务和应用程序–服务
重启SQLserver服务
打开cmd输入telnet 127.0.0.1 1433(注意防火墙问题引起的连接失败),连接成功(此步不成功会影响到后面JAVA连接数据库)
添加库文件
测试连接
测试代码(注意修改自己的数据库名称和密码)
import java.sql.Connection; import java.sql.DriverManager; public class HelloWorld { public static void main(String[] args) { String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=Student";//数据库名称 String userName = "sa"; //数据库账号 String userPwd = "123"; //数据库密码 try { Class.forName(driverName); Connection dbConn = DriverManager.getConnection(dbURL, userName, userPwd); System.out.println("数据库连接成功!"); } catch (Exception e) { e.printStackTrace(); System.out.print("数据库连接失败!"); } } }
1、在Student数据库创建Stu数据表,按照下图的列名,数据可自行填充,要求至少有两个专业的人数大于等于3:
如果学生的专业含“计算机”或者“通信”显示热门,若含”化学“或者”生物“,显示冷门,否则显示一般。用SQL脚本创建存储过程查询学生人数大于x的热门专业的专业名称,人数,专业热度,当查到符合条件的结果后,返回0,若查不到结果,返回-1. 并执行存储过程查询x为2的结果。
创建数据库
use Student create table Stu ( 学号 char(20) not null, 专业 char(20) not null, 性别 char(2) not null, 年龄 int not null, 姓 char(20) not null, 名 char(20) not null ) insert into Stu values ('10001','数媒','男','30','梅','西'), ('10002','计算机科学与技术','男','18','费','德勒'), ('10003','计算机软件','男','21','勒','布朗.詹姆斯'), ('10004','通信工程','男','19','库','里'), ('10005','会计学','男','22','詹','姆斯.哈登'), ('10006','化学','男','19','邓','肯'), ('10007','生物','男','26','丘','光国'), ('10008','通信工程','男','29','蒋','辰博'), ('10009','化学','男','20','马','思'), ('10010','化学','女','25','殷','栋之'), ('10011','数媒','女','24','丁','广'), ('10012','通信工程','女','22','王','一'), ('10013','数媒','男','24','张','四'), ('10014','通信工程','男','22','张','三'), ('10015','计算机软件','男','22','王','二'), ('10016','计算机软件','女','23','李','一'), ('10017','计算机科学与技术','男','22','张','二')
创建存储过程
use Student go create proc message @x int as begin declare @num int select @num = count(*) from Stu group by 专业 having count(*)>@x if (@num>=1) begin select case when 专业 like '%计算机%' or 专业 like '%通信%' then '热门'when 专业 like '%化学%' or 专业 like '%生物%' then '冷门'else '一般'end as '专业热度',count(*) as 人数,专业 from Stu group by 专业 having count(*)>@x return 0 end else return -1 end
执行存储过程
declare @count int
exec @count=message @x=2 --修改这个参数就行
select @count as 返回结果
当x=2时
当x=4时
2、用Java或VC或Android或Hadoop或你会用的任何编程工具,写代码。要求:调用SQL语句访问SQL Server中已经建好的数据库Student,完成第1题中查询询学生人数大于2的热门专业的专业名称,人数,专业热度
1)提交代码和结果截图。
2)解释你所用的工具中每一条对数据库操作的语句的工作过程。
3)并记录在配置过程中遇到的错误以及解决的过程。供参考:Java操作的步骤如下:
步骤1、安装JDK;
步骤2、下载JDBC;
步骤3、在JAVA中程序中实现与数据库的连接;
步骤4、执行查询的SQL语句;
步骤5、显示查询结果。
import java.sql.*; public class HelloWorld { public static void main(String[] args) { String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; String dbURL = "jdbc:sqlserver://localhost:1433;DatabaseName=Student"; String userName = "sa"; String userPwd = "123"; Connection con; Statement stmt; ResultSet rs; String sqlStr = "select case when 专业 like '%计算机%' or 专业 like '%通信%' then '热门'when 专业 like '%化学%' or 专业 like '%生物%' then '冷门'else '一般'end as '专业热度',count(*) as '人数',专业 from Stu group by 专业 having count(*)>2"; try { Class.forName(driverName); System.out.println("类实例化成功!"); con = DriverManager.getConnection(dbURL, userName, userPwd); System.out.println("创建连接对象成功!"); stmt = con.createStatement(); System.out.println("创建Statement成功!"); rs = stmt.executeQuery(sqlStr); System.out.println("操作数据表成功!"); System.out.println("___________________________"); System.out.println("专业热度 人数 专业"); while (rs.next()) { System.out.print(rs.getString("专业热度").trim() + " "); System.out.print(rs.getString("人数").trim() + " "); System.out.print(rs.getString("专业").trim()); System.out.println("\r"); } rs.close(); stmt.close(); con.close(); } catch (Exception e) { e.printStackTrace(); } } }
主要操作过程:
1.加载驱动程序:Class.forName(driverName);
2.获得数据库连接 :Connection con = DriverManager.getConnection(dbURL, userName, userPwd);
3.创建Statement : Statement stmt = con.createStatement();
4.调用SQL语句:ResultSet rs = stmt.executeQuery(sqlStr);
5.对返回的结果集进行后续的操作
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。