如何清楚SQL数据库的自动加一
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何清楚SQL数据库的自动加一相关的知识,希望对你有一定的参考价值。
以前在数据库中有个表,表里的某一个字段我设置成了主键,而且还自动加一,现在我把里面的数据全部删除了,重新又添加了信息,可是自动加一的值不是从1开始,是从上次删除数据的最后一列开始再加一往下进行的
我现在想问的问题是:如何在删除原来的数据之后,让主键自动加一重新从1开始自动加一!
谢谢高手了!
如果表已经建好,则可以用alter命令改表的结构 参考技术C 太简单了,你删除原来的表,再新建一个一抹一样的表,
然后设置 主健,自动加一,不久行了; 参考技术D 在查询分析器里:
use DB名
go
dbcc checkident ('表名',reseed,0)
go
mysql中,如何创建一个表,并加一条数据?
我是个菜鸟,想学学sql,我想建立一个表 有Id,name,age,sex,然后再加一个数据,比如张三,24,男,这个怎么加啊 那个id要自动每次加1可以吗?age不能小于10.
刚有个人告诉我一个方法,可是好像不是mysql里面的语法,我不知道每个软件sql语法还不一样,所以弄错了,请高手门再告诉我一次吧......
1、使用 create table 语句可完成对表的创建, create table 的创建形式:
create table 表名称(列声明);
以创建 people 表为例, 表中将存放 学号(id)、姓名(name)、性别(sex)、年龄(age) 这些内容:
create table people(
id int unsigned not null auto_increment primary key,
name char(8) not null,
sex char(4) not null,
age tinyint unsigned not null
);
其中,auto_increment就可以使Int类型的id字段每次自增1。
2、向表中插入数据使用insert 语句。
insert 语句可以用来将一行或多行数据插到数据库表中, 使用的一般形式如下:
insert [into] 表名 [(列名1, 列名2, 列名3, ...)] values (值1, 值2, 值3, ...);
其中 [] 内的内容是可选的, 例如, 要给上步中创建的people 表插入一条记录, 执行语句:
insert into people(name,sex,age) values( "张三", "男", 21 );
3、想要查询是否插入成功,可以通过select 查询语句。形式如下:
select * from people;
扩展资料:
当mysql大批量插入数据的时候使用insert into就会变的非常慢, mysql提高insert into 插入速度的方法有三种:
1、第一种插入提速方法:
如果数据库中的数据已经很多(几百万条), 那么可以 加大mysql配置中的 bulk_insert_buffer_size,这个参数默认为8M
举例:bulk_insert_buffer_size=100M;
2、第二种mysql插入提速方法:
改写所有 insert into 语句为 insert delayed into
这个insert delayed不同之处在于:立即返回结果,后台进行处理插入。
3、第三个方法: 一次插入多条数据:
insert中插入多条数据,举例:
insert into table values('11','11'),('22','22'),('33','33')...;
参考技术A这里以创建一个学生表为例,代码如下:
create table student
(
ID int primary key identity(1,1),
name CHAR(20) UNIQUE,
sex CHAR(2),
Sage SMALLINT,
Sdept CHAR(20)
);
加一条数据的代码:insert into student values ('201215121','张三','男',24,'CS')
扩展资料:
创建表的注意事项:
1、create table 是关键字,大小写都可识别,不能随意修改为或使用其他字符,create table 是告诉数据库将要创建一个表对象。
2、表名是自己定义的字符串,可随意命名,但建议跟具体业务相关,建议不要使用中文和数字,建议由字母和下划线组成,如dm_product_info,表名是表对象在数据库里的唯一标识。
3、( ) 是语法的必须组成部分,注意是英文的圆括号,括号内部是表的列定义,在前面的文章有提过,表由列组成,每列代表是一种类型的数据,而数据类型包括字符、数字、日期、布尔值等。
4、多个列之间使用逗号作分隔,注意是英文的逗号。
参考技术Bmysql中,要创建一个表并加一条数据,可以参照以下写法:
create table userinfo
(
id int primary key identity,--identity每次自动加1
name char(20),
age int check(age>10),
sex char(2)
)
--插入
insert into userinfo(name,age,sex) values('张三',24,'男')
MySQL 创建数据表,创建MySQL数据表需要以下信息:
表名
表字段名
定义每个表字段
语法
以下为创建MySQL数据表的SQL通用语法:
CREATE TABLE table_name (column_name column_type);
例子:
在 RUNOOB 数据库中创建数据表runoob_tbl:
CREATE TABLE IF NOT EXISTS `runoob_tbl`(
`runoob_id` INT UNSIGNED AUTO_INCREMENT,
`runoob_title` VARCHAR(100) NOT NULL,
`runoob_author` VARCHAR(40) NOT NULL,
`submission_date` DATE,
PRIMARY KEY ( `runoob_id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
扩展资料:
通过命令提示符创建表
通过 mysql> 命令窗口可以很简单的创建MySQL数据表。你可以使用 SQL 语句 CREATE TABLE 来创建数据表。
实例
以下为创建数据表 runoob_tbl 实例:
root@host# mysql -u root -p
Enter password:*******
mysql> use RUNOOB;
Database changed
mysql> CREATE TABLE runoob_tbl(
-> runoob_id INT NOT NULL AUTO_INCREMENT,
-> runoob_title VARCHAR(100) NOT NULL,
-> runoob_author VARCHAR(40) NOT NULL,
-> submission_date DATE,
-> PRIMARY KEY ( runoob_id )
-> )ENGINE=InnoDB DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.16 sec)
注意:MySQL命令终止符为分号 (;) 。
参考技术Cmysql中,要创建一个表,可以参照如下写法:
create table userinfo
( id int primary key identity,--identity每次自动加1
name char(10),
age int check(age>15),
sex char(4) )
这个是插入数据的写法:insert into userinfo(name,age,sex) values('张三',24,'男')
扩展资料:
判断表是否存在
if not exists (select * from sysobjects where [name] = '表名' and xtype='U')
begin
--这里创建表
end
参考资料来源:百度百科-SQL语句大全
参考技术D create table userinfo(
id int primary key identity,--identity每次自动加1
name char(20),
age int check(age>10),
sex char(2)
)
--插入
insert into userinfo(name,age,sex) values('张三',24,'男')本回答被提问者采纳
以上是关于如何清楚SQL数据库的自动加一的主要内容,如果未能解决你的问题,请参考以下文章