Linux高级系统编程-MySQL数据库基本使用语法

2023-12-17 12:39:00

DDL:数据定义语言

作用 : 用于完成对数据库对象(数据库、数据表、视图、索引等)的创建、删除、修改

数据库操作

查询数据库

- > 显示当前 mysql 中的数据库列表
????????> show databases;
- > 显示指定名称的数据的创建的 SQL 指令
????????> show create database 库名 ;

创建数据库

- > 创建数据库
????????> create database 库名 ;
- > 创建数据库,当指定名称的数据库不存在时执行创建
????????> create database if not exists 库名 ;
- > 在创建数据库的同时指定数据库的字符集(字符集:数据存储在数据库中采用的编码格式 utf8 gbk
????????> CREATE DATABASE IF NOT EXISTS 库名 CHARSET 'utf8';

修改数据库字符集

- > 修改数据库的字符集
????????> alter database 库名 CHARSET 字符集 ;

删除数据库

- > 删除数据库
????????> drop database 库名 ;
- > 如果数据库存在则删除数据库
????????> drop database if exists 库名 ;

使用/切换数据库

use 库名 ;

数据表操作

????????创建完数据库之后,接下来就是在数据库中创建数据表。在MySQL 中,数据表以二维表格的形式展示,表格中的一行代表一条完整的数据记录,表格中的一列代表数据的某个特定属性。
需要注意:
????????在数据库中创建表之前,需要查看当前使用的数据库
语法:
????????select database();
????????然后切换到你需要操作的数据库
????????use db_name;

建表

????????create table 表名 ( 字段 1 字段类型 , 字段 2 字段类型 , ... 字段 n 字段类型 );
字段类型
????????int:整型
????????double:浮点型,例如 double(5,2) 表示最多 5 位,其中必须有 2 位小数,即最大值为 999.99;
????????char:固定长度字符串类型;
????????char(10): 'aaa ' 占 10
????????varchar:可变长度字符串类型;
????????varchar(10): 'aaa' 占 3
????????text:字符串类型;
????????blob:字节类型;
????????date:日期类型,格式为: yyyy-MM-dd
????????time:时间类型,格式为: hh:mm:ss
????????timestamp:时间戳类型 yyyy-MM-dd hh:mm:ss 会自动赋值
????????datetime:日期时间类型 yyyy-MM-dd hh:mm:ss
????????boolean:mysql不支持 ,oracle 支持
示例
创建一张存储学员信息的表 :stu
表中的字段有 :
????????s_id 一条数据的唯一标识符 int primary key auto_increment
????????s_name 学员姓名 varchar(30)
????????s_sex 学员性别 varchar(10)
????????s_age 学员年龄 int
????????s_class 学员所在班级 varchar(50)
????????s_num 学号 varchar(16)
????????s_type 学员专业 varchar(50)
sql 语句
create table stu(
????????s_id int primary key auto_increment,
????????s_name varchar(30),
????????s_sex varchar(10),
????????s_age int,
????????s_class varchar(50),
????????s_num varchar(16),
????????s_type varchar(50)
);

查看所有表

????????SHOW TABLES;

重命名表

????????rename table 原表名 to 新表名 ;

查看创建表语句信息

????????SHOW CREATE TABLE 表名 ;

修改字符集

????????ALTER TABLE 表名 CHARACTER SET 修改后的字符集 ;
????????注意: 一般使用 utf8( 就是 utf-8)

查表字段信息

????????DESC 表名 ;

备份表

????????create table 新表名 as select * from 要备份的表的名称 ;
:
????????create table tname2 as select * from tname1;

备份表结构

????????create table 新表名 like 要备份的表的名称 ;
:
????????create table tname2 like tname1;

删除表

????????DROP TABLE 表名 ;

添加列

????????ALTER TABLE 表名 ADD 添加的列名 填加的列字段类型 ;

修改列

????????alter table 表名 modify 要修改的列名 修改后的字段类型;

删除列

????????alter table 表名 drop 列名 ;

文章来源:https://blog.csdn.net/weixin_50963877/article/details/135034505
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。