Sql Server 2012 语法与my Sql的区别
2016-08-19 20:16
302 查看
String sql = "INSERT INTO [User] (username,password) values ('下名','122')";
插入语法和my Sql 是有一定区别的
区别一:表名必须加[] 括号 (有的版本好像不用加也行,都试试把),
区别二:values 是复数 mySql的插入是value 单数
目前就发现这两点区别
另一中插入方式:
Connection conn = JdbcConnection.getConnection();
String sql = "insert into [User](username,password) values(?,?)";
PreparedStatement pst;
try {
pst = conn.prepareStatement(sql);
pst.setString(1, user.getUsername());
pst.setString(2, user.getPassword());
int low = pst.executeUpdate();
if(low>0){
return true;
}
pst.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
JdbcConnection.close(conn);
}
return false;
方式一有时候会莫名报一些异常,错误等:比如下面这句
String sql = "select * from [MYUserInfo] where UserName ="+user.getUsername();
报的异常:
com.microsoft.sqlserver.jdbc.SQLServerException: 转换 varchar 值 '18911873163' 时溢出了整数列。
改为另外一种方查找式就没事:
String sql = "select * from [MYUserInfo]where UserName = ?";
Connection conn = JdbcConnection.getConnection();;
PreparedStatement ps = null;
ResultSet rs = null;
try {
ps = conn.prepareStatement(sql);
ps.setString(1, user.getUsername());
rs = ps.executeQuery();
.............略
插入语法和my Sql 是有一定区别的
区别一:表名必须加[] 括号 (有的版本好像不用加也行,都试试把),
区别二:values 是复数 mySql的插入是value 单数
目前就发现这两点区别
另一中插入方式:
Connection conn = JdbcConnection.getConnection();
String sql = "insert into [User](username,password) values(?,?)";
PreparedStatement pst;
try {
pst = conn.prepareStatement(sql);
pst.setString(1, user.getUsername());
pst.setString(2, user.getPassword());
int low = pst.executeUpdate();
if(low>0){
return true;
}
pst.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
JdbcConnection.close(conn);
}
return false;
方式一有时候会莫名报一些异常,错误等:比如下面这句
String sql = "select * from [MYUserInfo] where UserName ="+user.getUsername();
报的异常:
com.microsoft.sqlserver.jdbc.SQLServerException: 转换 varchar 值 '18911873163' 时溢出了整数列。
改为另外一种方查找式就没事:
String sql = "select * from [MYUserInfo]where UserName = ?";
Connection conn = JdbcConnection.getConnection();;
PreparedStatement ps = null;
ResultSet rs = null;
try {
ps = conn.prepareStatement(sql);
ps.setString(1, user.getUsername());
rs = ps.executeQuery();
.............略
相关文章推荐
- Access和sql server的语法区别
- Access和sql server的语法区别
- ORACLE与SQL SERVER语法区别 2
- SQL Server 和 MySql 语法和关键字的区别
- SQL Server 2012入门T-SQL基础篇:(7)Where子句与Having子句的区别
- Access和sql server的语法区别 db2 oracle [darkcom 发表于 2006-7-27 8:51:21]
- ORACLE与SQL SERVER语法区别
- Access和sql server的语法区别
- Access和sql server的语法区别
- sql Server与ORACLE的语法区别 自用整理!
- sqlite和sql server语法上的一些区别
- SQL Server与Access数据库的语法的区别?
- ORACLE与SQL SERVER语法区别
- sql server2008 R2的PowerPivot for sharepoint2010 与sql server 2012的PowerPivot for sharepoint2010安装的区别
- Mysql与Sql server在语法和关键字上的区别
- Access和sql server的语法区别
- SQL Server与oracle两者区别之语法区别
- Access和sql server的语法区别 (包括db2 oracle)
- SQL Server和MySql语法和关键字的区别
- MySql 和 SQL Server 语法和关键字的区别