数据库SQL学习笔记(一)
一 常用操作:
退出:在你成功地连接后,你可以在mysql>提示下打入QUIT随时断开:
mysql> QUIT;
创建数据库
命令:CREATE DATABASE <数据库名>
例如,建立一个名为 test 的数据库
mysql> CREATE DATABASE test;
删除数据库
命令: DROP DATABASE <数据库名>
例如,删除名为 test 的数据库
mysql> DROP DATABASE test;
连接数据库
命令: USE <数据库名>
例如,如果test数据库存在,尝试存取它:
mysql> USE test;
屏幕提示:
Database changed
建表
命令:CREATE TABLE <表名> ( <字段名1> <类型1> [,..<字段名n> <类型n>]);
例如,建立一个名为table_1的表,此表记录班上的人员及平均成绩,那么用字段 id 代表编号,为数字类型,且编号唯一,不能为空, 缺省值为 0 ; 用字段 name 代表人名,为字符型,不为空;用字段 degree 代表成绩,为数字型,可为空。编号id 为此表的关键字。建表如下:
mysql> CREATE TABLE table_1 (
> id INT(4) DEFAULT '0' NOT NULL,
> name CHAR(20) NOT NULL,
> degree DOUBLE(16,2) ,
> PRIMARY KEY(id));//每个变量后用,号隔开 每条语句用;号结束。
删除表
命令:DROP TABLE <表名>
例如,删除表名为 table_1 的表
mysql> DROP TABLE table_1;
MYSQL>DROP INDEX Stusname ON Student;
插入数据
命令:INSERT INTO <表名> [( <字段名1>[,..<字段名n > ])]
VALUES ( 值1 )[, ( 值n )]
例如,往表 test 中插入二条记录, 这二条记录表示:编号为1的名为joan 的成绩为96.45, 编号为2 的名为jeanny 的成绩为82.99.
mysql> INSERT INTO test VALUES(1,'joan',96.45),(2,'jeanny',82.99);
查询表中的数据
命令: SELECT <字段1,字段2,...> FROM < 表名 > WHERE < 表达式 >
例如,查看表 test 中所有数据
mysql> SELECT * FROM test;
屏幕显示:
+----+-------------+----------+
| id | name | degree |
+----+-------------+----------+
| 1 | joan | 96.45 |
| 2 | jeanny | 82.99 |
+----+-------------+----------+
b
(
删除表中数据
一删除一个元组:
命令: DELETE FROM < 表名 > WHERE < 表达式 >
例如,删除表 test 中编号为1 的记录
mysql> DELETE FROM test WHERE id=1;
二 字段类型:
1. INT[(M)]
正常大小整数类型
2. DOUBLE[(M,D)] [ZEROFILL]
正常大小(双精密)浮点数字类型
3. DATE
日期类型。支持的范围是1000-01-01到9999-12-31。MySQL以YYYY-MM-DD格式来显示DATE值,但是允许你使用字符串或数字把值赋给DATE列
4. CHAR(M)
定长字符串类型,当存储时,总是是用空格填满右边到指定的长度
5. BLOB TEXT
BLOB或TEXT类型,最大长度为65535(2^16-1)个字符。
6. VARCHAR
三 变长字符串类型:
1: 显示数据库 SHOW DATABAS,
2:当前选择的数据库,
mysql> SELECT DATABASE();
+------------+
| DATABASE() |
+------------+
| test ;
+------------+
| DATABASE() |
+------------+
| test |
+------------+
3: 当前数据库包含的表信息:
mysql> SHOW TABLES;
+---------------------+
| Tables in test
mysql> SHOW TABLES;
+---------------------+
| Tables in test |
+---------------------+
| mytable1 |
| mytable2 |
+---------------------+
4: 获取表结构
mysql> desc mytable1;
+---------+-------------+------+-----+---------+-------+
| Field mysql> desc mytable1;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| s1 | varchar(20) | YES |NULL | |
+---------------------+------+-----+---------+-------+