您的位置:首页 > 数据库 > MySQL

MYSQL数据库基础知识

2008-06-09 12:18 447 查看
[align=center][/b][/b] [/align]
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[/b]、创建数据库、使用CREATE DATABASE[/b] 来创建数据库的名称 如:CREATE DATABASE ABC
然后使用 show databases[/b];来查看所有可用的数据库
+--------------------+
| Database |
+--------------------+
| information_schema |
| abc |
| library |
| mysql |
| test |
+--------------------+
5 rows in set (0.06 sec)
4[/b]、使用USE[/b]命令来选择想要使用的数据库[/b]、用法如下:USE database-name 这个命令可以更改我们使用那个数据库如 abc test 等
mysql> use abc
Database changed 选择了数据库后,使用SHOW TABLES命令查看里面可用的表
mysql> show tables;
Empty set (0.00 sec) 这个提示说明没有表

5[/b]、添加表 CREATE TABLE [/b]
数据库中用于创建新表的典型命令: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[/b]、mysql> SHOW TABLES;[/b]
+---------------+
| Tables_in_abc |
+---------------+
| membere |
| 总分 |
+---------------+
2 rows in set (0.00 sec) 可以看到我们创建的二个表而且是在数据库ABC下

7[/b]、添加记录[/b]
一旦表创建了,就开始把数据输入表了,命令是INSERT[/b]
语法如下: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 | mxinglun@163.com |
| 2 | liu | chao | 15858600299 | lchao@163.com |
| 3 | xiao | ming | 15598 | lchao@163.com |
+-----------+-------+---------+-------------+------------------+
3 rows in set (0.00 sec)
以类型查询:mysql> select lname from membere;
+---------+
| lname |
+---------+
| xinglun |
| chao |
| ming |
+---------+
3 rows in set (0.00 sec)

9[/b]、mysql> update membere set email ='xming@163.com' where member_id =3;[/b]
Query OK, 1 row affected (0.05 sec)是更改创建时的错误地方
更改后的效果:mysql> select *from membere;
+-----------+-------+---------+-------------+------------------+
| member_id | fname | lname | tel | email |
+-----------+-------+---------+-------------+------------------+
| 1 | meng | xinglun | 136 | mxinglun@163.com |
| 2 | liu | chao | 15858600299 | lchao@163.com |
| 3 | xiao | ming | 15598 | xming@163.com |
+-----------+-------+---------+-------------+------------------+
3 rows in set (0.02 sec)

10[/b]、删除表的记录[/b]
mysql> delete from membere where member_id =3;[/b]
Query OK, 1 row affected (0.01 sec)此命令是删除第3行的记录,效果如下图:mysql> select *from membere;
+-----------+-------+---------+-------------+------------------+
| member_id | fname | lname | tel | email |
+-----------+-------+---------+-------------+------------------+
| 1 | meng | xinglun | 136 | mxinglun@163.com |
| 2 | liu | chao | 15858600299 | lchao@163.com |
+-----------+-------+---------+-------------+------------------+
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));这二个命令有一个是错误的,
本文出自 “点滴记录-系统运维-孟星伦” 博客,请务必保留此出处http://haoyou168.blog.51cto.com/284295/80888
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: