下面的例子以newsdb数据库下的表“news”为例进行删改增添,实际操作过程中可以根据数据库和表的不同更改语句内容
创建数据库:create database newsdb;
删除数据库:drop database newsdb;
创建表:
use newsdb;
create table `news` (
`id` bigint(20) unsigned NOT NULL auto_increment,
`title` varchar(100) NOT NULL,
`username` varchar(20) NOT NULL,
`content` text,
`submitTime` datetime default NULL,
`viewCount` int(10) unsigned default NULL,
`catalogs` varchar(20) default NULL,
`attachment` varchar(100) default NULL,
PRIMARY KEY (`id`));
注意:表的名称(在这里是‘new’)和列的名称(在这里有 ‘id’ ‘title’)要用反引号引起来,不能是使用单引号,使用单引号会报错。
单引号在键盘的左上角,注意要把输入法切换到英文模式
修改表:(将属性id从tinyint 改变为integer(属性名不变),并将属性title从 varchar(100) 改变为varchar(200),同时也将title重命名为t。)
alter table news modify id integer not null, change title varchar(200);
ps:modify和change的区别:
change 对列进行重命名或更改列的类型,需给定旧的列名称和新的列名称、当前的类型
modify 可以改变列的类型,此时不需要重命名(不需给定新的列名称)
查看表的结构
①查看表的样式:desc news;
②查看表的构造语句:show create table news;
删除表:
drop table news;
插入记录
insert into `news` (`id`,`title`,`username`,`content`,`submittime`,`viewcount`,`catalogs`,`attachment`)
values (1,'新闻标题','张三','新闻内容','2009-12-14 00:00:00',1,'5','null');
插入数据时,如果遇到插入中文失败的问题,可以参考MySQL插入中文数据报错,插入失败的问题处理
查询记录
select * from news where id =1; (查询显示id=1的全部记录)
select id,title from news where username like '张三'; (查询显示名字为张三的 id和title的内容)
ps:①用 <= 、>= 、= 筛选数字类型;
②用 like 筛选字符串类型 ,并且使用百分号 %字符来表示任意字符,类似于正则表达式中的星号 *,如 “com%"可 以匹配到以com开头的任意单词。
③MySQL 同样也支持其他正则表达式的匹配, MySQL中使用 REGEXP 操作符来进行正则表达式匹配。
如:查找username字段中以'st'为开头的所有数据:
select username from news WHERE username REGEXP '^st';
(正则表达式的内容下次再总结)
删除记录
delete from news where id=1;
修改记录
update table news set title = “新的标题” ;