MySQL中的库的建立和表的建立
2015-09-29 13:19
686 查看
库操作(DDL):
创建,create:
(create,几乎所有的结构都是用这个属性建立的)create database 库名【库选项】;
注意的问题:库选项只有校对集和字符集的概念 ;
(
字符集:
PHP中的字符集做实事很多的:可以设置服务器的默认字符集;
数据库的默认字符集;列和表的默认字符集;
并且如果一个级别没有指定字符集就集成上一个级别。
1.我们可以告诉服务器发送的是什么编码:character_set_client。。
2.告诉字符串转换器转换为什么编码:character_set_connection
3.查询结构用什么编码character_set_results
如果以上三者都为字符集N,可简写为set names N;)
校对集:是指字符集的排列顺序
(
查询所有校对集语句:show collacion;
一个字符集可以有一个或者多个排列顺序,
以utf8为例,默认是使用utf8_general_ci校对集,也可以按二进制来排
)
每个库都会有一个目录列表;(可以看原目录下的文件)
数据库名的问题:
根据当前的操作系统来讲 如果操作系统不区分命名也就不区分(建议是应该区分)特殊名称,关键字,特殊符号是不能命名的(包括中文);
如果想命名的话可以用f反引号`名称`来进入命名;
查询已有的数据库名 :
show databases;show databases like;
过滤多个数据库;
show databases ilke ‘’;
进行匹配
可以使用通配符 % 前面没有的元素可以使任意的,来进行过滤匹配;
_任意字符匹配一次;
ike ‘x_y’;
x1y xby xxy(可以)
xy(不可以)
通配符适合like一起使用的
注意如需要匹配 特定的通配符,则需要对通配符转义,使用反斜杠\完成转义!
查看某个数据库的定义:
show create databses;然后就是数据库的一般用途了 :增删改查;
修改:alter
alter databas 数据库名;删除:drop
drop databases 数据库名;if not exists ,if exists
再创建和删除的时候有两个额外的操作;就是上面说的:
可以是这样表达的:
create databsse if not exists如果不存在就创建数据库;
drop database if exists;
表操作: DDL
表本身和表结构的操作创建 create table:
创建表 create table(字段的定义
)【表选项】
一定要先确定数据库
其中表名有两部分组成:所在库.表名
itcase.test itcase库内的test
但是我们可以设置默认的数据库 用use语法;
use 数据库名;
默认数据库在没有指定数据库的时候才起作用;
相反如果使用了.的话就不用默认数据库了;
在itcast库内创建:
use itcast ; create table stu;
或者
create table itcast.stu
其中字段的部分:
字段才是数据的真正载体,(与变量的概念有一些相似,都是保存数据的),
定义字段的时候至少要字段名和字段类型
sql是一个强类型语言,必须制定数据类型,(基本上有两种数据类型1是int2是varchar用varchar的时候必须指明长度)
表选项部分:
典型的常用的表选项有:字符集(校对集),表引擎;
查看 show,desc:
查看所有表:show tables like ·模式·;
查看具体的建表语句:
show create table table_name;
在mysql的命令行客户端,如果数据过多,不容易展示!
可以使用 \G 作为语句结束符!
查询表结构:
desc 表名;修改 ,alter table;
修改表选项alter table table_name [新选项]
改表名:
rename table 元表名to新表名注意,表名可以由库名.表名形式的!
因此,可以跨库修改表名:只要在表名前增加 库名即可
修改表结构,修改表字段:
alter table table_name add column 字段定义 [字段位置]在XX之后增加一个字段:
增加一个height在name之后;
使用关键字after some_column_name
如果加在最前面用first;
删除字段:
alter table table_name drop column column_name;修改已有字段(修改字段预定义):
alter table table_name modify column column_name;字段改名:
alter table table_name change column 原字段名 新字段名 新字段定义!字段改名的时候,必须连里面的类型也要一起改;(一起在写一次也算);
删除 ,drop table:
drop table if exists
create table if not exists!
下次就写关于数据的操作了!!!
相关文章推荐
- MYSQL之查看及修改表使用的存储引擎
- mysql group by 组内排序
- mysql
- 编译mysql出现CMake Error at cmake/readline.cmake:83 (MESSAGE)
- MySQL学习笔记之数据类型
- ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)
- Mysql数据库
- ubuntu安装MySQL
- mysql系列(一.安装mysql)
- mysql 的thread pool
- mysql查询区分大小写
- MySQL中REGEXP正则表达式使用大全
- MySQL中两个DateTime字段相减
- MySQL常用命令总结
- mysql update正则替换sql语句
- mysql if exist坑
- Mysql 区分大小写
- Windows下mysql错误:ERROR 1045 (28000):Access denied for user 'root'@'localhost'
- mysql 索引设计准则
- MySQL不能启动 Can't start server : Bind on unix socke