JAVA中用什么方法向SQL server2005中插入一条数据并返回他的主键值

JAVA中用什么方法向SQL server2005中插入一条数据并返回他的主键值,第1张

(最基本的连接方法)

1。获取连接

获取连接需要两步,

一是使用DriverManager来注册驱动(ClassforName(“commysqljdbcDriver”)),二是使用DriverManager来获取Connection对像DriverManagergetConnection(url,username,password)

2获取Statement(Statement stmt =concreateStatement();)

Statement就是执行sql语句的;

3执行sql语句

String sql = “insertinto user value(’zhangSan’, ’123’)”;

int m =stmtexecuteUpdate(sql);

//总代码如下

publicstatic Connection getConnection() throws Exception {

ClassforName("commysqljdbcDriver");

String url = "jdbc:mysql://localhost:3306/mydb1";

return DriverManagergetConnection(url, "root", "123");

}

@Test

publicvoid insert() throws Exception {

Connection con = getConnection();

Statement stmt = concreateStatement();

String sql = "insert into user values('zhangSan', '123')";

stmtexecuteUpdate(sql);

Systemoutprintln("插入成功!");

}

你可以先用sql语句查询出数据库的结构,就可以知道那个字段主键。如果你插入的数据不包含主键,那么主键就是由数据库生成的,比如是自增序列或uuid,这时候需要从数据库中读取出来,你可以用刚才插入的数据作为条件查询,同时选择只取一条记录,当然这种方式也不是很可靠,尤其是高并发下;如果插入数据包含主键,那么返回值就在你插入数据的对应位置。

主键的概念是数据库中的,,java如果连接了数据库的话,当然可以判断数据存不存在

主键是一行数据的标示,只要有这一行数据,就存在主键;

在生活中,就像身份z号 可以确定一个人那样

首先要知道一个概念:主键和外键,是针对数据库而言的,只有数据库中的表才有主键外键之说。

主键就是一个表中的唯一索引,用于确定一个表中的一条记录,而外键是引用另外一个表中的主键,在当前表中不见得是唯一的,但是在被引用的表中一般是唯一的。

例如:表1:用户编号(主键),用户名称 ,部门编号(外键)

表2:部门编号(主键),部门名称

那么:对于表1来说,用户编号是主键,部门编号是外键,因为部门编号是引用表2的部门编号字段。

希望搞清楚一些基本概念。

例如我们新建了一张表T_User,字段如下u_id,主键,为标示符,user_name然后我们来执行一个新增插入 *** 作:

     insert into T_User(user_name,user_password,user_email,user_ip)

     values('admin','123456','32962435@qqcom','582015820')   ;

     有一天,我们想在新增插入数据的时候获取到插入这条数据的u_id的值是多少,我们知道从MSSQL2005以后新增了一个output,用来输入某个值,我们就可以利用它来实现

解决的方法有两种:

1、一种是直接输入某个字段,如:

insert into T_User(user_name,user_password,user_email,user_ip)  output insertedu_id   //output

insertedu_id一定要放在 values之前,不能放在sql语句的最后面,不然是出错的,inserted是固定的,你想输入当前插入的某个字段就在后面接这个字段即可,我们想获得的是u_id所以是insertedu_id

values('admin','123456','32962435@qqcom','582015820')   ;

2、另一种方法是使用@@identity,@@identity是系统内置的一个全局变量,其作用就是输入最后一次的标示符,我们可以两步走也可以通过一步实现

一步实现的代码如下

   insert into T_User(user_name,user_password,user_email,user_ip)  output @@identity

values('admin','123456','32962435@qqcom','582015820')   ;

以上就是关于JAVA中用什么方法向SQL server2005中插入一条数据并返回他的主键值全部的内容,包括:JAVA中用什么方法向SQL server2005中插入一条数据并返回他的主键值、java *** 作数据库时添加数据后怎么返回其主键并输出、可否通过Java编程判断某表的主键等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9380400.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-27
下一篇2023-04-27

发表评论

登录后才能评论

评论列表(0条)

    保存