• 【MySQL】:利用DDL操作数据库、表


    一、DDL操作数据库

    关键字理应大写,为便于记忆,本篇都采用小写形式。

    DDL(DATA Definition Language):数据定义语言,用于定义数据库对象。

    1、创建数据库

    create database db1;	#创建一个数据库,名字叫mydb
    create database if not exists db2;	#如果db2不存在,则创建数据库db2
    create database db3 character set gbk;	#创建数据库db3并制定字符集为gbk
    
    -- 综合:如果db4不存在,就创建它,并且设置字符集为utf8(!不是utf-8)
    create database if not exists db4 character set utf8;
    

    2、查看数据库

    show databases;			# 查询所有数据库的名称
    show create database db1; #查询已创建数据库db1的字符集
    

    3、修改数据库

    alter database db2 character set utf8;	#修改数据库db2字符集为utf8
    

    4、删除数据库

    drop database db4;		#删除数据库db4
    drop database if exists db3;	#判断是否存在并删除db3
    

    5、使用数据库

    use db1;	# 使用数据库db1
    select database(); #查看正在使用的数据库
    

    二、DDL操作数据表

    在使用某个数据库的前提下,才可以操作库里面的表结构。

    1、创建表

    建表格式

    create table 表名(
        列名1 数据类型1,## 此处可添加字段注释
        列名2 数据类型2,## 此处可添加字段注释
        ...
        列名n 数据类型n  ## 此处可添加字段注释
    ); ## 最后一列列不需要加逗号
    

    如:

    create table student (
    	id int, 	  -- 编号
    	NAME varchar(20), -- 姓名
    	gender char(8),	  -- 性别
    	birthday date 	  -- 生日
    );
    

    MySQL数据类型

    数据类型有许多,以下为几个比较基础重要的。

    文本相关

    • varchar(m):可变长度字符串 ,使用几个字符就占用几个,m为0-65535之间。
    • char(m):定长字符串,无论使用几个字符都将占满全部,多余的以空字符补充,m为0-255之间。

    关于char和varchar推荐看这篇:char与varchar类型区别的深度剖析

    数相关

    • int:整数类型。
    • double:双精度浮点数类型。
    • float:单精度浮点数类型。

    时间相关

    • date:日期类型,只包含年月日:yyyy-MM-dd

    • time:时间类型,只包含时分秒:HH:mm:ss

    • datetime:日期和时间类型都有,包含年月日时分秒:yyyy-MM-dd HH:mm:ss

    • timestamp:时间戳 格式和上相同,如果不给这个字段赋值,则自动用系统默认时间赋值。

    复制表

    create table new_stu like old_stu;      # 复制表的操作
    

    2、查看表

    show tables;   # 查询该数据库中所有的表名称
    
    desc student;	  # 查询表student的结构
    

    在这里插入图片描述

    show create table student; #查看student的创建表 SQL 语句
    

    3、删除表

    drop table student;				#删除表student
    drop table if exists student;	#判断student是否存在,并删除
    

    4、修改表

    修改表名

    alter table student rename to stu;  # 把student表改名为stu
    rename table student to stu;
    

    修改字符集

    alter table stu character set gbk;   # 修改字符集为gbk
    

    添加表列

    alter table stu add address varchar(20);  # 增加一列,列名为address,数据类型varchar
    

    修改列类型

    alter table stu modify address char(10);  # 修改address的数据类型,改为char
    

    修改列名

    alter table stu change address addr char(10);  #修改列名为addr,数据类型改为char
    

    删除列

    alter table stu drop addr; 		# 删除addr列
    
  • 相关阅读:
    前端设计网站收藏
    JAVA的StringBuffer类
    JDBC连接数据库
    JSP中request属性的用法
    jquery学习
    servlet学习(一)
    javascript 计算器
    xml学习(一)
    网站之单点登录简单思路
    关于ASP.NET中Menu控件在浏览器中不正常显示解决方法
  • 原文地址:https://www.cnblogs.com/summerday152/p/12418744.html
Copyright © 2020-2023  润新知