学习MySQL之数据库操作(一)
所有代码,均为自学时用到的测试与注释,知识细节或知识点不会面面俱到,亦不会有任何讲解,只做为自己学习复习用。
##数据库操作 ##创建数据库 myTest ,并将数据库字符集设为GBK
CREATE DATABASE myTest CHARSET gbk; ##进入数据库 myTest
USE myTest ; ##创建数据库表 t_dept,并将表的字符集设为GBK,同时,char和test字段的字符集,自动变为gbk
CREATE TABLE t_dept (
deptno INT (11) AUTO_INCREMENT, ##设置自增
dname VARCHAR (20) NOT NULL, ##设置
loc VARCHAR (200),
CONSTRAINT pk_deptno PRIMARY KEY (deptno), ##设置主键
UNIQUE KEY uk_dname(dname), ##设置唯一索引
FULLTEXT KEY index_loc (loc(20)) ##设置全文索引
) DEFAULT CHARSET gbk; ##设置字符集 ##创建数据库表 t_diary,默认字符集(如果前面不将数据库字符集改为GBK,那么存储中文时会报错)
CREATE TABLE t_diary (
diaryno INT (11) AUTO_INCREMENT,
tablename VARCHAR (20),
diarytime DATETIME,
CONSTRAINT pk_diaryno PRIMARY KEY (diaryno), ##设置主键
INDEX index_tablename (tablename(20) ASC) ##设置普通索引
) ; ##查看表 t_dept 的字段,查看表 t_diary 的定义
DESC t_dept;
SHOW CREATE TABLE t_diary; ##将t_diary表与其字段的字符集改为GBK
ALTER TABLE t_diary CHANGE CHARSET gbk;
ALTER TABLE t_diary CHANGE tablename tablename VARCHAR(20) CHARSET gbk; ##创建视图 view_dept,取表 t_dept(deptno,dname)字段,并按deptno的降序排列
CREATE VIEW view_dept AS
SELECT deptno, dname FROM t_dept ORDER BY deptno DESC ; ##查看视图的定义
SHOW CREATE VIEW view_dept; ##创建触发器 tri_diarytime
CREATE TRIGGER tri_diarytime
BEFORE INSERT ON t_dept FOR EACH ROW
INSERT INTO t_diary (tablename, diarytime) VALUES ('t_dept', NOW()) ; ##向表 t_dept 插入测试数据
INSERT INTO t_dept(dname,loc) VALUES ('张三','张三会爬树');
INSERT INTO t_dept(dname,loc) VALUES ('李四','李四会钓鱼');
INSERT INTO t_dept(dname,loc) VALUES ('王五','王五会开车');
INSERT INTO t_dept(dname,loc) VALUES ('赵六','赵六会拍马');
INSERT INTO t_dept(dname,loc) VALUES ('周七','周七会骑驴');
INSERT INTO t_dept(dname,loc) VALUES ('武八','武八是同城'); ##查看 t_dept 表的插入结果
SELECT * FROM t_dept;
##查看触发器向 t_diary 表中插入的结果
SELECT * FROM t_diary;
##查看视图 view_dept 中的结果
SELECT * FROM view_dept;
学习MySQL之数据库操作(一)的更多相关文章
- MySql学习 (一) —— 基本数据库操作语句、三大列类型
注:该MySql系列博客仅为个人学习笔记. 在使用MySql的时候,基本都是用图形化工具,如navicat.最近发现连最基本的创建表的语法都快忘了... 所以,想要重新系统性的学习下MySql,为后面 ...
- ThinkPHP 学习笔记 ( 三 ) 数据库操作之数据表模型和基础模型 ( Model )
//TP 恶补ing... 一.定义数据表模型 1.模型映射 要测试数据库是否正常连接,最直接的办法就是在当前控制器中实例化数据表,然后使用 dump 函数输出,查看数据库的链接状态.代码: publ ...
- Mysql之数据库操作
数据库操作: 链接数据库: mysql -uroot -p masql -uroot -pmysql 退出数据库: exit/quit/ctrl + d sql语句最后需要分号结尾: 查看时间: ...
- 自己封装的ASP.NET的MYSQL的数据库操作类
/** * 作者:牛腩 * 创建时间:2010年3月7日17时35分 * 类说明:对MYSQL数据库的操作类 */ using System; using System.Data; using MyS ...
- Mysql 常用数据库操作
一.数据库操作: 1.查看数据库: >SHOW DATABASES; 2.创建数据库: >CREATE DATABASE db_name; //db_name为数据库名 3.使用数据库: ...
- mysql 对数据库操作的常用sql语句
1.查看创建某个数据库的 创建语句 show create database mysql 这个sql语句的意思是 展示创建名为mysql的数据库的 语句.执行之后如下图所示 仿造上面这个创建语句 创建 ...
- Python入门学习教程:数据库操作,连接MySql数据库
各位志同道合的同仁可以点击上方关注↑↑↑↑↑↑ 本教程致力于程序员快速掌握Python语言编程. 本文章内容是基于上次课程Python教程:Python教程:连接数据库,对数据进行增删改查操作 和py ...
- SQL学习笔记二之MySQL的数据库操作
阅读目录 一 系统数据库 二 创建数据库 三 数据库相关操作 一 系统数据库 information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息.列信息.权限 ...
- mysql跨数据库操作问题
跨数据库的操作,如果是命名符合mysql规范的直接database.table,如果不符合规范比如加了 - 等符号需要在数据库上面加`database`.table(不是'database'.tab ...
随机推荐
- RabbitMQ服务安装配置
RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erlang语言开发.RabbitMQ据说具有良 ...
- [WPF系列]-高级部分 Shadowed TextBox
Download Solution ShadowedTextBoxExample.zip (70.3 KB) Usage <local:ShadowedTextBox Label="F ...
- MMORPG大型游戏设计与开发(服务器 游戏场景 聊天管道和寻路器)
又快到双十一,又是不少同仁们出血的日子,首先希望大家玩的开心.我曾经想要仔细的剖析场景的的每个组件,就像这里的聊天管道与寻路器,但是仔细阅读别人代码的时候才发现元件虽小但是实现并不简单,因为有些东西还 ...
- hibernate概述
转自:http://www.cnblogs.com/eflylab/archive/2007/01/09/615338.html Hibernate的核心组件在基于MVC设计模式的JAVA WEB应用 ...
- NOI2018准备Day14晚
1个小时调处了前天晚上卡了一个晚上的数独,果然还是dfs回溯的问题. 1个小时做codevs2500城堡,然而并没有做出来 剩下1个小时,做了一道字符串的STL,空格和换行符 ,真心累啊...... ...
- 以moosefs为例介绍iozone的使用方法
一.编译安装 首先到官网下载iozone的稳定版源码 http://www.iozone.org/ 然后解压编译 tar -vxf iozone3_458.tar cd iozone3_458/src ...
- CSS让图片垂直居中的几种技巧
在网页设计过程中,有时候会希望图片垂直居中的情况.而且,需要垂直居中的图片的高度也不确定,这就会给页面的布局带来一定的挑战.下面总结了一下,曾经使用过的几种方法来使图片垂直居中,除了第一种方法只限于标 ...
- 这些年学过的FPGA
这些年学过的FPGA 最近看了老罗的鄙视链是怎样炼成的,联想到FPGA.从2011年底开始接触FPGA到现在已经快接近4个年头了,这四年见证了Altera-FPGA的发展,使用的cyclone系列的芯 ...
- JavaScript模板引擎artTemplate.js——如何引入模板引擎?
artTeamplate.js在github上的地址:artTemplate性能卓越的js模板引擎 引入模板引擎,就是引入外部javascript啦,并且artTemplate.js不依赖其他第三方库 ...
- (转)C#为什么要使用Invoke,它和BeginInvoke有什么区别
在Invoke或者BeginInvoke的使用中无一例外地使用了委托Delegate. 一.为什么Control类提供了Invoke和BeginInvoke机制? 关于这个问题的最主要的原因已经是do ...