首页 > 数据库 > MySQL > 正文

MySQL使用手册

2024-07-24 12:59:51
字体:
来源:转载
供稿:网友

MySQL语法总结

MySQL结构:

数据库中存放数据都是依托与一张张的数据表存在的,我们通过数据库可以高效的利用数据;而我们对数据的操作就是对数据库中的表的操作。

SQL数据类型:

字符型:<varchar> VS <char> 文本型:<text> 数值型:<int> VS <smallint> VS <tinyint> 逻辑型:<bit> 日期型:<datetime> VS <smalldatetime>

MySQL基本操作(格式):

登陆

mysql -u root -p 默认没有密码,直接回车,也可以自行修改密码。 操作数据库中的表单时,一定要先use <数据库名>来进入该数据库

查看

查看数据库:show databases;查看某数据库中所有的表:show tables;查看表中某字段的数据:select <字段名一,字段名二....> from <表名>;查看某记录:select <字段一,字段二...> from <表名> where <查询条件>; (多个)查询条件:<字段名> =值 && <字段名> =值查看表结构:desc <表名>;

创建

创建数据库:create databases <数据库名>;创建表单:create table <表名>;

排序

按照某字段升序排列:select * from <表名> order by <字段名> limit <待排列的记录数>;降序排列:select * from <表名> order by <字段名> desc limit <待排列的记录数>;

插入

插入记录:insert into <表名> values('','','',....);插入某一字段:insert into <表名> <字段名>;

删除

删除未被外键关联的表:drop table if exists <表名>;删除已经外键关联的表:先删除子表再删除父表删除表中的某一条记录:delete from <表名> where <字段=值>;删除表中的某一字段:alter table <表名> drop <字段名>;删除外键约束:alter table <表名> drop foreign key <外键名>

修改

修改表名:alter table <旧表名> rename to <新表名>;修改表中的字段名:alter table <表名> modify <旧字段名> <新字段名> <数据类型>;修改表中字段的数据类型:alter table <表名> modify <字段名> <新数据类型>;修改表中字段的顺序:alter table <表名> modify <字段名> <数据类型> first/after <字段名>;修改表中某一记录某一字段的值:update <表名> set <字段名>=<新值> where <查询条件>;

设置约束关系

主键,又称主码,主键约束就是作为主键的字段在记录中是唯一存在的,不可重复,并且也不许为空。就像我们每个人都有自己唯一的身份ID一样,唯一标识。利用这个特性,我们可以在数据库中快速的查询定位到一条记录。 - 设置主键:创建表的时候,在定义字段以及数据类型的后面直接加上PRimary key (默认值);或者在定义完所有的字段以及数据类型后,加上primary key (<字段名一,....>)

外键,表中的一个或多个字段,可以不是本表的主键,但必须是另一个表的主键。外键用来在两个表中建立连接关系,对于有关联关系的两个表而言,相关联字段中主键所在的表为父表,外键所在的表为子表。 - 设置外键:在表中所有字段都定义后(包括外键名),加上constraint <外键约束名> foreign key(外键名) references<关联的外表名(外表的字段名)>;

注意的是,这里的外键约束名与外键名是不同的意思 同一个数据库中,外键约束名和外键名一定不可以重复!!! /(ㄒoㄒ)/~~

添加注释/备注

给表添加描述:alter table <表名> comment='这里是表的注释'给列添加描述:alter table <表名> modify '<字段名>' datetime default null comment '字段描述'

心得

外键约束关系: 在两个相关联的表中,一个表的主键是另一个表的非主键字段,这个字段中的值可能有很多。就拿学生选课来说,某一个课程可能有很多学生选,学生的主键是学号,那么该课程的表中,学号这一外键就会有很多值,同时,也把课程的数据表和学生的数据表关联了起来。 呐,在这个例子中,课程的表就是子表,学生的数据表就是父表。倘若,父表的值改变了,那么一定需要修改子表的值,而子表想去修改外键的值是没有权限的;但是,子表可以删除带有外键值的记录。这之中就有一种很明显的约束关系。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表