库操作&表操作
系统数据库
ps:系统数据库:
mysql 授权库,主要存储系统用户的 权限信息
test MySQL数据库系统自动创建的 测试数据库
ination_schema
虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息、列信息、权限信息、字符信息等.
说得简单点,ination_schema这张数据表保存了MySQL服务器所有数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等。再简单点,这台MySQL服务器上,到底有哪些数据库、各个数据库有哪些表,每张表的字段类型是什么,各个数据库要什么权限才能访问,等等信息都保存在ination_schema表里面。
命令行提示符:

help--帮助语法
如果忘记某个SQL语法,可以通过help查询,当然不只是SQL语句的语法
例如:help create database;

数据库操作
1、查看数据库
show databases; -----------查看所有的数据库 show create database db_name; ------查看库的 创建属性 select database(); --------显示当前在哪个数据库下
2、创建数据库
create database db_name; ---------------------------创建数据库(默认utf8)
create database db_name character set=utf8; ------创建数据库(指定编码集)
create database db_name default character set=utf8
create database 数据库名 charset utf8;
数据库命名规则:
- 可以由字母、数字、下划线、@、#、$
- 区分大小写
- 唯一性
- 不能使用关键字如 create select
- 不能单独使用数字
- 最长128位
3、进入(使用)数据库
use db_name; -------------------进入db_name数据库
4、修改数据库
alter database db_name charset utf8;
5、删除数据库
drop database db_name; -------------------------删除数据库
(注意:后面的(;)号)
表操作
表:表相当于文件,表中的一条记录就相当于文件的一行内容,不同的是,表中的一条记录有对应的标题,称为表的字段

