Mysql数据库

Posted ydqq

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql数据库相关的知识,希望对你有一定的参考价值。

mysql介绍

mysql数据库是一个典型的 C/S(客户端/服务器)架构的应用,要访问mysql数据库需要使用专门的客户端软件:windows 可以用mysql manager等其他软件。linux中可以用到最简单易用的mysql自带的mysql命令工具。
数据库安装这里就不写了,网上一搜一大堆。

访问MySql数据库

登录到mysql服务器
经过安装后的初始化过程,;mysql的默认管理账号为root,密码为空,若要用root登录mysql,执行以下操作。

# mysql -u root        //  -u 制定用户
登录已经配置好的mysql服务器,需要制定服务器地址,用户,和密码。示例如下:
# mysql -h 192.168.1.147 -u root -p
# Enter password:
参数:
-h    //指定服务器地址
-u    //指定用户
-p    //指定要输入密码

进入mysql> 操作环境就可以各种操作语句了,每一条语句以分号”;“表示结束,输入时可以不区分大小写,但是习惯上来说最好区分大小写。

退出”mysql>“操作环境

mysql> quit      //或exit
Bye

查看MySQL数据库

数据库结构:每一台mysql中,支持运行多个库,每个库相当于一个容器,其中存放了大量的表。

查看当前服务器中有哪些库

SHOW DATABASES

mysql默认会创建三个库:test , mysql information_schema (其中mysql库中包含了用户认证相关的表)

查看当前使用的库中有哪些表

查看之前要先用 USE 切换到要查看的库

mysql> USE mysql;
mysql> SHOW TABLES;

MySQL数据库的数据文件默认存放在 /usr/local/mysql/var/ 目录下,每个数据库对应一个子目录,用于存储数据表文件。每个数据表对应三个文件,后缀名分别为 : .frm .MYD .MYI

查看表的结构

DESCRIBE 表名;

mysql> USE dfwy;    //切换到指定的库中
mysql> DESCRIBE rb_hyfl;    //命令后面跟表名

其他查看表的命令(记住一个就行):

DESC 表名;
show create table 表名;

创建,删除:库/表

创建新的库

CREATE DATABASE 库名 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
CREATE DATABASE 库名 DEFAULT CHARSET SET gbk COLLATE utf8_chinese_ci;
CREATE DATABASE 用户创建新的库,需指定库名作为参数。

新创建的库里面没有任何表,在/usr/local/mysql/var/目录下会自动生成一个与新建的库名相同的空文件夹。

删除库

DROP DATABASE 库名

创建表
创建表格之前,首先要确认将要创建的表格的结构。

CREATE TABLE 表名

CREATE TABLE语句:用于在当前库中创建新的表,需指定数据表名称作为参数,并定义该表格所使用的各字段。

格式:

格式:
CREATE TABLE 表名 (列名 数据类型 是否为空 默认值 自增,
                   列名 数据类型 是否为空 默认值,
                   PRIMARY KEY(列名)
)

列属性:

是否为空:
null标识空,not null 不可空,null 可空。
自增:
自增列必须是主键,两者不可分离。
auto_increment
主键:
primary key    或  primary key(nid,num)

例子:

create table tb1(
                nid int not null auto_increment primary key,
                num int null
            )
            或
            create table tb1(
                nid int not null auto_increment,
                num int null,
                index(nid)
            )

删除表

DROP TABLE 库名.表名;

mysql> DROP TABLE shaa.ddd;
Query OK, 0 rows affected (0.03 sec)

DROP TABLE 语句:用于删除库中的表,需要制定”库名.表名”作为参数;若只指定表名参数,则需先通过”USE“语句切换到目标库。

清空表

delete from 表名;
truncate table 表名;

修改表

添加列:
    alter table 表名 add 列名 类型
删除列:
    alter table 表名 drop column 列名
修改列:
    alter table 表名 modify column 列名 类型;
    alter table 表名 change 原列名 新列名字 类型;
添加主键:
    alter table 表名 add primary key(列名);
删除主键:
    alter table 表名 drop primary key;
    alter table 表名 modify 列名 int, drop primary key;
添加外键:
    alter table 从表 add constraint 外键名称(规范:FK_从表_主表) foreign key 从表(外键字段) references 主表(主键字段);

删除外键:
    alter table 表名 drop foreign key 外键名称;

数据:增,改,查,删

插入数据

INSERT INTO 表名 (字段1,字段2,......) VALUES(字段1的值,字段2的值),(字段1的值,字段2的值);

操作:

mysql> USE dd
mysql> INSERT INTO aaa(user_name,department) VALUES('dyq','IT');

在插入新数据时,如果这条记录完整包括表中的所有字段的值,则插入语句中指定字段的部分可以省略。

INSERT INTO aaa VALUES('ersha','hr');

查询数据
SELECT语句:用于从指定的表中查找符合条件的数据记录,mysql数据库支持标准的SQL查询语句。

格式:

SELECT 字段名1,字段名2...... FROM 表名 WHERE 条件表达式

表示所有字段时可以使用通配符“*”,若要列出所有额数据记录则可以省略WHERE 条件子句。

例:

mysql> SELECT * from aaa;
mysql> SELECT user_name,department FROM aaa WHERE user_name= 'dyq';

修改数据
UPDATE 语句:用于修改,更新表中的数据记录。

格式:

UPDATE 表名 SET 字段1=字段值1,字段名2=字段值2...... WHERE 条件表达式;

例:

mysql> UPDATE dd.aaa SET department='project' WHERE user_name='dyq';

注:
列表名称要写全,包括库名.表名。指定数据是要用单引号” 括住。

删除数据
DELETE语句:用于删除表中指定的数据记录。

格式:

DELETE FROM 表名 WHERE 条件表达式;

例:

mysql> DELETE FROM aaa WHERE user_name='shaer';
mysql> SELECT * FROM aaa;    //查看验证。

以上是关于Mysql数据库的主要内容,如果未能解决你的问题,请参考以下文章

Java Web之会话管理一: 使用Cookie进行会话管理

这家边缘计算公司又获数千万元融资

POJ 1742 Coins ( 经典多重部分和问题 && DP || 多重背包 )

60%收入来自海外,VC追着投资,这匹千里马如此回答“AI往何处去”

MySQL数据库学习导航

MySQL数据库学习导航