重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
插入一条记录后想要立刻获取其数据表中的sql server主键返回值。这个主键是自动生成的,其实实现的方式有很多,比如再进行一次查询,获取出来。或者在插入数据之前取出最大值,在最大值上面加一等等,方法很多,但是有些很不方便。
成都创新互联专注为客户提供全方位的互联网综合服务,包含不限于网站设计、网站建设、瓮安网络推广、成都小程序开发、瓮安网络营销、瓮安企业策划、瓮安品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联为所有大学生创业者提供瓮安建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com
个人感觉最快的方式就是,在插入数据后直接获取sql server主键的值,然后返回过来。
方法如下:
sql语句如下:
INSERT INTO tableName (fieldname ...) values (value ...) SELECT @@IDENTITY AS returnName;
在sql语句中加入SELECT @@IDENTITY AS returnName;用来获取sql server主键的值
在程序中获取返回值:
public int sqlexecutereader(string sql) { DBopen(); SqlCommand myComm = new SqlCommand(sql, Connection); int newID = Convert.ToInt32(myComm.ExecuteScalar()); DBclose(); return newID; }
当然在此处主键是int类型的自动增加的。DBopen();DBclose();的操作在此就不多说了。
可以参考下面的代码
SELECT t.* from user_cons_columns t where t.table_name = '表名' and t.position is not null; --表名必zd须大写,如:
TABLE_TEST ,column即为用户的主键,user_cons_columns即为用户要的主键名。
扩展资料:
SQL语句
添加主键
Alter table tabname add primary key(col)
说明:删除主键:Alter table tabname drop primary key(col)
创建索引
create [unique] index idxname on tabname(col…。)
删除索引:drop index idxname on tabname
参考资料来源:百度百科-SQL语句大全
以sqlserver2008为例。
1、登录SQL Server Management Studio。
2、进入后,查看左边的树,找到要查找的表所在的库。
3、依次点击数据库——系统数据库——表——系统表——表名左边的“+”——键
4、如图所示就是主键名:
5、如要删除,右键点击键名,会有删除按钮,点击删除即可。
SELECT
表名=case
when
a.colorder=1
then
d.name
else
''
end,
字段序号=a.colorder,
字段名=a.name,
标识=case
when
COLUMNPROPERTY(
a.id,a.name,'IsIdentity')=1
then
'√'else
''
end,
主键=case
when
exists(SELECT
1
FROM
sysobjects
where
xtype='PK'
and
name
in
(
SELECT
name
FROM
sysindexes
WHERE
indid
in(
SELECT
indid
FROM
sysindexkeys
WHERE
id
=
a.id
AND
colid=a.colid
)))
then
'√'
else
''
end,
类型=b.name,
占用字节数=a.length,
长度=COLUMNPROPERTY(a.id,a.name,'PRECISION'),
小数位数=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),
允许空=case
when
a.isnullable=1
then
'√'else
''
end,
默认值=isnull(e.text,'')
FROM
syscolumns
a
left
join
systypes
b
on
a.xtype=b.xusertype
inner
join
sysobjects
d
on
a.id=d.id
and
d.xtype='U'
and
d.name'dtproperties'
left
join
syscomments
e
on
a.cdefault=e.id
order
by
a.id,a.colorder