s_id, s_name, s_age, s_sex, 称为字段, 一行内容称为一条记录
1、创建表
语法:
create table 表名(
字段名1 类型[(宽度) 约束条件],
字段名2 类型[(宽度) 约束条件],
字段名3 类型[(宽度) 约束条件]
);
注意:
1. 在同一张表中,字段名是不能相同
2. 宽度和约束条件可选
3. 字段名和类型是必须的
创建表格:
create table tb_name(
id int auto_increment primary key #列名,整型,不能为空,自动递增,唯一性,主键 (主键:不能为空,不能重复,语法上不能修改)
name varchar(10) not null comment '用户名' #列名,字符串(最大长度),不能为空 comment ‘str’ 添加字段注释
age int not null default 0 #default 0 设置列的默认值
sex enum('male','female'), #枚举,只能从后面的值中选择
)engine=InnoDB //设置表的存储引擎,一般常用InnoDB和MyISAM;InnoDB可靠,支持事务;MyISAM高效不支持全文检索
default charset=utf8; //设置默认的编码,防止数据库中文乱码
如果是有条件的创建数据表还可以使用 CREATE TABLE IF NOT EXISTS tb_name(........ #如果表tb_name不存在,就创建
2、查看表
查看所有表格:
show tables; ----------------查看db_name数据库中所有的表
查看一个表格所有字段属性
desc 表名; ------------------查看表所有字段属性配置
3、修改表
alter table...
语法:
1. 修改表名
alter table 表名
rename 新表名; 2. 增加字段
alter table 表名
add 字段名 数据类型 [完整性约束条件…],
add 字段名 数据类型 [完整性约束条件…]; ##在后面顺序添加字段 alter table 表名
add 字段名 数据类型 [完整性约束条件…] first; ##在最前面添加字段
alter table 表名
add 字段名 数据类型 [完整性约束条件…] after 字段名1; ##在字段1后面添加字段 3. 修改字段
alter table 表名
modify 字段名 数据类型 [完整性约束条件…]; (##只能改字段的属性,改不了字段名) alter table 表名
change 旧字段名 新字段名 旧数据类型 [完整性约束条件…]; (##连字段名字都能改) alter table 表名
change 旧字段名 新字段名 新数据类型 [完整性约束条件…]; 4. 删除字段
alter table 表名
drop 字段名;
外键添加和删除:
// 添加:
mysql>alter table tb_product add constraint fk_1 foreign key(factoryid) references tb_factory(factoryid);
mysql>alter table <表名> add constraint <外键名> foreign key<字段名> REFERENCES <外表表名><字段名>; // 删除:
mysql>alter table tb_people drop foreign key fk_1;
mysql>alter table <表名> drop foreign key <外键名>;
4、复制表
1)复制表结构+记录 (key不会复制: 主键、外键和索引)
mysql> create table new_table select * from service;
2)只复制表结构
▼1
mysql> select * from service where 1=2; //条件为假,查不到任何记录
Empty set (0.00 sec)
mysql> create table 新表名 select * from 表 where 1=2;
Query OK, 0 rows affected (0.00 sec)
Records: 0 Duplicates: 0 Warnings: 0
▼2
mysql> create table 新表名 like 表名; //复制主键...
5、删除表
drop table tb_name ------------删除表
库操作&表操作的更多相关文章
- MySQL之库、表操作
一.库操作 创建库 create database 库名(charset utf8 对库的编码进行设置,不写就用默认值) 库名可以由字母.数字.下划线.特殊字符,要区分大小写,唯一性,不能使用关键字, ...
- 第八章| 1. MySQL数据库|库操作|表操作
1.初识数据库 我们在编写任何程序之前,都需要事先写好基于网络操作一台主机上文件的程序(socket服务端与客户端程序),于是有人将此类程序写成一个 专门的处理软件,这就是mysql等数据库管理软件的 ...
- mysql 库与表操作
1. 库操作 1.1. 创建数据库 语法规则:create database 库名; CREATE DATABASE dt55; 在创建库时,希望指定编码语法:create database 库名 c ...
- MySql基础学习-库表操作
1.创建数据 CREATE DATABASE mysql_study; 2.连接数据库 USE mysql_study 3.创建数据表 CREATE TABLE person( id int auto ...
- MySQL用户、库、表(单/多)操作
用户及权限操作: 管理员登录:mysql -uroot -p 用户设置密码:set password=password(密码); 查看数据库所有用户:select * from mysql.user; ...
- 8.3 mysql 表操作
库操作 一 系统数据库 information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息.列信息.权限信息.字符信息等 performance_sch ...
- MysQL使用一创建库与表
数据库简介 人类在进化的过程中,创造了数字.文字.符号等来进行数据的记录,但是承受着认知能力和创造能力的提升,数据量越来越大,对于数据的记录和准确查找,成为了一个重大难题 计算机诞生后,数据开始在计算 ...
- mysql数据表操作&库操作
首先登陆mysql:mysql -uroot -proot -P3306 -h127.0.0.1 查看所有的库:show databases; 进入一个库:use database; 显示所在的库:s ...
- mysql基础之对库表操作
原文:mysql基础之对库表操作 查看一下所有的库,怎么办? Mysql>Show databases; 选库语句: Use 库名 创建一个数据库: create database 数据库名 [ ...
随机推荐
- Android小玩意儿-- 从头开发一个正经的MusicPlayer(二)
1·在Service中实例化MusicPlayer,实现对整个播放过程的控制 上一次做到了找到音乐数据,并封装成对象装在ArrayList里,把数据的信息显示在UI上.下面一个阶段就要开始真正的音乐播 ...
- MyBatis学习(四)
前言 最近比较松懈,下班回家后也懒得学习了.今晚实在是看不下去了,争取时间学习.社会上有这么多的资源,就看谁能抢的多吧.今天就说说MyBatis的动态SQL吧 正文 动态 SQL 通常要做的事情是有条 ...
- CATransaction 知识
CATransaction 事务类,可以对多个layer的属性同时进行修改.它分隐式事务,和显式事务. 区分隐式动画和隐式事务:隐式动画通过隐式事务实现动画 . 区分显式动画和显式事务:显式动画有多种 ...
- Unity3D_最简单的开始界面_结束界面
开始界面1.创建一个新的场景添加button 2.C#脚本LoadingGame.cs using System.Collections;using System.Collections.Generi ...
- 使用正则进行HTML页面属性的替换
使用正则表达式拼接富文本框 package com.goboosoft.common.utils; import org.apache.commons.lang3.StringUtils; impor ...
- 什么是WebSocket (经常听别人讲感觉很高大上其实不然)
WebSocket 协议在2008年诞生,2011年成为国际标准.现在所有浏览器都已经支持了.WebSocket 的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真 ...
- uva10570 Meeting with Aliens
先证明把每次i放到i位置最后次数最少:感觉,可以,用归纳法? //在序列后再加一个相同的序列,就可以模拟用各个数字开头的情况了每个位置不对的只需要换一次54123 ,5固定->41235变成12 ...
- 暑假集训 || LCA && RMQ
LCA定义为对于一颗树 树上两个点的最近公共祖先 一.Tarjan求LCA(离线方法 https://blog.csdn.net/lw277232240/article/details/7701751 ...
- freemarker特殊字符输出
期望输出: #{fefefefwewrerwerwrrrre}${fffqqqwwwwwwwwwwwwwwww} 但是以上解析ftl时候会报错!!!!!!!!!!!! 解决办法: 方法1:使用${r& ...
- JSP页面通过c:forEach标签循环遍历List集合
c:forEach>标签有如下属性: 属性 描述 是否必要 默认值items 要被循环的信息 否 无begin 开始的元素(0=第一个元素,1=第二个元素) 否 0end 最后一个元素(0=第一 ...