MYSQL数据库基础知识

 
1 、修改 MYSQL root 用户口令:
UXIX 中使用下面的语句: [root@host]#/uer/local/mysql/bin/mysqladmin -u root password '<new-password>
windows 下修改方法如下: c:\>c:\program files\mysql\bin\mysqladmin -u root password <new-password>
2 、每个 SQL 语句都以分号结束,并且 SQL 处理器忽略空格、制表符和回车符。如下面所示: DELETE FROM catalog WNERE productionStatos="Revoked"
DELETE FROM
catalog
WNERE productionSta_us =
"Revcked";
每个数据库由一个或者多个表组成,这些表在行和列中构造数据,使数据变得有组织。
 
3 、创建数据库、使用CREATE DATABASE 来创建数据库的名称 如: CREATE DATABASE ABC
然后使用 show databases ; 来查看所有可用的数据库
+--------------------+
| Database           |
+--------------------+
| information_schema |
| abc                |
| library            |
| mysql              |
| test               |
+--------------------+
     5 rows in set (0.06 sec)
4 、使用USE 命令来选择想要使用的数据库 、用法如下: USE database-name 这个命令可以更改我们使用那个数据库如 abc test
mysql> use abc
Database changed  选择了数据库后,使用 SHOW TABLES 命令查看里面可用的表
mysql> show tables;
Empty set (0.00 sec) 这个提示说明没有表
 
5 、添加表 CREATE TABLE
数据库中用于创建新表的典型命令: CREATE TABLE table name (field-name-1 field-type-1 modifiers, field-name-2 field-type-2 modifiers,.... field-name-n field-type-n modifiers) 一此类推、表的名子中不能包含空格、斜线和句号,除此之外,任何字符都是允许的。
 
mysql> create table membere (member_id int(11) not null auto_increment,fname var
char(50) not null, lname varchar(50) not null, tel varchar(15),email varchar(50)
 not null, primary key (member_id));
Query OK, 0 rows affected (0.17 sec) 以上命令是创建成员表的、注意,每个字段名后面紧跟一个“类型”这样确定了这个字段所允许输入的数据的类型并且可以用一个长度值标志这个字段的最大长度。定义用户类型所输入的最大数据字段。如: int(11) 说明最大字段是 11
primary key 是指定主键的命令
mysql> create table 总分 ( 总分 int(5) not null auto_increment, 语文 varchar(5) no
t null, 英语 varchar(5) not null, primary key ( 总分 ));
Query OK, 0 rows affected (0.08 sec) 是创建的第二个表
 
 
mysql> create table 成绩表 ( 总分 int(5) not null auto_increment, 语文 varchar(5)
not null, 英语 varchar(5) not null, primary key ( 总分 ));
此命令是一个错误的
 
 
6 mysql> SHOW TABLES;
+---------------+
| Tables_in_abc |
+---------------+
| membere       |
| 总分           |
+---------------+
2 rows in set (0.00 sec) 可以看到我们创建的二个表而且是在数据库 ABC
 
7 、添加记录
一旦表创建了,就开始把数据输入表了,命令是INSERT
语法如下: INSERT into table-name (field-name-1, field-name-2, field-name-n)values(value-1, value-2 value-n)
 
mysql> insert into membere values (null, 'meng', 'xinglun', '136', 'mxinglun@163
.com');
Query OK, 1 row affected (0.08 sec) 这个就是添加一个记录
 
mysql> insert into membere values (null, 'liu', 'chao', '15858600299', 'lchao@16
3.com');
Query OK, 1 row affected (0.03 sec) 是第二条记录
 
8 、执行查询如下: mysql> select *from membere;
+-----------+-------+---------+-------------+------------------+
| member_id | fname | lname   | tel         | email            |
+-----------+-------+---------+-------------+------------------+
|         1 | meng  | xinglun | 136         | [email protected] |
|         2 | liu   | chao    | 15858600299 | [email protected]    |
|         3 | xiao  | ming    | 15598       | [email protected]    |
+-----------+-------+---------+-------------+------------------+
3 rows in set (0.00 sec)
以类型查询: mysql> select lname from membere;
+---------+
| lname   |
+---------+
| xinglun |
| chao    |
| ming    |
+---------+
3 rows in set (0.00 sec)
 
9 mysql> update membere set email ='[email protected]' where member_id =3;
Query OK, 1 row affected (0.05 sec) 是更改创建时的错误地方
更改后的效果: mysql> select *from membere;
+-----------+-------+---------+-------------+------------------+
| member_id | fname | lname   | tel         | email            |
+-----------+-------+---------+-------------+------------------+
|         1 | meng  | xinglun | 136         | [email protected] |
|         2 | liu   | chao    | 15858600299 | [email protected]    |
|         3 | xiao  | ming    | 15598       | [email protected]    |
+-----------+-------+---------+-------------+------------------+
3 rows in set (0.02 sec)
 
10 、删除表的记录
mysql> delete from membere where member_id =3;
Query OK, 1 row affected (0.01 sec) 此命令是删除第 3 行的记录,效果如下图: mysql> select *from membere;
+-----------+-------+---------+-------------+------------------+
| member_id | fname | lname   | tel         | email            |
+-----------+-------+---------+-------------+------------------+
|         1 | meng  | xinglun | 136         | [email protected] |
|         2 | liu   | chao    | 15858600299 | [email protected]    |
+-----------+-------+---------+-------------+------------------+
2 rows in set (0.00 sec)
mysql>delete from membere; 是删除 MEMBERE 整个表的信息记录
 
mysql> drop table 总分 ;
Query OK, 0 rows affected (0.06 sec) 此命令是删除表 如下图: mysql> show tables;
+---------------+
| Tables_in_abc |
+---------------+
| membere       |
+---------------+
1 row in set (0.00 sec) 已经没有总分的表了
 
 
 
添加表
 
mysql> create table status (status int(5) not null auto_increment, name varchar(
10) not null, english varchar(5) not null, primary key (status));
 
mysql> create table status (name int(5) not null auto_increment, status varchar(
10) not null, english varchar(5) not null, primary key (status)); 这二个命令有一个是错误的,
 

你可能感兴趣的:(数据库,mysql,职场,休闲)