系统数据库

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;

数据库命名规则:

  1. 可以由字母、数字、下划线、@、#、$
  2. 区分大小写
  3. 唯一性
  4. 不能使用关键字如 create select
  5. 不能单独使用数字
  6. 最长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 ------------删除表

库操作&表操作的更多相关文章

  1. MySQL之库、表操作

    一.库操作 创建库 create database 库名(charset utf8 对库的编码进行设置,不写就用默认值) 库名可以由字母.数字.下划线.特殊字符,要区分大小写,唯一性,不能使用关键字, ...

  2. 第八章| 1. MySQL数据库|库操作|表操作

    1.初识数据库 我们在编写任何程序之前,都需要事先写好基于网络操作一台主机上文件的程序(socket服务端与客户端程序),于是有人将此类程序写成一个 专门的处理软件,这就是mysql等数据库管理软件的 ...

  3. mysql 库与表操作

    1. 库操作 1.1. 创建数据库 语法规则:create database 库名; CREATE DATABASE dt55; 在创建库时,希望指定编码语法:create database 库名 c ...

  4. MySql基础学习-库表操作

    1.创建数据 CREATE DATABASE mysql_study; 2.连接数据库 USE mysql_study 3.创建数据表 CREATE TABLE person( id int auto ...

  5. MySQL用户、库、表(单/多)操作

    用户及权限操作: 管理员登录:mysql -uroot -p 用户设置密码:set password=password(密码); 查看数据库所有用户:select * from mysql.user; ...

  6. 8.3 mysql 表操作

    库操作 一 系统数据库 information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息.列信息.权限信息.字符信息等    performance_sch ...

  7. MysQL使用一创建库与表

    数据库简介 人类在进化的过程中,创造了数字.文字.符号等来进行数据的记录,但是承受着认知能力和创造能力的提升,数据量越来越大,对于数据的记录和准确查找,成为了一个重大难题 计算机诞生后,数据开始在计算 ...

  8. mysql数据表操作&库操作

    首先登陆mysql:mysql -uroot -proot -P3306 -h127.0.0.1 查看所有的库:show databases; 进入一个库:use database; 显示所在的库:s ...

  9. mysql基础之对库表操作

    原文:mysql基础之对库表操作 查看一下所有的库,怎么办? Mysql>Show databases; 选库语句: Use 库名 创建一个数据库: create database 数据库名 [ ...

随机推荐

  1. FragmentTabHost实现标签卡效果

    转载请注明原文链接:http://www.cnblogs.com/yanyojun/p/8099523.html 代码已上传到github:https://github.com/YanYoJun/Fr ...

  2. IE8提速经验

    给人写了个web程序,其中detail页要加载不少东西,所以耗时略长.因为bootstrap的原因,我要求用户使用chrome; 而chrome出了名的快,所以也基本没觉得什么. 后来用户因为别的原因 ...

  3. GPU、CPU的异同

    一.概念 CPU(Center Processing Unit)即中央处理器,GPU(Graphics Processing Unit)即图形处理器. 二.CPU和GPU的相同之处 两者都有总线和外界 ...

  4. SQLite -插入查询

     SQLite -插入查询 SQLite插入语句是用来添加新行数据到数据库中的一个表. 语法: 有两种基本的插入语句的语法如下: INSERT INTO TABLE_NAME (column1, co ...

  5. C3P0连接池工具类实现步骤及方法

    C3P0连接池的工具类 使用C3P0获得连接对象连接池有一个规范接口 javax.sal.DataSourse 接口定义了一个从连接池中获得连接的方法getConnection(); 步骤导入jar包 ...

  6. uva1611 Crane

    类似煎饼,先把1放到1,之后是子问题   (先放到前一半,再放到开头,两次操作)(任何位置,最多一次就可以放到前一半)) #include<iostream> #include<ve ...

  7. 获取指定点的RGB值

    实现效果: 知识运用: Color对象的RGB属性 实现代码: private void button1_Click(object sender, EventArgs e) { OpenFileDia ...

  8. PHP15 Smarty模板

    学习目标 Smarty基本概念 Smarty安装和配置 Smarty模板设计 Smarty流程控制 Smarty基本概念 一种模板引擎,在系统中进行预处理和过滤数据.是主流的PHP模板引擎,此外PHP ...

  9. EBS oracle 批量导入更新MOQ(最小拆分量、采购提前期、最小订购量、最小包装量)

    EXCEL的列:组织id,供应商编号,供应商地点,料号,最小拆分量.采购提前期.最小订购量.最小包装量 --采购导入更新MOQ四个值,若有为空的那列,会保留原来的值,不会去更新那列的值 PROCEDU ...

  10. vue.js中的表单radio,select,textarea的v-model属性的用法

    只要是表单元素,其值已经不会再用value来定义了,但是placeholder还是可以用来设置默认值. section1--input:type="text" type=" ...