mysql基础之对库表操作

原文:mysql基础之对库表操作

查看一下所有的库,怎么办?

Mysql>Show databases;

选库语句: Use 库名

创建一个数据库: create database 数据库名 [charset 字符集]

删除一个数据库: drop database 数据库名;

把数据库改改名?

Mysql中,表/列可以改名,database不能改名.

phpMyAdmin似乎有这功能? 他是建新库,把所有表复制到新库,再删旧库完成的.

当选了库之后,我们面对的是表

查看库下面的所有表: show  tables;

先给大家提供一个简单的建表语句

create table stu (

snum int,

sname varchar(10)

)engine myisam charset utf8;

删除表: drop table stu;

修改表名:

清空表数据: truncate 表名

Truncate和delete是有区别的,

在于 truncate相当于删表再重建一张同样结构的表,操作后得到一张全新表.

而delete是从删除所有的层面来操作的.

Trucate相当于把旧的学籍表扔了重画一张,

Delete相当于用橡皮把学籍表的数据库擦掉.

如果决定全清空的下,truncate速度更快一些.

查看表结构

答: desc tableName; //查看表结构

12: 解决字符集问题:

默认建表一般用utf8, 而我们在windows下窗口是GBK的,

因此,需要声明字符集.

Set names gbk;

发现的1小问题

语句打错以后应该退出本语句,再继续打新语句.也可以打\c,退出本语句.

如何破解数据库的密码:

1:通过任务管理器或者服务管理,关掉mysqld(服务进程)

2:通过命令行+特殊参数开启mysqld

Mysqld --skip-grant-tables

3:此时,mysqld服务进程已经打开,并且,不需要权限检查.

4:mysql -uroot  无密码登陆服务器.

5: 修改权限表

A: use mysql;

B:update user set Password = password(‘11111‘) where User = ‘root‘;

C:flush privileges;

6:通过任务管理器,或服务管理,关掉mysqld服务进程.

7:再次通过服务管理,打开mysql服务.

建表语法

所谓建表就是一个声明列的过程.

create table 表名 (

列名1 列类型1  列1参数,

列名2 列类型2 列2参数,

....

...

列名n 列类型n 列n参数

)engine myisam/innodb/bdb charset utf8/gbk/latin1...

修改表的语法

一张表,创建完毕,有了N列.

之后还有可能要增加或删除或修改列

Alter table 表名 add 列名称 列类型 列参数;  [加的列在表的最后]

例: alter table m1 add birth date not null default ‘0000-00-00‘;

Alter table 表名 add 列名称 列类型 列参数 after 某列 [把新列加在某列后]

例: alter table m1 add gender char(1) not null default ‘‘ after username;

Alter table 表名 add 列名称 列类型 列参数 first [把新列加在最前面]

例: alter table m1 add pid int not null default 0 first;

删除列:

Alter table 表名  drop 列名

修改列类型:

Alter table 表名 modify 列名 新类型  新参数

例:alter table m1 modify gender char(4) not null default ‘‘;

修改列名及列类型

Alter table 表名 change 旧列名 新列名 新类型 新参数

例:alter table m1 change id uid int unsigned;

??如果列类型改变了,导致数据存不下怎么办?

比如,int 改成smallint列.   如果不匹配,数据将会丢失,或者在mysql的strict_mode下,修改不了.

为什么建表时,加not null default ‘‘ / default 0

答:不想让表中出现null值.

为什么不想要的null的值

答:

不好比较,null是一种类型,比较时,只能用专门的is null 和 is not null来比较.

碰到运算符,一律返回null

效率不高,影响提高索引效果.

因此,我们往往,在建表时 not null default ‘‘/0

常用数据库管理语句:

create table goods (
  goods_id mediumint(8) unsigned primary key auto_increment,
  goods_name varchar(120) not null default '',
  cat_id smallint(5) unsigned not null default '0',
  brand_id smallint(5) unsigned not null default '0',
  goods_sn char(15) not null default '',
  goods_number smallint(5) unsigned not null default '0',
  shop_price decimal(10,2) unsigned not null default '0.00',
  market_price decimal(10,2) unsigned not null default '0.00',
  click_count int(10) unsigned not null default '0'
) engine=myisam default charset=utf8;
时间: 2024-11-07 17:24:50

mysql基础之对库表操作的相关文章

