今天学习了一下mysql语法,并记录下来 1.mysql的数据库操作 /***1.操作数据库的语法 ***/ -- 1)显示所有数据库 -- show databases; -- 2)创建数据库 -- create database testdb; -- 3)删除数据库 -- drop database testdb; -- 4)使用数据库 -- use testdb; -- 5) 查询数据库下所有表 -- show tables; 2.mysql的数据表操作 /*** 2.操作数据表的语法 *…
数据库基本操作 查看.选择数据库: show databases; use <databasename>; 创建数据库:create database <dbname> character set <编码格式> ;  character set按照指定格式编码 删除数据库:drop database <dbname>; 数据表基本操作 查看表:show tables 查看表结构:describe <tablename>; 查看表中数据:selec…
废话不多说直接开始. 在windows命令行下登录mysql,创建一个test_01数据库,创建一个user表,并插入一条数据,如下 一.导出数据库test_01 1.退出数据库,在命令行中输入 mysqldump --no-defaults -u root -p test_01 >d:\test01.sql(没有冒号,直接按回车) 2.输入密码 说明:必须是在系统下的命令行, --no-defaults 不能省(原因还不明), test_01是源数据库,01.sql是目标数据库 结果:在d:\…
项目中经常的需要使用批量操作语句对数据进行操作,使用批量语句的时候需要注意MySQL数据库的条件限制,这里主要是数据的大小限制,这里对批量插入.批量查找及批量更新的基础操作进行下简单的汇总. 1.批量insert插入语句,如下的语句在测试环境尝试过1W+的批量插入,具体数量跟表结构及字段内容有关系. <insert id=”addTextPushList”paramerterType = “java.util.List”> INSERT INTO SYS_TEXT_PUSH( PUSH_ID,…
以下为MySQL 触发器insert 的3个示例演示(update类似) delimiter // create trigger InsertUser before insert on user for each row Begin insert into user_group(uid,gid) values(new.uid,'group4444444444'); end;// delimiter ; delimiter // create trigger InsertUser before i…
前言 最近这段时间一直使用pg 数据库插入更新大量的数据,发现pg数据库有时候插入数据非常慢,这里我对此问题作出分析,找到一部分原因,和解决办法. 一 死元祖过多 提起pg数据库,由于他的构造,就不得不说他的元祖. 1.1 什么是元祖? 在Postgresql做delete操作时,数据集(也叫做元组 (tuples))是没有立即从数据文件中移除的,仅仅是通过在行头部设置xmax做一个删除标记.update操作也是一样的,在postgresql中可以看作是先delete再insert; 这是Pos…
1 创建.删除.显示数据库 -- 创建数据库 create database student_db character set utf8 collate utf8_general_ci; -- 删除数据库 drop database student_db; -- 显示所有数据库 show databases; -- 选择数据库 use student_db; 2 创建.删除.显示数据表 -- 创建表 create table student( id int unsigned not null p…
INSERT INTO 插入数据库 $sql = "INSERT INTO subject (uid,fun,title) VALUES (3,88,'语文')"; $query = mysql_query($sql, $link); if($query){ echo mysql_insert_id(); } UPDATE SET 语法用于修改更新数据表中的数据 $sql="UPDATE subject SET title='英语',fun=60 WHERE id=3&quo…
MySQL中的事务,默认是自动提交的,即autocommit = 1: 但是这样的话,在某些情形中就会出现问题:比如: 如果你想一次性插入了1000条数据,mysql会commit1000次的, 如果我们把autocommit关闭掉[autocommit = 0],通过程序来控制,只要一次commit就可以了,这样也才能更好的体现事务的特点! 对于需要操作数值,比如金额,个数等等! 记住一个原则:一锁二判三更新 在MySQL的InnoDB中,预设的Tansaction isolation lev…
select ... for update 场景:多个进程都先读后写咋办,需要的是让他们串行执行. 比如库存的减少.一般这些操作都是很长一串并且是开启事务的.如果库存刚开始读的时候是1,而立马另一个进程进行了update将库存更新为0了,而事务还没有结束,会将错的数据一直执行下去,就会有问题.所以需要for upate 进行数据加锁防止高并发时候数据出错. 特点:for update仅适用于InnoDB,且必须在事务块(BEGIN/COMMIT)中才能生效.在进行事务操作时,通过"for upd…