mysql_学习笔记2

创建数据库

create database RUNOOB;

显示数据库

show databases;

+--------------------+
| Database |
+--------------------+
| heihei |
| information_schema |
| mysql |
| performance_schema |
| runoob |
| sys |
+--------------------+

选择数据库

use RUNOOB

设置使用的字符集。

set names utf8;

创建表

CREATE TABLE student (
    student_id VARCHAR (10) PRIMARY KEY NOT NULL,
    student_name VARCHAR (20) NOT NULL,
    student_sex VARCHAR (2),
    student_age INTEGER (3),
    dept_id VARCHAR (2),
    class_id VARCHAR (8)
);
CREATE TABLE course (
    course_id VARCHAR (4) PRIMARY KEY NOT NULL,
    course_name VARCHAR (40) NOT NULL,
    course_hours INTEGER (2),
    course_credit FLOAT (1)
);

一些重要的:

  • SELECT - 从数据库中提取数据
  • UPDATE - 更新数据库中的数据
  • DELETE - 从数据库中删除数据
  • INSERT INTO - 向数据库中插入新数据
  • CREATE DATABASE - 创建新数据库
  • ALTER DATABASE - 修改数据库
  • CREATE TABLE - 创建新表
  • ALTER TABLE - 变更(改变)数据库表
  • DROP TABLE - 删除表
  • CREATE INDEX - 创建索引(搜索键)
  • DROP INDEX - 删除索引

学习来自:

https://blog.csdn.net/weixin_44377973/article/details/103064447

create table tablename(
     col_name1 type auto_increment,
     col_name2 type not null|null default val,
     col_name3 type unique,
     .... ,
    primary key(col_name),
    index idx_name(col_name1,col_name2,...),
    foreign key(col_name) references tablename(col_name)
) engine=innoDB|myISAM default charset=字符集;

(1)type:定义字段的数据类型。其中:字符串类型(char,varchar)需要指定长度;

                 整型(int,biging,tinyint等)和日期类型(datetime,timestamp等)只需要指定类型,不需要指定长度;

                 decimal类型需要指定精度和小数位数。
(2)primary key参数指定表的主键。
(3)auto_increment参数指定字段为自增字段,该字段的类型必须为int或bigint才能设置为自增字段。
(4)not null | null参数设置字段能否取空值。
(5)default参数设置字段的默认值。
(6)index参数用来创建索引。idx_name指定索引名,该参数可以省略,如果省略则索引名就是字段名。
(7)foreign key参数用来指定外键。
(8)engine参数用来设置引擎类型,常用的有 innoDB 和 myISAM 引擎。
(9)default charset参数设置表所用的字符集。

 

学习来自:https://blog.csdn.net/weixin_43790276/article/details/102655786

创建数据库并设置数据库的字符编码,数据库的编码方式是 MySQL 默认的编码方式 latin1 (单字节编码) ,通常我们会在数据库中存放中文数据,所以最好把数据库的编码方式设置成 utf-8 ,这样中文才能正常显示。character set 可以缩写成 charset ,效果是一样的。

create database MyDB_two character set utf8;
create database MyDB_three charset utf8;

 查看和显示数据库的编码方式

show create database MyDB_one;
show create database MyDB_two;
alter database MyDB_one character set utf8;

 

 

 

显示数据库

mysql> select database();

显示表

mysql> show create table course;

显示表

show tables;

show create table course;

 添加表字段:

mysql> alter table course add course_teacher varchar(20);
Query OK, 0 rows affected (0.01 sec)
Records: 0  Duplicates: 0  Warnings: 0

删除表的字段:

mysql> alter table course drop course_teacher;
Query OK, 0 rows affected (0.04 sec)
Records: 0  Duplicates: 0  Warnings: 0

修改表的字段的数据类型:

mysql> alter table course modify course_name VARCHAR(20);
Query OK, 0 rows affected (0.06 sec)
Records: 0  Duplicates: 0  Warnings: 0

修改字段的数据类型并且改名

mysql> alter table course change course_id course_idd VARCHAR(18);
Query OK, 0 rows affected (0.01 sec)
Records: 0  Duplicates: 0  Warnings: 0

字段类型:

1. 整数类型

数据类型 数据范围
TINYINT -128 -- 127
SMALLINT -32768 -- 32767
MEDIUMINT -2^23 -- 2^23-1
INT -2^31 -- 2^31-1
BIGINT -2^63 -- 2^63-1

2. 字符串类型

 

 

数据类型  字节范围  用途
CHAR(n)  0 -- 255字节  定长字符串
VARCHAR(n)  0 -- 65535字节  变长字符串
TEXT  0 -- 65535字节  长文本数据
LONGTEXT  0 -- 2^32-1字节  极大文本数据
BLOB  0 -- 65535字节  二进制长文本数据
LONGBLOB   0 -- 2^32-1字节 二进制极大文本数据

3.浮点类型(m 表示浮点数的总长度,n 表示小数点后有效位数。)

数据类型 数据用法 数据范围
Float Float(m,n) 7位有效数
Double Double(m,n) 15位有效数
Decimal Decimal(m,n) 28位有效数

 

4. 时间类型

数据类型 格式 用途
DATE YYYY-MM-DD 日期
TIME HH:MM:SS 时间
YEAR YYYY 年份
DATETIME YYYY-MM-DD HH:MM:SS 日期和时间
TIMESTAMP 10位或13位整数(秒数) 时间戳

 

5. 枚举类型

enum(枚举值1,枚举值2,...)

枚举类型只能在列出的值中选择一个,如性别

 

 

 

 

 

 




 

posted @ 2021-04-25 17:11  冰糖葫芦很乖  阅读(67)  评论(0编辑  收藏  举报