数据库 MySQL语句

数据库的基本操作:
--     增、删、改、查

-- 数据库的存储方式:表格

-- 数据库的基本操作语句:
--     启动数据库服务
     net start mysql
--     关闭数据库服务
    net stop mysql
--     通过windows命令窗口连接数据库
    mysql -uroot -p123456
--     查看数据库
    show databases
--     创建数据库
    create database value
--     删除数据库
    drop database value
--  查看创建数据库
    show create database value
--     进入数据库
    use value
--     使用资源文件
    source c:/mysql.sql
--     查看数据库已有表
    show tables
--     指定数据库查看表
    show tables from databaseVaule
--     查看表结构
    desc tablesValue
--     查看建表语句
    show create table tablesValue
--     创建表
    create table tablesValue(
        value int(numb)  primary key auto_increment,
        value double not null,
        value varchar(numb),
        value date,
        value char unique
    )
--     添加数据
    insert into tablesValue (value,value,value) values(XXX,XXX,XXX);
    insert into tablesValue values(XXX,XXX,XXX,XXX,XXX);
    
    /* insert into students (id,name,sno,birthday) values(1,"hnn","144215",0820)
    insert into students values(2,"zhangsan",144216,0624); */
--     查看表信息
    select * from tablesValue
    select value,value from tablesValue
--     有条件查询
    select * from tablesValue where value=values
    /*
    select id,name,sno from students where sno = 144215
 */
--     局限性查询
    select value,value from tablesValue
--     局限性有条件查询
    select value,value from tablesValue where value=values
--     多条件使用字符
    and or xor not
    
    /* select id,name,sno from students where sno = 144215
    select id,name,sno from students where sno = 144215 and id = 1
    select id,name,sno from students where sno = 144215 xor id = 1
    select id,name,sno from students where sno = 144215 or sno = 144216
    select id,name,sno from students where not sno = 144215 and not  id = 2
 */
--     清除重复记录
    select distinct value,value from tablesValue
    
    /* select distinct sno from students
    select sno from students */
--     按照规定排序
    select * from tablesValue order by value asc/desc
    
    /* select * from students order by id desc
 */
--     按照指定值查询
    select * from tablesValue where value in(XXXX,XXXX,XXXX)
    
    /* select * from students where id in(1,2)
 */
--     指定包含第几条开始查询多少条信息
    select * from tablesValue limit x,y
    
/*     select * from students limit 0,3
 */
--     聚合函数
    min()  max() sum() avg() count()
    对数据库中数字类型的字段取最大值可以直接用:
    SELECT MAX(field-name) FROM table-name WHERE conditions
    而对于其它类型的字段要使用以下语句:
    SELECT MAX(CAST(field-name AS UNSIGNED)) FROM table-name WHERE conditions

/* select count(*) from students
       select count(id) from students
       select max(sno) from students
       select sum(id) from students
       select avg(sno) from students  */

--     过滤聚合值的记录行
*    select * from tablesValue order by value asc/desc having sum(value)>100

/* select * from students group by id  having sum(id)>1
select *,avg(sno),avg(id) from students group by sno  having avg(sno)>2
http://www.cnblogs.com/yank/p/3672478.html     */

--     连接多个查询结果
    select.... union select ...    
    /* select sum(id) as sumset from students union select avg(sno) from students
 */
--     对当前表添加一列
    alter table tablesValue add column value varchar(12) not null
    /* alter table students add column sname varchar(12) not null
 */
--     删除当前表中的某列
    alter table tablesValue drop column value
    /* alter table students drop column sname */

--     修改当前列的定义
    alter table tablesValue modify value varchar(11) not null
    /* alter table students modify sname int(11) not null
    列表不能为空 */
--     修改列的定义和名字
    alter table tablesValue change oldvalue newvalue char(10) not null
    
/*     alter table students change id idd char(10) not null
 */
--     添加主键
    alter table tablesValue add primary key(id)
--     删除主键
    alter table tablesValue drop primary key
--     改变表名
    alter table tablesValue rename tablesValue
    rename table tablesValue to tablesValue
    /* alter table students rename studenta
rename table studenta to students */
--     删除表
    drop table tablesValue
    
--  更新表数据
    update tablesValue set value=XXXX
    update tablesValue set value=XXXX,value=XXXX where value=XXXX
--  删除表数据
    delete from tablesValue
    delete from tablesValue where value=XXXX
    
--    两个表之间的关联
    select * from tablesValue,tablesValue
    select * from tablesValue t1,tablesValue t2
    select t1.value,t2.value from tablesValue t1,tablesValue t2
    select t1.value,t2.value from tablesValue as t1,tablesValue as t2
    
--  内连接
    select * from tablesValue t1 join tablesValue t2 on t2.value = t1.value where t1.value = 10000
    select * from tablesValue t1 inner join tablesValue t2 on t2.value = t1.value where t1.value = 10000
    
--  外连接 左右无区别
    select * from tablesValue t1 left outer join tablesValue t2 on t2.value = t1.value where t1.value = 10000
    select * from tablesValue t1 right outer join tablesValue t2 on t2.value = t1.value where t1.value = 10000

--     创建表外键
    create table tablesValue(
        value int(numb)  primary key auto_increment,
        value double not null,
        value varchar(numb),
        value date,
        value char unique,
        foreign key (value) references tablesValue(value)
    )
    
    alter table tablesValue add foreign key (value) references tablesValue(value)
    alter table student add foreign key (Tno) references teacher(Tno)   //后面的表的属性是主键,前面的表的属性不是主键。属性的类型的长度必须一样

