设为首页 加入收藏

TOP

Mysql数据库的二进制安装和基础入门操作(二)
2017-10-16 18:20:04 】 浏览:5372
Tags:Mysql 数据库 二进制 安装 基础 入门 操作
语言,授权限

  GRANT, REVOKE(取消授权)

 

、对数据库的操作

1、查看数据库:show databases;

查看某个数据库中的表:show tables [from database_name] 如果已经在这个库下,不用加from

数据库有information_schema 库,这个库是只读库,只有root特殊权限的用户登录才能看到,不能drop删除

数据库有#mysql50#.mozilla 类似的库的处理方法,因为mysql家目录下有个隐藏文件导致,不能删除

把这些隐藏文件移走就好了

 

2、创建数据库:

CREATE DATABASE(数据库) [IF NOT EXISTS](如果不存在,创建)'DB_NAME'; 创建成功一个,会生成一个表数据库文件

  CHARACTER SET 'character set name' 设置字符集,不推荐设置,不建议调

  COLLATE 'collate name' 设置排序规则,不推荐设置

注意:数据库对象的命名规则

必须以字母开头

可包括数字和三个特殊字符(# _ $)

不要使用MySQL 的保留字

同一Schema(数据库) 下的对象不能同名

 

3、删除数据库

DROP DATABASE [IF EXISTS] 'DB_NAME'; 删除成功,会删除对应的表数据库文件

查看支持所有字符集:SHOW CHARACTER SET; 不需要改

查看支持所有排序规则:SHOW COLLATION; 不需要改

4、获取命令使用帮助:mysql>help create database;

 

例:create database testdb;  创建testdb数据库

drop database testdb;  删除testdb数据库

 

四、创建删除表

1、查看数据库中所有的表:show tables from base_name;

 查看表结构desc tbl_name;

 

2、创建表,依照范式

CREATE TABLE [IF NOT EXISTS] 'tbl_name' (col1 type1 修饰符, col2 type2 修饰符, ...)

字段信息:

? col type1 指定类型

? PRIMARY KEY(col1,...) ()复合主键

? INDEX(col1, ...) 索引

? UNIQUE KEY(col1, ...) 唯一键

表选项:

? ENGINE [=] engine_name (引擎设置,默认就好)

  SHOW ENGINES; 查看支持的engine 引擎类型

? ROW_FORMAT [=] {DEFAULT|DYNAMIC|FIXED|COMPRESSED|REDUNDANT |COMPACT} 行的格式,默认就好

create table students3 select * [id,name] from students; 也可以创建一个表,完全复制另一个表的结构[或自己选择的结构];复制的表没有约束,如主键

insert into students3 select * from students; 有students3这个表,完全复制另一个表的内容

获取创建表的帮助:mysql> HELP CREATE TABLE;

 

3、删除表: DROP TABLE [IF EXISTS] 'tbl_name';

 

4、例子:

例1:CREATE TABLE testdb.students (id int UNSIGNED NOT NULL PRIMARY KEY,name VARCHAR (20) NOT NULL,age tinyint UNSIGNED);

解释:创建testdb库中名为students表;表有3列:id、name、age;id:数据类型int为正、不为空、设为主键;name:数据类型VARCHAR (20)、不为空;age:数据类型tinyint UNSIGNED)

 

例2:create table teachers (id int unsigned not null,name varchar(20) not null,age tinyint unsigned,primary key(id,name));

解释:创建testdb库中名为teachers表;表的复合主键为id和name列;其他和例1一样

例3:create table students3 select *  from students;  创建students3复制students的内容

 

五、DDL语句:修改表结构,尽量不要改表结构,很少用

1、查看表结构:DESC [db_name.]tb_name;

2、修改表结构 alter

ALTER TABLE 'tbl_name'

  字段:

    添加字段:add

      ADD col1 data_type [FIRST加到第一段的后边|AFTER col_name某一段的后边]

    删除字段:drop

    修改字段:change (字段名), modify (字段属性)

    索引:

      添加索引:add

      删除索引: drop

    表选项:

      修改:change

查看帮助:Help ALTER TABLE

 

3、例子:

Help ALTER TABLE 查看帮助

ALTER TABLE students3 RENAME s3; 改表名

ALTER TABLE s3 ADD phone varchar(11) AFTER name; 在s3表的name字段后加一个phone

ALTER TABLE s1 MODIFY phone int; 把phone的数据类型改为int

ALTER TABLE s1 CHANGE COLUMN phone mobile char(11); 把字段phone改名为字段mobile,数据类型为char(11)

ALTER TABLE s1 DROP COLUMN mobile; 删除字段mobile

ALTER TABLE students ADD gender ENUM('m','f') 增加gender字段,为枚举类型,只能是m或f

ALETR TABLE students CHANGE id sid int UNSIGNED NOT NULL PRIMARY KEY; 把修改id字段为sid,数据类型为正int、非空、主键

ALTER TABLE students ADD UNIQUE KEY(name); 在name字段加唯一键

ALTER TABLE students ADD INDEX(age); 在age字段加索引

DESC students; 查看这个表

SHOW INDEXES FROM students; 查看索引信息

ALTER TABLE students DROP age;

 

六、DML语句,修改表内容

1、查看

select * from tab_name [WHERE clause [LIMIT [m,]n];] 查看表中的所有内容,Limit m,n 跳过m行,要n行

select id,name,... from tab_name; 查出指定的表中内容

select count(*) from tab_name; 查看表中的记录数量,count()是自带的函数

 

2、修改表内容:

? INSERT 添加,插入,下有例子

  INSERT [INTO] tbl_name[(col_name,...)] VALUES

首页 上一页 1 2 3 4 下一页 尾页 2/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Oracle控制文件日志文件数据文件.. 下一篇Elasticsearch学习笔记 一

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目