Mysql入门学习
2015-04-14 16:10
609 查看
建库
CREATE DATABASE DB;
引用库
USE bankDB;
建表
##创建用户表 ##drop TABLE user_info CREATE TABLE IF NOT EXISTS user_info( user_id INT AUTO_INCREMENT PRIMARY KEY, user_name NVARCHAR(30), user_sex NVARCHAR(4) ); ##创建用户卡类型表 ##drop TABLE card_type CREATE TABLE IF NOT EXISTS card_type( usertype_id INT AUTO_INCREMENT PRIMARY KEY, usertype_Name NVARCHAR(30) ); ##创建用户卡信息表 ##DROP TABLE user_card CREATE TABLE IF NOT EXISTS user_card( usercard_id INT AUTO_INCREMENT PRIMARY KEY, usercard_number NVARCHAR(30), usercard_pwd INT, usercard_remark TEXT, usertype_id INT,#外键user_type user_id INT,#外键user_info FOREIGN KEY(usertype_id) REFERENCES card_type(usertype_id) ON DELETE CASCADE,##创建外键关系语句 FOREIGN KEY(user_id) REFERENCES user_info(user_id) ON DELETE CASCADE ##创建外键关系语句 ) engine=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci AUTO_INCREMENT=5;##外键事务引擎,数据库字符集,数据库校对规则
录入表数据
##录入用户信息数据 INSERT INTO user_info VALUES (NULL,'张三0','男'); INSERT INTO user_info VALUES (NULL,'张三1','女'); INSERT INTO user_info VALUES (NULL,'张三2','男'); INSERT INTO user_info VALUES (NULL,'张三3','男'); INSERT INTO user_info VALUES (NULL,'张三4','男'); INSERT INTO user_info VALUES (NULL,'张三5','男'); INSERT INTO user_info VALUES (NULL,'张三6','女'); INSERT INTO user_info VALUES (NULL,'张三7','女'); ##录入用户卡类型数据 INSERT INTO card_type VALUES (NULL,'信贷卡'); INSERT INTO card_type VALUES (NULL,'借记卡'); INSERT INTO card_type VALUES (NULL,'消费卡'); ##录入用户卡数据 INSERT INTO user_card VALUES (NULL,'500226198705088574',123456,'备注',1,1); INSERT INTO user_card VALUES (NULL,'500226199995088574',123456,'备注',2,1); INSERT INTO user_card VALUES (NULL,'500226155505088574',123456,'备注',3,1); INSERT INTO user_card VALUES (NULL,'500226198705088574',123456,'备注',1,2); INSERT INTO user_card VALUES (NULL,'500226777705088574',123456,'备注',1,3); INSERT INTO user_card VALUES (NULL,'500226192115088574',123456,'备注',1,4); INSERT INTO user_card VALUES (NULL,'500226097050488574',123456,'备注',1,6); INSERT INTO user_card VALUES (NULL,'500226777705088574',123456,'备注',2,3); INSERT INTO user_card VALUES (NULL,'500226192115088574',123456,'备注',3,4); INSERT INTO user_card VALUES (NULL,'500226097050488574',123456,'备注',1,8);
数据查询
##分别查询每张表的所有数据 SELECT * FROM user_info; SELECT * FROM card_type; SELECT * FROM user_card; ##查询三张表的所有数据 SELECT * FROM user_info,user_card,card_type ; ######查询卡:信贷卡的用户信息记录####### ##方法一: SELECT user_info.user_id,user_info.user_name,user_info.user_sex FROM user_info,user_card,card_type WHERE user_info.user_id=user_card.user_id AND user_card.usertype_id=card_type.usertype_id AND card_type.usertype_Name='信贷卡'; ##方法二 SELECT * FROM user_info WHERE user_id IN( SELECT user_id FROM user_card WHERE usertype_id =( SELECT usertype_id FROM card_type WHERE usertype_Name='信贷卡') ); ##左连接(以user_info为显示基础,user_card没有符合条件则以null填充显示) SELECT DISTINCT * FROM user_info LEFT JOIN user_card ON user_info.user_id=user_card.user_id; ##右连接(与上面相反) SELECT DISTINCT * FROM user_info RIGHT JOIN user_card ON user_info.user_id=user_card.user_id; ##内连接(ON等同于where) SELECT DISTINCT * FROM user_info INNER JOIN user_card ON user_info.user_id=user_card.user_id;
附录
1.判断表是否存在IF NOT EXISTS 例:CREATE TABLE IF NOT EXISTS 表名
2.标识自增列(一般设置主键)
AUTO_INCREMENT 例: user_id INT AUTO_INCREMENT
3.标识主键
PRIMARY KEY 例: user_id INT PRIMARY KEY
4.标识外键(4,5,6一般一起使用)
FOREIGN KEY 例:FOREIGN KEY(要设置的外键字段)
5.外键引用(4,5,6一般一起使用)
REFERENCES 例:REFERENCES 表名(关联字段)
6.设置级联删除(4,5,6一般一起使用)
ON DELETE CASCADE 例: FOREIGN KEY(usertype_id) REFERENCES card_type(usertype_id) ON DELETE CASCADE
7.设置外键处理引擎(设置在表后面,见表user_card)
ENGINE=InnoDB 例:ENGINE=InnoDB
8.设置外键字符集(设置在表后面,见表user_card)
CHARACTER SET utf8 例: CHARACTER SET utf8
9.设置数据库校对规则(设置在表后面,见表user_card)
COLLATE utf8_general_ci AUTO_INCREMENT=5 例:COLLATE utf8_general_ci AUTO_INCREMENT=5 例:ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci AUTO_INCREMENT=5
相关文章推荐
- MYSQL入门学习之一:基本操作
- 零基础入门学习MySQL 001
- Mysql 入门学习
- MySQL入门学习(六)
- MySQL入门学习(五)多表操作篇
- php入门学习知识点一 PHP与MYSql连接与查询
- Mysql入门学习
- Mysql入门学习(5) 之go操作mysql
- MYSQL入门学习之四:MYSQL的数据类型
- LINUX下QT+MYSQL学习笔记-基本入门过程
- 【MySQL】MySQL无基础学习和入门之二:MySQL的安装
- 【转】MYSQL入门学习之二:使用正则表达式搜索
- Clojure 学习入门(7)—— 连接mysql
- 【转】MYSQL入门学习之十:视图的基本操作
- MySQL入门学习时,所遇到的问题(1)
- MYSQL入门学习之二:使用正则表达式搜索
- MYSQL入门学习之十二:存储过程的基本操作
- MYSQL入门学习之二十二:MySQL物理文件 之 日志文件
- MySQL入门学习(1):
- 学习mysql的笔记:mysql十大基本入门语句