MySQL基础学习——SQL对数据库进行操作、对数据库的表进行操作
1.SQL对数据库进行操作:
创建数据库:
语法: create database 数据库名称 [character set 字符集 collate 字符集校对规则];字符集校对规则即所用字符集的数据库中的数据值是否区分大小写、排列顺序等规则。
查看数据库:
查看数据库服务器中所有的数据库:show databases;
查看某个数据库的定义信息:show create database 数据库名称;
修改数据库:
语法:alter database 数据库名称 character set 字符集 collate 校对规则;
删除数据库:
语法名称:drop database 数据库名称;
切换数据库
语法: use 数据库名称;
查看当前正在使用的数据库
语法:select database();
2.对数据库的表进行操作
SQL创建表:
语法:create table 表的名称(字段的名称 字段类型(长度)约束,字段的名称 字段类型(长度)约束);
字段的类型(一个实体对应一个表,一个实体的属性对应一个表的字段。)
java中的类型 MySQL中的类型
byte/short/int/long tinyint/smallint/int/bigint
float float
double double
boolean bit
char/String char和varchar
Date date/time/datetime/timestamp
日期/时间/日期和时间/日期和时间
File BLOB/TEXT (BLOB二进制类型的文件,TEXT是文本类型的文件)
char和varchar的区别:char代表的是固定长度的字符或字符串,如char(8),向这个字段存入hello,数据库会使用三个空格将其补全,像hello world这种超过会报错。varchar代表可变长度的字符串,如varchar(8),存入hello,存入到数据库的就是hello。
datatime与timestamp的区别:datatime就是既有日期又有时间的日期类型,如果没有向这个字段中存值,数据库使用null存入到数据库中。timestamp也是既有日期又有时间的日期类型,如果没有向这个字段中存值,数据库会使用当前的系统时间存入到数据库中。
约束(约束的作用:保证数据的完整性)
单表约束的分类:
主键约束:(用于唯一地标识表中的每一条记录,可以定义一列或多列为主键。)primary key(主键约束默认就是唯一非空的)
唯一约束:(该字段值不可重复 )unique
非空约束:(可以重复,但不可以为空)not null
auto_increment是自动增加。
SQL查看表
查看某个数据库下所有的表
语法:show tables
查看某个表的结构信息
语法:desc 表名;
删除表:
语法:drop table 表名;
修改表:
添加列:alter table 表名 add 列名 类型(长度) 约束;
修改列的类型,长度和约束:alter table 表名 modify 列名 类型(长度) 约束;
删除列:alter table 表名 drop 列名;
修改列名称:alter table 表名 change 旧列名 新列名 类型(长度) 约束;
修改表名:rename table 表名 to 新的表名;
修改表的字符集:alter table 表名 character set 字符集;
最新文章
- cygwin E437
- PHP文件和目录操作-----复制、移动、重命名、删除文件
- C#的Enum——枚举
- What is the difference between supervised learning and unsupervised learning?
- ActionBar 中setDisplayHomeAsUpEnabled和setHomeButtonEnabled和setDisplayShowHomeEnabled方法的理解
- ui线程和后台线程异步
- 基于AE的SimpleGIS框架的搭建
- Android R.layout. 找不到已存在的布局文件
- sb2-admin
- Java面向对象核心技能
- Java 并发编程实践基础 读书笔记: 第二章 构建线程安全应用程序
- window.localStorage的用法
- mac常用操作
- POJ 1222 EXTENDED LIGHTS OUT (熄灯问题)
- Intellij IDEA 生成返回值对象快捷键
- CDQ分治总结(CDQ,树状数组,归并排序)
- .NET面试题系列(十四)锁
- redis事务之watch
- 艰苦的编译boost python (失败)
- Android5.x Notification应用解析
热门文章
- 配置 放上传文件的目录 apache(httpd)
- spl_autoload_register 实现自动加载
- spy++查找窗口句柄
- Java-基础-JDK动态代理
- P4450-双亲数,P5221-Product,P6055-[RC-02]GCD【莫比乌斯反演,杜教筛】
- 从一个舒服的姿势插入 HttpClient 拦截器技能点
- css新增属性之边框
- 使用CEF(一)— 起步
- SharkCTF2021 BabyGame
- 安装pytorch后import torch显示no module named 'torch'