MYSQL(一) 简单语法

时间:2021-11-12 01:52:42

MYSQL(一) 简单语法

1、默认约束:mysql里面DEFAULT关键字后面是不用加括号的

--1.1 创建数据库

mysql> create database holly;

Query OK, 1 row affected (0.00 sec)

--1.2 使用数据库

mysql> use holly;

Database changed

--1.3 创建数据库表

mysql> create table student

    -> (

    ->    id int default 50

    -> );

Query OK, 0 rows affected (0.10 sec)

--1.4 插入数据

mysql> insert into student(id) values(default);

Query OK, 1 row affected (0.04 sec)

--1.5 查询数据

mysql> select * from student;

+------+

| id   |

+------+

|   50 |

+------+

1 row in set (0.00 sec)

 

2、设置自增列

MYSQL的自增列一定要是有索引的列,设置种子值要在表的后面设置

-- 设置自增序列并且起始值从N开始

----(设置自增序列从100开始)

mysql> CREATE TABLE teacher(

    -> ID INT  PRIMARY KEY AUTO_INCREMENT

    -> ) AUTO_INCREMENT = 100 ;

Query OK, 0 rows affected (0.12 sec)

 

mysql> insert teacher(id) values(null);

Query OK, 1 row affected (0.05 sec)

 

mysql> select * from teacher;

+-----+

| ID  |

+-----+

| 100 |

+-----+

1 row in set (0.00 sec)

 

 

 

 

MYSQL获取当前表的自增值的方法

 SELECT @@identity    针对任何表

@@identity 是表示的是最近一次向具有identity属性(即自增列)的表插入数据时对应的自增列的值,是系统定义的全局变量。

一般系统定义的全局变量都是以@@开头,用户自定义变量以@开头。

使用@@identity的前提是在进行insert操作后,执行select @@identity的时候连接没有关闭,否则得到的将是NULL值。

 

 

3.MYSQL 查看表结构

mysql> desc student;

+-------+---------+------+-----+---------+-------+

| Field | Type    | Null | Key | Default | Extra |

+-------+---------+------+-----+---------+-------+

| id    | int(11) | YES  |     | 50      |       |

+-------+---------+------+-----+---------+-------+

1 row in set (0.01 sec)

 

4、修改表名

mysql> alter table student rename stu;

Query OK, 0 rows affected (0.05 sec)

 

mysql> desc stu;

+-------+---------+------+-----+---------+-------+

| Field | Type    | Null | Key | Default | Extra |

+-------+---------+------+-----+---------+-------+

| id    | int(11) | YES  |     | 50      |       |

+-------+---------+------+-----+---------+-------+

1 row in set (0.01 sec)

 

5、修改字段的数据类型

将id字段的int类型改为bigint

ALTER TABLE stu MODIFY id BIGINT

 

 

6、修改字段名

ALTER TABLE 表名 CHANGE 旧的列名 新的列名GINT

 

 

7、添加字段

ALTER TABLE 表名 ADD 列名 数据类型(长度)  约束

 

 

8、删除字段

ALTER TABLE 表名  DROP 列名

 

9、删除外键约束

ALTER TABLE 表名 DROP FOREIGN KEY 外键约束名

 

--删除主键约束

ALTER TABLE表名DROP PRIMARY KEY 主键约束名

 

 

10、删除表

--删除一个表

DROP TABLE 表名

 

--删除多个表

DROP TABLE IF EXISTS 表名1 , 表名2

 

 

 10.复制表

create table 新表名like 旧表名;  只复制表结构

create table 新表名 as select * from旧表名; 复制表结构和表数据

mysql复制表结构/数据的时候,并不会复制主键,索引,自增列等任何属性,仅仅是简单拷数据