加入收藏 | 设为首页 | 会员中心 | 我要投稿 晋中站长网 (https://www.0354zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 创业 > 经验 > 正文

MySQL 设计和命令行模式下建立详解

发布时间:2020-12-31 18:36:27 所属栏目:经验 来源:网络整理
导读:MySQL 设计和命令行模式下建立详解 系列文章: MySQL 设计和命令行模式下建立详解 C++利用MySQL API连接和操作数据库实例详解 1.数据表的设计 MySQL数据库管理系统(DBMS)中,包含的MySQL中定义数据字段的类型对你数据库的优化是非常重要的。MySQL支持多种

tinyint(1) 这里的1表示的是最短显示一个字符。tinyint(2) 这里的2表示的是最短显示两个字符,但这里光设置m是没有意义的,你还需要指定当数据少于长度m时用什么来填充,比如zerofill(表示有0填充)。设置tinyint(2) zerofill你插入1时他会显示01。设置tinyint(4) zerofill你插1时他会显示0001。

(b)还要注意一点是,使用engine可指明引擎,如果省略了engine语句,则使用默认的引擎(MYISAM)。MYSQL支持三个引擎:ISAM、MYISAM和HEAP。另外两种类型INNODB和BERKLEY(BDB),也常常可以使用。

(c)设置default charset指明mysql数据表的编码方式,不显示指定编码方式的话,数据表的默认编码方式一般是latin1。也可以通过如下命令查看数据表的编码方式:

show create table student;

如果需要转换数据表的编码格式,使用如下命令:

alter table student convert to character set utf8;

如果想查看当前数据库的编码格式:

mysql>status;
#或者
show variables like 'character%' ;

为了验证所建立的数据表是否是按照期望的方式创建的,使用如下命令:

#查看表中的列
SHOW COLUMNS FROM student;
#或者直接使用describe
describe student;

MySQL 设计和命令行模式下建立详解

(6)创建数据表course

mysql> create table course(
 studentNo varchar(12) not null primary key,courseNo varchar(10) not null,hour tinyint unsigned not null,credit tinyint unsigned not null default 2 
)engine=MYISAM default charset=utf8;

同样可以使用describe查看表信息:

MySQL 设计和命令行模式下建立详解

(7)创建数据表courseSelection

mysql> create table courseSelection(
 id int unsigned not null auto_increment primary key,studentNo varchar(12) not null,time timestamp not null default CURRENT_TIMESTAMP,FOREIGN KEY(studentNo) REFERENCES student(ISBN) ON UPDATE CASCADE ON DELETE CASCADE,FOREIGN KEY(courseNo) REFERENCES course(courseNo) ON UPDATE CASCADE ON DELETE CASCADE
)engine=MYISAM default charset=utf8 AUTO_INCREMENT=0;

查看表信息:

MySQL 设计和命令行模式下建立详解

(8)其它关于数据库和数据表的操作命令

删除数据库:

mysql> DROP DATABASE 库名;

删除数据表:

mysql> DROP TABLE 表名;

将表中记录清空:

mysql> DELETE FROM 表名;

参考文献:

[1]http://www.runoob.com/mysql/mysql-data-types.html
[2]Mysql 查看、创建、更改 数据库和表
[3]php里tinyint(1)为什么还能插入99这个值?搜索
[4]MySQL引擎
[5]MySQL中的四种Key
[6]SQL的主键和外键约束
[7]唯一索引和唯一约束有什么区别

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

(编辑:晋中站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读