JDBC链接SQLsever数据库时遇到的问题以及解决办法 &&关键字‘user’附近有语法错误

eclipse使用JDBC 链接sql SEVER数据库时用到的代码


    package sqlsqverceshi;
    import java.sql.*;

public class ceshi {
public static void main(String[] args) {
    PreparedStatement ps = null;
    Connection ct = null;
    ResultSet rs = null;

    String url = "jdbc:sqlserver://localhost:1500;databaseName=ceshi";
    //1500是tcp/ip 协议的端口号,默认是1433,我这里更具我实际情况做了改动
    //databaseName=ceshi这里的测试是数据库的名字,我这里用来测试的数据库是ceshi,里面有一张表‘user’,有两列数据ID&password,这个在测试插入数据的时候会用到
    String user="sa";  //超级管理员
    String password="520628";  //密码

    try {
        //1.加载驱动
        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
        System.out.println("加载驱动成功!");
    }catch(Exception e) {
        e.printStackTrace();
        System.out.println("加载驱动失败!");
    }
    try {  
        //2.连接
        ct=DriverManager.getConnection( url,user,password);
        System.out.println("连接数据库成功!");
    }catch(Exception e) {
        e.printStackTrace();
        System.out.println("连接数据库失败!");
    }

    /* 尝试添加数据到数据库中  */
    try {
        //在连接对象的基础上创建会话对象
        Statement stmt = ct.createStatement();
        //写插入数据的SQL语句
        String sql = "insert into user values('2899724845','520628')";
        //执行插入数据的SQL语句,返回受影响的行数
        int rs1 = stmt.executeUpdate(sql);
        //关闭会话对象
        stmt.close();
        //关闭连接对象
        ct.close();
        /*
         * 如果受影响的行数大于零,则插入数据成功,
         * 返回ture;否则插入数据失败,返回false
         */
        if(rs1>0) {
            System.out.println("插入成功");
        }
        else {
            System.out.println("插入失败");
        }
    }catch(SQLException ex) {
        ex.printStackTrace();
        System.out.println("失败");
        }
    }
}

在连接数据库时报错
JDBC链接SQLsever数据库时遇到的问题以及解决办法 &&关键字‘user’附近有语法错误_第1张图片
这里报错的原因是在sql sever中user是关键字,在插入数据指令中关键字需要用[user]包起来
错误的代码块为

//写插入数据的SQL语句
        String sql = "insert into user values('2899724845','520628')";
        //执行插入数据的SQL语句,返回受影响的行数

修改后的代码块为

 //写插入数据的SQL语句
        String sql = "insert into [user] values('2899724845','520628')";
        //执行插入数据的SQL语句,返回受影响的行数

再次测试,成功
JDBC链接SQLsever数据库时遇到的问题以及解决办法 &&关键字‘user’附近有语法错误_第2张图片

你可能感兴趣的:(JDBC链接SQLsever数据库时遇到的问题以及解决办法 &&关键字‘user’附近有语法错误)