一、建库

建库的规则:
1、不能与其他数据库重名,否则将发生错误。
2、名称可以由任意字母、阿拉伯数字、下划线()和“$”组成,可以使用上述的任意字符开头,但不能使用单独的数字,否则会造成它与数值相混淆。
3、名称最长可为64个字符,而别名最多可长达256个字符

4、不能使用MySQL关键字作为数据库名、表名。

二、创建数据库:

创建的语法结构

使用create database 或create schema 命令创建数据库。(SQL定义语句中不能出现大括号,中括号与|符号)

create {database|schema}[if not exists] databasename

[default] character set charset_name | [default]collate collation_name;

例:

MYSQL创建库sql mysql创建库名_主键

创建数据库表

语法结构:

create         table [if not exists] table_name

(column_definition,...|[index_definition])

[table_option][select_statement]

column_definition :字段定义,包括知道字段名、数据类型、是否容许空值,指定默认值、主键约束、唯一性约束、注释字段名、是否为外键,以及字段类型的属性等。字段的定义具体格式描述如下

col_name  type  [not null | null]  [default default_value]

[auto_increment][unique [key] | [primary] key]

[comment 'string'] [reference_definiton]

三、建表

语法结构:
create table 表名(
列名 数据类型(长度) [约束],
列名2 数据类型(长度) [约束],
列名3 数据类型(长度) [约束]
);

   约束:

约束就是对列数据的约束。
主键约束(primary key)
设置主键的列,其中的值不能重复,且不能为空.
主键的作用:主键是索引,通过主键查询数据效率极高.
自增约束(auto_increment)
自增约束.一般配合主键一起使用
例:id int primary key auto_increment,
唯一约束(unique)
该列的值不能重复
例:name varchar(10) unique
不能为空 (not null )
例:id int not null,
默认值(default)
当赋值时,不给值.就会赋默认值.

检查值约束(check)
 

MYSQL创建库sql mysql创建库名_MYSQL创建库sql_02

CREATE TABLE IF NOT EXISTS student(
studentno CHAR(11) NOT NULL COMMENT'学号'
sname CHAR(8)NOT NULL COMMENT'姓名'
sex ENUM('m','f')DEFAULT 'm'COMMENT'性别'
birthdate DATE NOT NULL COMMENT'出生日期'
entrance INT(3) NOT NULL COMMENT'入学成绩'
phone VARCHAR(12) NOT NULL COMMENT'电话'
Email VARCHAR(20) NOT NULL COMMENT'电子信箱'
PRIMARY KEY (studentno)
);

说明:

1、主键设置,promary key 表示设置该字段为主键

2、添加注释,comment ' '

3、字段类型的选择 sex enum ('男' '女') 表示sex字段类型是enum,取值范围为'男' 和'女'

4、默认值的设置 default '男' 表示默认值为男

5、设置精度 float(3,1)表示精度为共显示3位,小数部分1位

6、如果没有指定是null或者是not null 则列在创建时定位null

7、查看表

        show table;

        desc(describe) table_name

        show create table table_name

四、修改表

1、删除表

drop table 表名

2、修改表名

alter table 原表名 rename 新表名

3、增加字段

student表增加一个字段home,表示籍贯,数据类型为varchar(50) 加在表位

ALTER TABLE student ADD COLUMN home VARCHAR(50);

 在sex后加一个字段intes, 数据类型varchar(20)
 

ALTER TABLE student ADD COLUMN intes VARCHAR(20) AFTER sex;

在表的第一哥位置上增加一个字段

ALTER TABLE student ADD COLUMN tescol INT FIRST;

4、删除字段

alter table 表名 drop column 需要删除字段

5、修改字段名

alter table 表名 change 原字段名    修改的字段名    【数据类型】

ALTER TABLE student CHANGE tescol tescolumn CHAR(10);-- 名称类型都可以修改
ALTER TABLE student CHANGE tescolumn tescol INT;
ALTER TABLE student CHANGE tescol tescol CHAR(20);-- 只修改数据类型

 6、修改属性的数据类型

alter table 表名 modify 字段名 改后的数据类型

7、插入数据

        插入全部数据

insert into 表名  values( ' ',' ',' ')

        插入部分数据

insert into 表名(需要插入数据的字段名) values ('增加的数据')

        插入多行数据

insert into 表名(需要插入数据的字段名)

values

 (数据)

(数据)

8、删除数据

delete from 表名 where 条件

备注:升DESC 降ASC