mysql基础之创建库表时字符集设置问题

创建数据库及表时设置字符集,避免出现中文乱码的方法: 创建数据库 CREATE DATABASE test CHARACTER SET utf8 COLLATE utf8_general_ci; --注意后面三个单词之间是有下划线的 对于每个选项所给定的值,前面没有等号:在第一个选项和第二个选项之间也没有逗号. 创建表 CREATE TABLE mytable(     id varchar(40) NOT NULL default '',     userId varchar(40) NOT 

Mysql 库表操作初识

Mysql 库表操作初识 终端登录mysql 这里只演示win下, cmd 终端. 至于怎么在win下, linux, mac安装, 感觉这是一个入门级的百度搜索问题, 安装都搞不定, 确实有点尴尬, 好尴尬呀. -- win + R 输入cmd 进入控制台 C:\Users\chenjie> mysql -u root -p -- 回车 Enter password: ******** -- 回车 -- 成功进入了mysql客户端, 如果登录失败, 要么就是密码不对, 或者是服务没有开启. W

MySQL基础学习之数据表

查看数据表 SHOW TABLE; 查看数据表详细结构 SHOW CREATE TABLE 表名\G; 创建数据表 CREATE TABLE 表名(数据名 类型,数据名1  类型2); CREATE TABLE department ( d_id INT(10) , d_name VARCHAR(20) , function VARCHAR(20) , address VARCHAR(30) ); 删除数据表 DROP TABLE 表名; 修改数据表 修改数据表名        ALTER TA

mysql 库表操作

1. 库操作 1.1. 创建数据库 语法规则:create database 库名; CREATE DATABASE dt55; 在创建库时,希望指定编码语法:create database 库名 character set 编码名 CREATE DATABASE dt55 CHARACTER SET utf8; 1.2. 删除数据库 DROP DATABASE dt55; 1.3. 查看数据库 (1)查看某一个数据库的详细信息 语法:show CREATE DATABASE 库名: SHOW

mysql基础篇 - 数据库及表的修改和删除

基础篇 - 数据库及表的修改和删除 修改和删除 一.实验简介 本节实验中,我们将学习并实践如何对数据库的内容做修改,删除,重命名等操作. 二.实验准备 在正式开始本实验内容之前,需要先下载相关代码. 该代码可以新建两个数据库,分别名为 test_01 和mysql_shiyan ,并在 mysql_shiyan 数据库中建 4 个表(department,employee,project,table_1),然后向其中插入数据. 具体操作如下,首先输入命令进入 /home/shiyanlou/De

myql基本库表操作

建立数据库 create database ff default character set utf8; create database if not exists ff default charcter set utf8; 删除数据库 drop database  ff; drop database if exists ff; 查询数据库 show create database db;//查询建库语句 show create database mysql;//查询建库语句 修改数据库字符集

Mysql之库表操作(胖胖老师)

SQL概念:结构化查询语言(SQL = Structured Query Language),也是一种编程语言(数据库查询和程序设计语言),可以用于数据的存取及查询,更新,管理关系型数据库系统ps: 不同数据库系统之间的SQL不能完全相互通用; 分类针对操作的对象不同,可以分成不同语言1: 数据操作(数据管理)语言  DML(Data Management Language)    1): 查询数据           DQL    2): 增, 删, 改           DML2: 数据定

MySQL基础(创建库,创建表,添加数据)

CREATE DATABASE 数据库名; CREATE TABLE student2(sno VARCHAR(20) NOT NULL PRIMARY KEY COMMENT"学号",sname VARCHAR(20) NOT NULL COMMENT"学生姓名",ssex VARCHAR(20) NOT NULL COMMENT"学生性别",sbirthday datetime COMMENT"学生出生年月",class

mysql+mybatis 插入可递增字段库表操作

mysql本身类型介绍: BIGINT 8 字节 (-9 233 372 036 854 775 808,9 223 372 036 854 775 807) (0,18 446 744 073 709 551 615) 极大整数值 需求本身id为16位,8字节长度已经完全满足,因此考虑采用数据库自增id来处理,关于性能方面的考虑,后续系统开发过程中,逐步考虑:这里暂且这样使用: 另外: 真正用到的只是两个链接放一下: 一个是建立mysql自增字段 http://www.cnblogs.com/