--  事务控制语句
    start transaction
    select * from tablesValue where value=1
    delete from tablesValue where value=1
    select * from tablesValue where value=1
    rollback           //否认上面四句对数据库的更改,数据库回到它未执行这四条语句前
    select * from tablesValue where value=1
    
    start transaction
    select * from tablesValue where value=1
    delete from tablesValue where value=1
    select * from tablesValue where value=1
    commit          //同意上面四句对数据库的更改
    select * from tablesValue where value=1
    
--  控制自动提交
    set autocommit = off
    set autocommit = on
    
    set session autocommit = off
    set session autocommit = on
    
--  创建视图
    create view tablesValue as select value,value from tablesValue
    select * from tablesValue
    
    create view tablesValue (value,value) as select value,value from tablesValue
--  修改视图
    alter view tablesValue (value,value) as select value,value from tablesValue
    
--  删除视图
    drop view tablesValue

--  展现创建视图
    show create view tablesValue

时间: 2024-10-10 17:59:03

数据库 MySQL语句的相关文章

数据库 mysql 语句

LAMP: Linux系统 A阿帕奇服务器 Mysql数据库 Php语言 mysql:常用代码 create table CeShi1( Uid varchar(50) primary key, Pwd varchar(50), Name varchar(50), Nation varchar(50), foreign key(Nation) references Nation(Code) ) 写查询语句需要注意:1.创建表的时候,最后一列后面不要写逗号2.如果有多条语句一起执行,注意在语句之间

php 数据库 mysql 语句用法

$result=mysql_query($query),该函数的作用是执行一个正确的sql语句,如果是insert.update.delete这样简单的查询,都不会返回结果, 而$result将会是1或者""(也就是什么都没有),虽然网上资料说返回是TRUE或者FALSE,但是经过实践验证,返回的是1或者什么也没有, 而对于会返回记录的查询,例如select,sho,explain等操作,则会返回一个指向查询结果的资源链接,若果查询无效也是什么都没有,所以 判断语句应该如下所示来写:

使用MySQL数据库 SQL语句

1.查看当前服务器数据库中有哪些库? SHOW   DATABASES;   ###查看有哪些库 2.查看当前使用的库有哪些表? USE +要查询的库名 SHOW   TABLES; ###查询库中有哪些表 3.查看标的结构? USE  +要使用的库名 DESCRIBE  +表名 ###查看表结构 4.创建新的库? CREATE   DATABASE +表名  ###创建库 5.创建新的表 CREATE   TABLE +表名 (字段1名称   类型 ,字段2名称   类型,...)  ###创

数据库MySQL的语句规范和操作数据库的各命令行

MySQL语句的规范 1.关键字与函数名称全部大写 2.数据库名称.表名称.字段名称全部小写 3.SQL语句必须以分号结尾 在cmd中用命令行操作数据库 首先打开MySQL -u代表账号 -p代表密码 --prompt \h是指将提示符改成localhost 将提示符改成更详细的信息 创建一个数据库,查看版本和查看目前有的数据库表 创建一个名为t2的数据库,并设置编码格式为gbk,如果以后想修改该数据库的编码,不需要删除重新建,只需要修改编码格式即可,下图也有展示 删除t1数据库,并查看现有的数

mysql数据库sql语句调优 、

mysql数据库sql语句调优 . 索引设计原则: 索引列一般为where子句中的列或连接字句中的列 尽量不对基数小的列做索引,如性别列 尽可能使用短索引:如果对字符列索引尽量指定最小长度. (short Keys are better,Integer best) create index cityname on city(city(10)); 复合索引前缀特性,索引的顺序很重要. key(a,b,c)联合索引: 可以走索引的组合:key(a),key(a,b ),key(a,b,c) 下列索引

Mysql 数据库 操作语句

Mysql 数据库 操作语句 mysql 格式语句规范如何登陆你的数据库?举例! 如果你的是 编译安装的花 那就得去编译安装后的那个目录中去,我的是安装到/usr/local/mysql 下 登陆数据库: cd /usr/local/mysql bin/mysql -u root -p 然后输入密码mysql-> show databases: 察看数据库记住每执行一句要带: 一.mysql常用语句创建,删除和最基本查询: 显示数据库    mysql->showdatabases; 创建数据

Mysql数据库四大特性、事物的四个隔离、基本MySQL语句、独立表空间

Mysql数据库四大特性.事物的四个隔离.基本MySQL语句.独立表空间 本人学习mysql的时候感觉笔记有点散所以自己做了一个整合,而且有些概念介绍的太官方了,所以自己根据理解总结了一下.(有不对的请指点!) mysql: sql:关系型数据库:(复杂的关系形数据库). nosql:非关系型数据库:(储存的格式很简单) key,value(memcached),user1:1,user2:2(存在内存里) 事务:一组原子性的SQL查询,或者是一个或多个sql语句组成的独立工作单元:操作要么都执

MySQL语句查看各个数据库占用空间

原文:MySQL语句查看各个数据库占用空间 select table_schema, sum(DATA_LENGTH)+sum(INDEX_LENGTH) from information_schema.tables group by table_schema; 在需要备份数据库里面的数据时,我们需要知道数据库占用了多少磁盘大小,可以通过一些sql语句查询到整个数据库的容量,也可以单独查看表所占容量. 1.要查询表所占的容量,就是把表的数据和索引加起来就可以了 select sum(DATA_L

总结今天学习的mysql语句

关键字 进入mysql:mysql -uroot -p 查看数据库:show databases 进入数据库:use DATABASE'S_NAME 查看数据库中表:show tables 以上在doc下演示,以后的在工具中演示 mysql中大小写不敏感 创建库:create database if not exists DATABASE'S_NAME 创建表:create table  if not exists  TABLE'S_NAME(列名1 属性,列名2 属性,......) 1 cr