mysql数据库的总体结构_MySQL数据库基本管理

一、基本管理

mysql> SET PASSWORD FOR 'root'@'localhost'=PASSWORD('1234567');

第一次登录修改密码

mysql -u root -p -h 127.0.0.1 -P 3306

| information_schema | 信息概要库

| mysql              | 授权库

| performance_schema | 性能结构库

| test               | 测试库(空库)

(2)切换/使用指定的库

切换到test库:

mysql> USE test;

Database changed

mysql> SELECT DATABASE();  //确认当前所在的库

select user();      //当前登录的用户

(3)创建新的库

新建名为mydb的库,确认结果:

mysql> CREATE DATABASE mydb;

Query OK, 1 row affected (0.03 sec)

mysql> SHOW DATABASES;

新建数据库以后,会为每个数据库建立同名文件夹,可从命令行确认:

[root@dbsvr1 ~]# ls -l var/lib/mysql/{my,new}db/

(4)删除名为newdb的库:

mysql> DROP DATABASE newdb;

(5)查看指定的库里有哪些表

查看test库里有哪些表:

mysql> USE test;

Database changed

mysql> SHOW TABLES;

Empty set (0.00 sec)

(6)查看指定表的字段结构

当前库为mysql,查看columns_priv表的结构,以列表形式展现:

mysql> DESCRIBE columns_priv\G      //末尾不用分号

查看columns_priv表的结构,以表格形式展现:

mysql> DESCRIBE columns_priv;

(7)删除指定的表

删除当前库中的pwlist表:

mysql> DROP TABLE pwlist;

Query OK, 0 rows affected (0.01 sec)

确认删除结果:

mysql> SHOW TABLES;

Empty set (0.00 sec)

(8)在test库中创建一个学员表

表格结构及数据内容如表-1所示。

在MySQL表内存储中文数据时,需要更改字符集(默认为latin1不支持中文),

以便MySQL支持存储中文数据记录;比如,可以在创建库或表的时候,手动

添加“DEFAULT CHARSET=utf8”来更改字符集。

根据上述表格结构,创建支持中文的student表:

mysql> CREATE TABLE test.student(

-> 学号 char(9) NOT NULL,

-> 姓名 varchar(4) NOT NULL,

-> 性别 enum('男','女') NOT NULL,

-> 手机号 char(11) DEFAULT '',

-> 通信地址 varchar(64),

-> PRIMARY KEY(学号)

-> ) DEFAULT CHARSET=utf8;    //手工指定字符集,采用utf8

注意:若要修改MySQL服务的默认字符集,可以更改服务器的my.cnf配置文件

,添加character_set_server=utf8 配置,然后重启数据库服务。

[root@dbsvr1 ~]# vim etc/my.cnf     修改运行服务配置

[mysqld]

.. ..

character_set_server=utf8

[root@dbsvr1 ~]# service mysql restart  //重启服务

mysql> SHOW VARIABLES LIKE 'character%'; 确认更改结果

二:练习各种时间函数的使用

(1)使用now()查看当前的日期和时间

mysql> SELECT now();

(2)使用sysdate()查看系统日期和时间

mysql> SELECT sysdate();

(3)使用curdate()获得当前的日期,不含时间

mysql> SELECT curdate();

(4)使用curtime()获得当前的时间,不含日期

mysql> SELECT curtime();

(5)分别获取当前日期时间中的年份、月份、日

mysql> SELECT year(now()),month(now()),day(now());

(6)获取系统日期时间中的月份、日

mysql> SELECT month(sysdate()),day(sysdate());

(7)获取系统日期时间中的时刻

mysql> SELECT time(sysdate());

三、表结构的调整

(1)添加字段

mysql> ALTER TABLE tea6 ADD address varchar(48);

//添加address字段

(2)在tea6表的age列之后添加一个gender字段

mysql> ALTER TABLE tea6 ADD gender enum('boy','girl') AFTER age;

(3)修改字段名和字段类型

将tea6表的gender字段改名为sex,并添加非空约束

mysql> ALTER TABLE tea6 CHANGE gender

-> sex enum('boy','girl') NOT NULL;

(4)删除字段

删除tea6表中名为sex的字段:

mysql> ALTER TABLE tea6 DROP sex;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值