时间:2021-07-01 10:21:17 帮助过:23人阅读
1 import java.sql.*;
2 public class Conn{
3 public static void main(String[] args) {
4 String JDriver="com.microsoft.sqlserver.jdbc.SQLServerDriver";
5 //SQL数据库引擎
6 String connectDB="jdbc:sqlserver://ABYSS-PC\\MYABYSS:64160;DatabaseName=master";
7 //数据源 !!!!注意若出现加载或者连接数据库失败一般是这里出现问题
8 // 我将在下面详述
9 try {
10 //加载数据库引擎,返回给定字符串名的类
11 Class.forName(JDriver);
12 }catch(ClassNotFoundException e)
13 {
14 //e.printStackTrace();
15 System.out.println("加载数据库引擎失败");
16 System.exit(0);
17 }
18 System.out.println("数据库驱动成功");
19
20 try {
21 String user="sa";
22 //这里只要注意用户名密码不要写错即可
23 String password="*liluotinghua33*";
24 Connection con=DriverManager.getConnection(connectDB,user,password);
25 //连接数据库对象
26 System.out.println("连接数据库成功");
27 Statement stmt=con.createStatement();
28 //创建SQL命令对象
29
30 //创建表
31 System.out.println("开始创建表");
32 //创建表SQL语句
33 String query= "create table TABLE1(ID
34 NCHAR(2),NAME NCHAR(10))";
35 stmt.executeUpdate(query);//执行SQL命令对象
36 System.out.println("表创建成功");
37
38 //输入数据
39 System.out.println("开始插入数据");
40 String a1="INSERT INTO TABLE1 VALUES(‘1‘,‘旭哥‘)";
41 //插入数据SQL语句
42 String a2="INSERT INTO TABLE1 VALUES(‘2‘,‘伟哥‘)";
43 String a3="INSERT INTO TABLE1 VALUES(‘3‘,‘张哥‘)";
44 stmt.executeUpdate(a1);//执行SQL命令对象
45 stmt.executeUpdate(a2);
46 stmt.executeUpdate(a3);
47 System.out.println("插入数据成功");
48
49 //读取数据
50 System.out.println("开始读取数据");
51 ResultSet rs=stmt.executeQuery("SELECT * FROM
52 TABLE1");//返回SQL语句查询结果集(集合)
53 //循环输出每一条记录
54 while(rs.next()){
55 //输出每个字段
56 System.out.println(rs.getString("ID")+"\t"+rs.getString("NAME"));
57 }
58 System.out.println("读取完毕");
59
60 //关闭连接
61 stmt.close();//关闭命令对象连接
62 con.close();//关闭数据库连接
63 }catch(SQLException e){
64 e.printStackTrace();
65 System.out.print(e.getErrorCode());
66 //System.out.println("数据库连接错误");
67 System.exit(0);
68 }
69 }
70 }
String connectDB="jdbc:sqlserver://ABYSS-PC\\MYABYSS:64160;DatabaseName=master";
先讲解一下这段代码。
其中ABYSS-PC\\MYABYSS 表示服务器名字,两个反斜杠表示转义。什么是服务器的名字呢,如下图:

64160 表示端口号,一般情况下默认的是1433,特殊情况下如我的便是随机分配的。
DatabaseName=master; master表示数据源。如图。
在运行还出现一个问题就是,用windows身份验证可以登录数据库,但是使用SQL Server身份验证却提示失败。
一般出现错误会报告错误代码,我这里报告的错误代码是18456 。你可以用谷歌搜索一下: SQL Server 2008 错误代码 18456.
这里我简单的提供一下解决办法。
首先windows帐号是可以登录的。
JDBC连接SQL Server
标签:value auth 目录 cti img ros 插入 双击 java