您好,您是要修改数据库里面,某个表的自动递增列的开始id
那你那个表里面,当前有没有数据?
如果已经有数据了,你再从1开始,那后面就要出错了。
如果表是空表,没有数据的,那么可以
TRUNCATETABLE表名字
通过彻底清空指定表的方式,来重置那个自动递增的当期值为1
注:以上处理方式
对于SQLServer数据库的identity(1,1)
或者MySQL的AUTO_INCREMENT是有效的。如果是Oracle数据库的话,您可能需要去重新创建序列号对象。
我来回答吧: 下列sql语句我测试过, sql server版的,要是mysql需要转换下。可以Hi我
建立函数
create function myfn_GetInt(@str varchar(50))
returns varchar(50)
as
begin
if @str = ''
return ''
declare @r varchar(50), @index int, @temp varchar(2)
set @r = ''
set @index = len(@str)
set @temp = ''
while @index > 0
begin
set @temp = substring(@str,@index,1)
if '1234567890' not like '%'+@temp+'%'
begin
if @r <> ''
break
end
else
set @r = @r + @temp
set @index = @index - 1
end
set @r = REVERSE(@r)
return @r
end
执行函数,显示结果为 08
select dbomyfn_GetInt('我出生于1979年08月十六日')
SQL Server 提供了一个叫IsNumeric的函数,用来判断是不是数字字符。
要查看数字:
select b from a where isnumeric(b)
查看字母数据:
select b from a where NOT isnumeric(b)
Declare @a varchar(1000)
Declare @i int
Set @i = 0
Set @a = 'A,B,C,D,E,F,G,H,I'
While(@i <=Len(@a))
Begin
Print Substring(@a,CHARINDEX(',',@a)+@i-1,1)
Set @i = @i + 2
ENd
可以取出里面所有的字母
这要看你的504357289这个秒数怎么计算了,是从数据库默认日期+504357289,还是当前日期-504357289
1、select dateadd(ss,504357289,'1990-1-1')
2、select dateadd(ss,-504357289,getdate())
以上就是关于SQL怎么处理数据库初始化从1开始请教大家(数据库初始化什么意思)全部的内容,包括:SQL怎么处理数据库初始化从1开始请教大家(数据库初始化什么意思)、sql如何提取,从右边第一个为数字的字符,2为长度的字符串、sql 获取某字段里面纯数字或者纯字母的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)