从零蛋娃娃的回复中得到启示,解决问题。
重新表述需求: id自增长,同时需要一个键uniquekey是唯一键。
解决方法就是:
把id在索引中设置索引类型为任意一个类型,比如normal,然后unique就可以设置为主键了。
或者反过来,id自增长,同时作为主键。 uniquekey在索引中索引类型设置为unique即可。
补充:考虑到主键能设置成外键,所以建议用以上第一种方式。
不一定的,MySQL每张表只能有1个自动增长字段,这个自动增长字段即可作为主键,也可以用作非主键使用,但是请注意将自动增长字段当做非主键使用时必须必须为其添加唯一索引,否则系统将会报错。例如:
1.将自动增长字段设置为主键。
create
table
t1
(id
int
auto_increment
Primary
key,sid
int)
2.将自动增长字段设置为非主键,注意必须显式添加Unique键。
create
table
t2
(sid
int
primary
key,id
int
auto_increment
Unique)
3.将自动增长字段设置为非主键如果未添加唯一索引将会报错**,如下面语句
create
table
t3
(sid
int
primary
key,id
int
auto_increment)。
MySQL是一个关系型数据库管理系统,由瑞典MySQL
AB
公司开发,目前属于
Oracle
旗下产品。MySQL
是最流行的关系型数据库管理系统之一,在
WEB
应用方面,MySQL是最好的
RDBMS
(Relational
Database
Management
System,关系数据库管理系统)
应用软件。
MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的
SQL
语言是用于访问数据库的最常用标准化语言。MySQL
软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择
MySQL
作为网站数据库。
由于其社区版的性能卓越,搭配
PHP
和
Apache
可组成良好的开发环境。
系统特性
1.使用
C和 C++编写,并使用了多种编译器进行测试,保证了源代码的可移植性。
2.支持 AIX、FreeBSD、HP-UX、Linux、Mac
OS、NovellNetware、OpenBSD、OS/2
Wrap、Solaris、Windows等多种 *** 作系统。
3.为多种编程语言提供了 API。这些编程语言包括 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby,.NET和
Tcl
等。
4.支持多线程,充分利用
CPU
资源。
5.优化的 SQL查询算法,有效地提高查询速度。
6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。
7.提供多语言支持,常见的编码如中文的 GB
2312、BIG5,日文的 Shift_JIS等都可以用作数据表名和数据列名。
以sqlserver2008R2数据库为例。可以用如下方法:1、先建表:
1
2
3
create table test
(id int not null,
name varchar(10))
2、在图形界面,找到test表:
3、右键此表名,选择“设计”。
4、右侧出现的页面,找到要设置主键的列,ID列,然后右键,选择“设置主键”。
5、下面一步是要设置自增,在左侧列表中,右键“id列”,然后选择“属性”。
6、其中,找到“标识规范”,标识增量为每次增加多少,标识种子代表起始数值大小。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)