java中向sqlserver执行sql语句问题
程序如下//加载数据库的驱动packagemainmethod;importjava.io.IOException;importjava.sql.*;importjava...
程序如下
//加载数据库的驱动
package mainmethod;
import java.io.IOException;
import java.sql.*;
import java.io.*;
public class mainmethod{
private static Connection state;
static Connection conn=null;
static{
try{
Class.forName("net.sourceforge.jtds.jdbc.Driver");
}catch(ClassNotFoundException e){
e.printStackTrace();
}
}
public static Connection getConn(){
String url="jdbc:jtds:sqlserver://127.0.0.1:1433/S_C";
String userName="sa";
String passWord="";
try{
conn=DriverManager.getConnection(url, userName, passWord);
if(conn!=null){
System.out.println("ok!!!!!!!");
}
}
catch(SQLException e){
e.printStackTrace();
}
System.out.println(conn);//苦思冥想没有结局的问题(不能执行sql语句)解决方法,原因是conn的值有没有赋值上去,或者被顶替掉。
return conn;
}
@SuppressWarnings("deprecation")
public static class input{
static int inputIntdate() throws IOException{ //这里之所以不使用public是因为在input类前的public对类里面的内容有影响
byte buf[]=new byte[5];
String str;
int num = 0;
try{
System.in.read(buf);
str=new String(buf,0);
num=Integer.parseInt(str.trim());
}catch(Exception e){
System.out.println(e);
}
return num;
}
}
//添加功能
static class Insert{
public static Insert insert() throws SQLException{
getConn();
String sql="";
Statement state=conn.createStatement();
sql="insert into Student values('2010109','李雷','男 ','计算机系','IT','本科',266)";
state.executeUpdate(sql);
System.out.println("insert is ok!");
state.close();
return null;
}
}
public static void delete() throws SQLException{
getConn();
}
public static void update() throws SQLException{
getConn();
}
public static void select() throws SQLException{
getConn();
}
public static void main(String[] args) throws SQLException, IOException{
System.out.println ("分别输入数字1,2,3,4选择增,删,改,查模块");
//需要在这里添加输入整数n的模块
int m;
m=input.inputIntdate();
switch(m){
case 1:
System.out.println("ok");
Insert in =null;
in=Insert.insert();
break;
case 2:System.out.println("ok");delete();break;
case 3:System.out.println("ok");update();break;
case 4:System.out.println("ok");select();break;
default:System.out.println("输入的整数有误");
}
//需要添加重新选侧模块
}
}
没有向Student表中插入任何数据
运行的结果是这样的
分别输入数字1,2,3,4选择增,删,改,查模块
1
ok
ok!!!!!!!
net.sourceforge.jtds.jdbc.JtdsConnection@188f506
Exception in thread "main" java.sql.DataTruncation: Data truncation
at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:386)
at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2893)
at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2335)
at net.sourceforge.jtds.jdbc.TdsCore.getMoreResults(TdsCore.java:638)
at net.sourceforge.jtds.jdbc.JtdsStatement.processResults(JtdsStatement.java:613)
at net.sourceforge.jtds.jdbc.JtdsStatement.executeSQL(JtdsStatement.java:572)
at net.sourceforge.jtds.jdbc.JtdsStatement.executeImpl(JtdsStatement.java:809)
at net.sourceforge.jtds.jdbc.JtdsStatement.executeUpdate(JtdsStatement.java:1288)
at net.sourceforge.jtds.jdbc.JtdsStatement.executeUpdate(JtdsStatement.java:1241) 展开
//加载数据库的驱动
package mainmethod;
import java.io.IOException;
import java.sql.*;
import java.io.*;
public class mainmethod{
private static Connection state;
static Connection conn=null;
static{
try{
Class.forName("net.sourceforge.jtds.jdbc.Driver");
}catch(ClassNotFoundException e){
e.printStackTrace();
}
}
public static Connection getConn(){
String url="jdbc:jtds:sqlserver://127.0.0.1:1433/S_C";
String userName="sa";
String passWord="";
try{
conn=DriverManager.getConnection(url, userName, passWord);
if(conn!=null){
System.out.println("ok!!!!!!!");
}
}
catch(SQLException e){
e.printStackTrace();
}
System.out.println(conn);//苦思冥想没有结局的问题(不能执行sql语句)解决方法,原因是conn的值有没有赋值上去,或者被顶替掉。
return conn;
}
@SuppressWarnings("deprecation")
public static class input{
static int inputIntdate() throws IOException{ //这里之所以不使用public是因为在input类前的public对类里面的内容有影响
byte buf[]=new byte[5];
String str;
int num = 0;
try{
System.in.read(buf);
str=new String(buf,0);
num=Integer.parseInt(str.trim());
}catch(Exception e){
System.out.println(e);
}
return num;
}
}
//添加功能
static class Insert{
public static Insert insert() throws SQLException{
getConn();
String sql="";
Statement state=conn.createStatement();
sql="insert into Student values('2010109','李雷','男 ','计算机系','IT','本科',266)";
state.executeUpdate(sql);
System.out.println("insert is ok!");
state.close();
return null;
}
}
public static void delete() throws SQLException{
getConn();
}
public static void update() throws SQLException{
getConn();
}
public static void select() throws SQLException{
getConn();
}
public static void main(String[] args) throws SQLException, IOException{
System.out.println ("分别输入数字1,2,3,4选择增,删,改,查模块");
//需要在这里添加输入整数n的模块
int m;
m=input.inputIntdate();
switch(m){
case 1:
System.out.println("ok");
Insert in =null;
in=Insert.insert();
break;
case 2:System.out.println("ok");delete();break;
case 3:System.out.println("ok");update();break;
case 4:System.out.println("ok");select();break;
default:System.out.println("输入的整数有误");
}
//需要添加重新选侧模块
}
}
没有向Student表中插入任何数据
运行的结果是这样的
分别输入数字1,2,3,4选择增,删,改,查模块
1
ok
ok!!!!!!!
net.sourceforge.jtds.jdbc.JtdsConnection@188f506
Exception in thread "main" java.sql.DataTruncation: Data truncation
at net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:386)
at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2893)
at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2335)
at net.sourceforge.jtds.jdbc.TdsCore.getMoreResults(TdsCore.java:638)
at net.sourceforge.jtds.jdbc.JtdsStatement.processResults(JtdsStatement.java:613)
at net.sourceforge.jtds.jdbc.JtdsStatement.executeSQL(JtdsStatement.java:572)
at net.sourceforge.jtds.jdbc.JtdsStatement.executeImpl(JtdsStatement.java:809)
at net.sourceforge.jtds.jdbc.JtdsStatement.executeUpdate(JtdsStatement.java:1288)
at net.sourceforge.jtds.jdbc.JtdsStatement.executeUpdate(JtdsStatement.java:1241) 展开
展开全部
看看哗游报什么错误信息了
数据被截轿氏短。
定义的闭芦散长度,和DB里面实际长度不符合
数据被截轿氏短。
定义的闭芦散长度,和DB里面实际长度不符合
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
什么错误信息你倒是也打出来,才能帮你找唯禅啊
你检查你的添加的信息是不是跟你的数据库类型错指散尘误;肯定是你的SQL语句错了才会报这样的错;
在吧掘山你的表贴出来
你检查你的添加的信息是不是跟你的数据库类型错指散尘误;肯定是你的SQL语句错了才会报这样的错;
在吧掘山你的表贴出来
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询