mysql表级sql语句
create table table_name (
id int unsigned primary key AUTO_INCREMENT,
username varchar(32) not null,
nickname varchar(16) not null default '匿名',
unique key(username)
);
CREATE TABLE IF NOT EXISTS `test` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`nickname` varchar(16) NOT NULL DEFAULT '匿名',
PRIMARY KEY (`id`),
KEY `nickname` (`nickname`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
索引增删改:(索引名字一般与字段名相同)
alter table 表名 add primary key(‘字段列表’); //增加主键
alter table 表名 drop primary key; //删除主键
alter table 表名 add unique key 索引名字 (字段列表); 增加唯一索引,例子:
ALTER TABLE `test` ADD UNIQUE (
`username`
);
alter table 表名 drop index index_name; 删除唯一索引,例子:
ALTER TABLE `test` DROP INDEX `username`;
ALTER TABLE `test` ADD INDEX ( `nickname` );//增加普通索引
ALTER TABLE `test` DROP INDEX `nickname`;//删除普通索引
插入
INSERT INTO 表名称 VALUES (值1, 值2,....)插入所有列,指定值
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)插入指定列,指定值
insert into test (username,nickname)values('333','111'),('222','222')插入指定列多个值
INSERT INTO test VALUES (NULL , '444', '777'), (NULL , '555', '999')插入所有列,多个
insert into table select * from table2 //将查询结果插入
insert into test (username) values ('111') on duplicate key update username='000',nickname='匿名' //判断主键或者唯一是否存在,不存在则插入,存在则更新。(update后没有set)
删除数据
delete from TABLE where... 删除符合条件的数据(delete支持order by和limit限制删除条数)
truncate TABLE 清空表
修改(update支持order by和limit限制更新条数)
UPDATE Person SET Address = 'Zhongshan 23', City = 'Nanjing' WHERE LastName = 'Wilson'