MySQL是什么玩意儿(一)基本操作

1.登录和退出MySQL

Windows系统中,如果在没有设置环境变量PATH的情况下登录MySQL,可以使用Windows命令提示符。在命令提示符界面下,进入MySQL安装目录的bin目录中,使用如下所示的语法格式命令行。

mysql -u user_name -p password -h host

·选项参数-u用来指定用户名user_name

·选项-p用来指定该用户名登录MySQL所使用的密码password

·选项-h用来指定所要连接的数据库服务器host

==通常user_name是root用户,root表示MySQL的超级用户,它拥有操作MySQL的最高权限==

==如果要退出MySQL,可以在MySQL提示符下输入命令exit或quit

2.建立和删除数据库

    要使用MySQL,首先需要创建一个数据库。在MySQL中,使用命令show databases(可以全部使用小写字母)可以查看在当前MySQL系统中的所有数据库。

通过这个命令,MySQL会列出当前所有的数据库。当前MySQL中有两个数据库:数据库mysql是MySQL的系统数据库;数据库test是MySQL自带的供用户学习、测试使用的数据库test。

    在MySQL中使用语句CREATE创建一个数据库,该语句的用法如下

CREATE DATABASE database_name;

    其中database_name 是要创建的数据库的名字,有用户自行命名。MySQL中,SQL语句必须以分号结束。

CREATE DATABASE test_db;

如果语句执行成功,MySQL会有类似于这样的信息:Query OK,1 row affected(0.03sec)表示数据库创建成功。如果需要删除一个数据库,可以使用DROP语句,该语句的用法如下所示

DROP DATABASE database_name

3.表的建立

    在MySQL中,首先使用命令USE database_name,可以转到要管理或查看信息的数据库,其中database_name是数据库名称,然后使用SHOW TABLES命令查看某个数据库下的所有表。

    在一个数据库中创建表,首先要使用USE语句转到该数据库,然后使用CREATE TABLES语句创建表,该语句用法如下所示

CREATE TABLE table_name(
column_1 type [modifiers]
[, column_2 type [modifiers]]
...
);
    其中table_name是所要创建的表的名称。column_1是表的第一列,即第一个字段的名字,type是该字段的类型,其后是可选项,对该字段的进一步说明。每一个列创建语句后必须以逗号(,)结尾,最后一个除外。整个CREATE TABLE语句以分号结束。

CREATE TABLE Users(
UserId INT UNSIGNED NOT NULL,
UserName VARCHAR(50) NOT NULL,
Gender CHAR(6) NOT NULL DEFAULT 'Male',
RegTime DATE NOT NULL
);
这个语句创建一个名为Users的表,它有4列(即4个字段):UserId、UserName、Gender和RegTime。每个字段后都有该字段的类型,后面是对其做进一步说明的修饰符。以字段Gender为例加以说明,Gender是该字段的名字,它的类型是CHAR,表示定长字符串类型,6表示该字段最多储存6个字符,如果字符串超过6个字符,多余部分将被截去,不会存入表中。后面的NOT NULL,表示该字段不能存入任何Null值。最后的DEFAULT指定一个字段的默认值,DEFAULT ‘Male’表示当向该字段存入null值时,Gender一列将被指定为默认值Male。

==在这个语句中,除了使用CHAR类型的字段外,还是用了VARCHAR类型。VARCHAR是指变长字符串。VARCHAR表示的长度在1到255之间,定义为VARCHAR的列,只存储所需长度的字符。而CHAR正好相反,无论字符串多长,它都会存入定长字符串,不足的部分会用空格填满后存入。==

 4.建立索引

如果一个表的数据量很大,例如有上百万行的时候,MySQL查找某条(或某些)特定的纪录时会花费很长时间。可以通过在表中建立索引,来减少MySQL查找记录所使用的时间。索引最有效的使用方法是,为那些要频繁查找的字段建立索引。MySQL使用下面的语法为一个表中的某些列(即字段)建立索引。

CREATE INDEX index_name ON table_name
(column_1,
column_2,
...
)
某种INDEX是表示建立索引的关键字,index_name是索引名称。也可以在创建表的同时,为表指定索引。

CREATE TABLE books(
id INT NOT NULL,
name VARCHAR(40) NOT NULL,
price DECIMAL(3,2),
INDEX idx (id)
);
这段SQL语句为表books的字段id指定了一个名叫inx的索引

==应该将所有建立索引的字段声明为NOT NULL==

另外,MySQL支持主键这种特殊索引。在MySQL中,主键是带有名称PRIMARY的唯一键。在创建表时,可以将某列设为主键。例如下面的示例语句创建了带有主键id的表users.

CREATE TABLE users(
id INT NOT NULL PRIMARY KEY,
name VARCHAR(30),
created_time DATE
)





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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值